LayerX社・機械学習チームのマネージャーの松村優也氏

松村優也氏:それでは、LayerXの松村優也が「機械学習エンジニアから見るプロダクト開発におけるLLM」を副題として、「機械学習の民主化とMLPdMの重要性」というタイトルで10分お話しします。お願いします。

簡単な自己紹介ですが、あらためて、松村です。(スライドの)右上の黒いアイコンでよくSNSをやっています。「Twitter」などのIDはご覧のとおりです。

バックグラウンド的には、もともと京都大学で情報検索とか情報推薦とか、その裏の機械学習とかの研究をしていました。

今は、LayerXの機械学習チームのマネージャーをやっていたり、前職のウォンテッドリーのML領域の技術顧問をやっていたり、最近は、「NewsPicks」でAI領域のプロピッカーをやっていたりなど、いろいろとやっている人間です。

生成AIの普及は意外とまだまだ

はじめに、LTっぽいことをやりますが、みなさんは「ChatGPT」でもなんでもいいのですが、生成AIを活用していますか? というところで、僕はなんの反応も見られないからアレですが、みなさんが手を挙げているという前提です。

周りやTwitterを見たら、本当にみんなChatGPTを使ったりほかのLLMを触ったりしている感じです。

PwCの統計でアンケートがあって、サンプル数は1,000ちょっとですが、(スライドを示して)こういう結果でした。そもそも、54パーセントぐらいは生成AIのことを知りませんよ、とか、使ったことがある人で10パーセント、業務で活用している人が3パーセントみたいな。実は意外と、生成AIの普及はこれからみたいですね。という結果がありました。

大規模言語モデルがもたらした「AIや機械学習の民主化」

バイアスってすごいなと思うんですが、とはいえ、今回イベントに参加している人たちの間や、いわゆるITやプロダクト作り界隈では普及しているんだろうなと思っています。

今日はその上でお話をしていきます。そんな感じで普及している大規模言語モデルですが、その普及によってどういうことが起こっているんだっけというところで、自分は、「AIや機械学習の民主化」が行われているんじゃないかと考えています。

「民主化って何やねん?」みたいなところでいうと、誰でも容易に高性能な機械学習モデルを活用できるようになったんじゃないかと考えています。

具体的に言うと、なんでもいいのですが、ChatGPTなどを利用することで、機械学習の知識や実装なしで、誰でも文書の要約、情報抽出、あるいは質問応答など、代表的な自然言語処理のタスクを解くことができるようになりました、みたいなことがあると思います。

あるいは、OpenAIのAPIなどを使うことで、機械学習の知識もそんなに要らず、簡単な知識と実装のみで、先ほど言ったような自然言語処理を活用した機能開発が行えるようになっているんじゃないかと思います。

先ほども登場した文書の要約や情報抽出のタスク、機能を簡単に作るなど、本当にいろいろと出てきています。いわゆるChatGPTで、チャットボットを作ってあげるみたいな話とか。

あるいは、APIを使って、文書の埋め込み表現、ベクトルを獲得してあげて、簡単な文書の検索システムを作るとか、こういうことが本当に広く行われているんじゃないかと思っています。

注釈をスライドに書いていますが、ここの実装というのは、いわゆるプログラミングを指しています。プロンプトエンジニアリングは別途必要な話だとは思っていますが、いったん置いておきます。

LayerX社内における取り組み事例

実際こういうAI・機械学習の民主化は行われていると思っていて、当社LayerXでもいろいろとやっています。当社は「バクラク」というプロダクトを提供していて、その中には請求書や帳票を読み取るAI-OCR機能や、そこへ組み込んでみるPoCとか、あるいは、社内のいろいろな稟議申請を行うプロダクトもあるのですが、そこの効率化をいくつか実験しています。

実は、このあたりは機械学習エンジニアがやっているわけではなく、いわゆる普通のWebエンジニアがやっています。

あるいは、(スライドを示して)これは社内の業務効率化みたいなところでやったものですが、営業の記録、音声ファイルを基に文字起こしをして、しゃべっている人を分離して、文書要約するみたいな、そのあたりを自動的にやってくれる社内用のサービスを作って、商談の後処理を効率化しています。

ここの一部の開発には機械学習エンジニアが入っていますが、いわゆる機械学習独特の知識はあまり使わずに、APIを叩いて、Whisperとか叩いてやっている感じです。

ちょっと大きな動きだと、実は「LayerX LLM Labs」というものを立てています。大規模言語モデルの専任チームがあって、実はここには機械学習エンジニアはいないのですが、LLMの活用等々を模索したり、情報収集したり、PoCしている組織があります。

機械学習エンジニアの仕事はなくなるのか?

いろいろ紹介しましたが、ここまでの話には実はそんなに機械学習エンジニアは関わっていません。となると、世の中の人が好きな話が「機械学習エンジニアの仕事、なくなるんじゃね?」。こういう話はよくされると思っています。

「これ、どうやねん?」という話でいうと、残念ながらまだ我々機械学習エンジニアの仕事はなくならないんじゃないかと思っています。

大規模言語モデルによってAI・機械学習の民主化が起きていると言っていますが、そもそもMLモデルの作成だけが機械学習エンジニアの仕事じゃないよねという話が、大前提にあると思っています。

MLモデルあるいは大規模言語モデルは、あくまで道具です。いい道具さえあったらいいものが作れるかというと、そうじゃないということは、みなさんご存じのとおりだと思います。(スライドを示して)右のよくある例のアレですね。

