🐥

短編:MLエンジニアが非MLエンジニアに伝えるときに気をつけていること

に公開

今回はMLエンジニアとして普段活動している私ですが、非MLエンジニアの方に自分のやっていることやプロジェクトの各フェーズにおいてどんなことを注意・意識して伝えるようにしているかまとめてみます。

大前提としていること

大前提として、MLという領域は慣れてない人からするととても難しい領域に感じられがちです。理由としては例えば以下があるかなと思います。

  • 数学や統計学など高度な知識が必要そう
  • 難しい英語とかばっかり出てきそう

それぞれ正解だと思います。MLエンジニアである私ですら普段から感じていますし、他のMLエンジニアの方も多かれ少なかれ難しいと感じることでしょう。
本職がそう感じているのであれば本職でない方が感じないはずがありません。

MLという領域に絞っていうと、個人的には知識レベルの壁がとても高いと思っています。つまり、お互いの常識が相手の非常識になりうるということです。この壁はどれだけ頑張っても高い壁であり続けることはあると思いますが、その壁にハシゴをつけることはできるはずです。私自身、壁を壊すというよりも少しでも同じ高さで話ができるようにハシゴを作りたいと思っています。

実際に注意していること

それではいくつか実際に意識していることをまとめてみます。

例え話をできるだけ使う

先ほど書いたように、MLの分野では小難しい用語が大量に出てきがちです。本職同士の会話であればいいと思いますが、本職でない方に対して専門用語を言い続けても会話は成り立ちません。そんな時、小難しい話を簡単な話にいかに置き換えるかが大事になります。

しかしこの例え話がとても難しいのです。難しくなる理由は主に以下かなと思います。

  • 話者自身が簡単な例で伝えられるほど理解が深くない
  • 理解は十分にできているが簡単に言語化する語彙力がない
  • 話をシンプルにすると厳密性がなくなってしまい、厳格な説明をしたい人からすると結局簡単に説明できない

一つ目の理解が深くないのは単純に話者の責任になります。物事を簡単に説明するには理解をしている必要がありますが、より深く理解している方が説明方法について閃きやすいと思います。

二つ目は語彙力ですね。私もこの問題によく直面しますが、単純にどう表現すればいいか、言葉のバリエーションが少ないということです。頭の中でこういうふうに言えばいいかなという映像は出てくるのですが、それを文字起こしすることができないのです。これは様々な文献などを通していろんな方の表現方法を身につけるしかないと思っています。

三つ目は厳密性を重んじる人からすると説明しづらいということです。物事をシンプルに簡潔に説明する際に、ある種の抽象化をした結果厳密性を欠いてしまう場合もあるでしょう。この問題は正直解決する必要はないかなと思っていて、自分の場合は「この説明は厳密性ではなくイメージを伝えるための説明です」と補足することで、あくまでイメージを持ってもらうことを目的にしているというふうに説明して乗り越えています。

長々と説明しない

皆さんも大学の講義とかで長々と難しい話が続くとただただ眠くなったという経験があるのではないでしょうか?長くても興味がとてもあれば聞いてもらえますが、不必要に長い説明をすると相手の集中力がなくなり、説明が無駄になってしまいます。自分自身まだまだ苦手ではありますが、以下を心がけて普段は話しているつもりです。

  1. 簡単な例1で説明してみる
  2. 伝わらなかったら例2を伝えてみる
  3. 何回かやってもしダメそうだったらその場ではとりあえずそれ以上の説明は避けて別の機会にする

3は最後は別の機会にしてしまっています。自分の方からいくつか例示してどれも伝わらない場合、それは相手が理解をしようとしてくれてない場合をのぞいて、基本的に話者の改善が大事になってきます。ただしその場で改善するのはなかなか難易度が高いので、必要であれば持ち帰って改めて説明する場を設けてみるのもアリかもしれません。

図をできるだけ使う

口頭だったりテキストで説明すると、どうしてもイメージが湧きにくいです。できるだけ図表を使って視覚的に訴えかけています。図表を作るにはある程度手間はかかりますが、生成AIなどを使うとかなりいい感じに作ってくれることも多いので、文字だけでなく積極的に図表を用いましょう。

話者の努力ではどうにもならないこともある

経験上、本職がどれだけもがき苦しんでも最終的に伝わらないこともあるでしょう。これはどちらが悪いということではなく、それだけハイレベルな議論をしているということですので落ち込む必要はありません。

伝わらない時はどうするのがいいか、自分が普段していることは以下になりますが、これが正解であるかは正直わかりません。

  • まずは時間を開けて脳を休める
  • 生成AIに対して講義の練習をしてみる
  • 何がわからないのかを可能な限り言語化してもらい、その点が伝わるように重点的に頑張る
  • 伝わらないところが難しいことは理解できるので、その点を自分が頑張るので任せてください!というスタンスにする

特に最後のは切り札というか、どれだけ頑張っても伝わらないってことはもっと私が頑張らないとね!応援してね!ということにして乗り切るパターンです。私じしんこれを使ったことは実はないのですが、人に伝えるときの最終防御として決め台詞にしています(今の所まだ使う必要はなくて安心しています)。ただこの言葉は決して悪い言葉ではなく、専門職のある所以の表現ですね。これはMLに限らず、いかなるジャンルのエキスパートにも当てはまると思いますので、もしどれだけ頑張っても伝わらない場合、聞き手は相手へのリスペクトを、話者は自信を持ってリードするんだという気持ちで進めてくれるといいと思います。

まとめ

今回は徒然なるままに難しい話を以下に簡単に伝えるかをまとめてみました。ぜひ皆さんもこういう状況になったときの参考になってもらえたらと思います。

Discussion