最近、「ChatGPTを使っていろいろなサービスを作りました」「新しい機能をリリースしました」みたいな話があると思いますが、その中で真にユーザーの課題を解決しているもの、継続的に使われるものがどれだけあるかというと、一定そうじゃない部分もあるんじゃないかと思っています。

使われないものを作るだけだったらいいですが、大きくユーザー体験を損ねかねないようなものや、ちょっとevilなんじゃないかみたいな使われ方をしているものや、あるいは、取り返しのつかない事故になってしまうケースもあると思っています。

そもそも個別のドメインやタスクにおいて実用的なモデルを作成するには、まだ追加で学習させることが必要だと思っていて、このあたりで機械学習エンジニアの仕事はまだ残っていると思います。

使えないものも増えているよねという話をしましたが、とはいえ、やはり手を動かしている人は偉いと思っています。実際にものを作って、使ってもらわないとわからないことがたくさんあるということは、ご存じのとおりだと思います。

大規模言語モデルという道具は、間違いなく有用なものであると思いますが、それをどう使っていけばいいのかというところは、実際に使ってみて検証することが重要だと思っているし、それを実際に世に出すこと、リリースすることで、事例を世の中に共有すること自体は、大変意義のあることだと思っています。

(スライドを示して)これはそうですね。「手を動かし続けることは重要だよ」みたいな。自分が先月出した「note」と、食べログのブログです。食べログさんのChatGPTプラグイン開発の取り組みの裏側がめちゃくちゃいいなと思ったので、ちょっとここで共有しています。

プロダクトマネジメントの観点に加えて、大規模言語モデル特有の観点が必要になる

「じゃあ、どうすればいいねん?」みたいなところでいったら、大規模言語モデルを活用してプロダクトを作る際に留意すべき点と書いていますが、ただモデルがあればいいわけじゃなくて、(大規模言語モデルは)道具なので、それを使ってプロダクトを作るためには、一般的なプロダクトマネジメントの観点に加えて、大規模言語モデル、MLモデル特有の観点が必要だと思っています。

ここは、わーっと書いていますが、今回は、この詳細を話すことがメインではないので、ざっと流します。ここだけで、たぶん20分ぐらいしゃべれるので、この話を聞きたかったら違うところで登壇させてください。

例えば、意図せぬ出力を考慮した設計は重要だよねという話があります。大前提として、MLを使ったシステムは間違うんですよね。精度100パーじゃないよね、みたいな話があると思っています。

あるいは、ChatGPTだったら嘘をつくと言われているので、その上でどうするか考える必要があったり、意図せぬ入力、いわゆるプロンプトインジェクションみたいなことが起きたり、モデルが変わると入力が同じでも出力が変わっちゃう可能性があるよねとか。

今までにないようなパラダイムで、これらを想定した仕組みや体験の設計、あるいは使いどころの見極めをする必要があると思います。

あるいは、性能評価ですね。モデルの出力による性能がどういう指標でどういう評価をするのかみたいなところが重要だと思っています。かつ、それをOKRやKPIなどの目標値と紐付けることが重要です。

具体例を出すと、分類問題だったら、適合率と再現率。誤検知しないとか、見逃さないという指標があるのですが、このあたりトレードオフだったりするんですよね。

なので、そのサービスの特性とかを考慮しつつ適合率と再現率のどっちの指標を重視するかとか、あるいは特定のユーザーセグメントによって偏りがないかとか、公平性を守っているんだっけとか、いろいろな指標があると思います。

あるいは、その性能評価のためのデータをどうやって集めるんだっけ、みたいな観点とか、使うデータにおけるプライバシーに関する点とか、倫理的な観点できちんと配慮できるか、規制できるかみたいなところ。このあたりもすごく重要になってくると思います。

これまでももちろん、プロダクトマネジメントの観点が一部入ったものがあるかもしれませんが、MLモデル、大規模言語モデル特有の観点が、今後これらを使ったプロダクトを作る際には重要なんじゃないかと思っています。

機械学習を活用したプロダクト開発に必要な職種「MLPdM」は今後ますます注目される

そういうのを、Machine Learning Product Management、MLPdMと呼びます。日本ではまだあまり普及していない気がします。機械学習を活用するプロダクトを作るために必要な能力、あるいは職種をMLPdMと呼ぶと思っていて、一般的なプロダクトマネジメントの観点にML、機械学習特有な観点を加えたものをこう呼ぶと思っています。

これは逆説的でおもしろいのですが、最も必要な能力は、「MLを使う必要のない状況で使わない意思決定ができる能力」と言われたりしますが、こういった能力が、AI・機械学習の民主化に伴って今後ますます注目されるんじゃないかと思っています。

(スライドを示して)このあたりは、自分が参考になると思った資料を貼っています。

まとめ

そろそろ10分ですね。まとめです。最後に、大規模言語モデルを活用して新しい顧客体験を届けるに当たってというところで、2つのメッセージを出しています。

大規模言語モデルの普及によって、AI・機械学習モデルの民主化が行われています。つまり誰でも容易に高性能な機械学習モデルを活用できるようになって、よりきちんとした顧客価値・顧客体験にしていくに当たり、MLPdM、機械学習を活用するプロダクトを作るのに必要な能力・職種の重要性が高まっていくんじゃないかと(思っています)。

だから、仕事はまだまだなくならなさそうだなと、機械学習エンジニアとしての自分は見ているというLTでした。発表は以上です、ありがとうございました。