食べログの先端領域推進を担当する森菜都未氏

森菜都未氏(以下、森):よろしくお願いします。「食べログChatGPTプラグイン導入で見えてきた未来:データサイエンティストの向き合い方」について、株式会社カカクコムから森菜都未が発表いたします。

まず、自己紹介です。森菜都未と申します。株式会社カカクコムの食べログシステム本部技術部データサイエンスチームに所属しています。

学生時代は自然言語処理研究室で研究を行っており、その後、ソフトバンクでデータサイエンティストとして従事した後、2023年2月に株式会社カカクコムに入社しました。現在は、食べログの先端領域推進を担当しています。

日本企業初のChatGPTプラグイン「食べログChatGPTプラグイン」をリリース

では、さっそく発表に移らせていただきます。まずは、そもそも今回なぜ食べログがこの場に立たせていただいているのかです。

食べログは、2023年5月6日に「食べログChatGPTプラグイン」をリリースしました。これは日本企業初のChatGPTプラグイン提供ということで、さまざまなメディアにも取り上げていただきました。

ChatGPTの課題として、例えば「明日の19時に4人で入れる渋谷の焼肉屋さんを教えてください」と入力した際に、最新の情報を有していなかったり、実在しない店舗情報を返す、いわゆる嘘を言ってしまったりすることがありました。

これに対してプラグインを導入することにより、問い合わせた時点の食べログが持っている情報をAPI経由で連携することができます。ユーザー視点では、問い合わせ時点の最新の情報かつ実在する店舗情報を取得できるという機能になっています。

また、返されたお店の情報は実在する店舗情報なので、リンクをクリックすると食べログのページにアクセスし、実際に予約も可能です。

この食べログChatGPTプラグインの開発に、データサイエンスチームは、「ChatGPT」などの大規模言語モデルの技術的な部分に責任を持つチームとして全体を通して携わらせていただきました。

食べログChatGPTプラグインの開発の詳細は、「Tabelog Tech Blog」に記事を書いているので、そちらをご覧ください。

データサイエンティストが考える、大規模言語モデル活用の未来とは?

では、ここから本日の本題となります。これからお話しすることは、以下の2点です。「データサイエンティストから見た、食べログの大規模言語モデル活用の未来」と、「データサイエンティストの向き合い方」という順でお話しします。

ではさっそく、データサイエンティストから見た食べログの大規模言語モデル活用の未来についてお話しします。

そもそもデータサイエンティストと大規模言語モデルの関係についてですが、データサイエンティストに必要なスキルの1つとして、GPTなどのモデルを理解し、使いこなせるということが定義されています。このことから、データサイエンティストは大規模言語モデルを使いこなす必要があると言えます。

では、データサイエンティストから見た大規模言語モデルがどのようなものだったかについて説明いたします。

個人的な視点からお話ししますが、まずChatGPT登場前の大規模言語モデルの代表的なものとして、BERT(Bidirectional Encoder Representations from Transformers)と呼ばれるものが存在しています。

これは、2018年にGoogleより公開されたモデルです。この大規模言語モデルは、ファインチューニングと呼ばれるものが必要で、要約タスクであれば要約用のファインチューニング、機械翻訳タスクであれば機械翻訳用のファインチューニングが必要になります。

このファインチューニングは、モデルを学習し直す行為にイメージが近いので、ファインチューニング用の学習データの準備、学習用のリソース確保、ファインチューニングの専門知識を要するものでした。

一方で、ChatGPT登場後に何が変わったかというと、代表的な大規模言語モデルとして、GPT-4が出てきました。

こちらは、みなさんもご存じだと思いますが、2023年にOpenAI社から公開されたもので、「ChatGPT Plus」ユーザーや「OpenAI API」経由での利用が可能なものになっています。

多くのみなさんがご存じかもしれませんが、このモデルはIn-context learningという手法で、特定のタスクごとのファインチューニングを行わなくてもそれぞれのタスクに適用可能なものになっています。

というところで、このように今回ローコストでさまざまなタスクに適用可能なモデルが登場しました。これは、食べログ内で手をつけられていなかったさまざまなタスクに対して解決の糸口になると考えており、今後食べログでは大規模言語モデルを活用した案件が増加する見込みです。

大規模言語モデルを活用する案件における業務の流れ

続いて、データサイエンティストの向き合い方についてお話しします。

まず、そもそもデータサイエンティストがどういう業務を行っているかについてです。データサイエンティストの業務は、(スライドを示して)こちらの図にあるような流れで行われます。

この図を一つひとつ説明していると時間がなくなってしまうので、今回はアプローチ設計とデータ収集にフォーカスして、大規模言語モデルを活用する案件ではどのような流れで業務を行っているかをお話しします。

大規模言語モデルを活用する案件でのアプローチ設計では、やるべきことが2つあります。1つ目は、大規模言語モデルを使うべきかという判断。2つ目は、使うとしたらどの大規模言語モデルを使うかというところです。

大規模言語モデルを使うべきかの判断を具体的に説明すると、まず解きたい課題のタスクは何かを整理します。

例えば、解きたい課題として、食べログの口コミ検索の検索精度を改善したいというものがあった場合、想定されるタスクとして、エンベディング、要約、キーワード抽出、感情分析などが挙げられます。

この想定されるタスクが、大規模言語処理モデルの得意とするタスクかどうかを判断して、最終的に大規模言語モデルを使うべきか、別のアプローチにするべきかという判断を行います。

続いて、使うとしたらどの大規模言語モデルを使うかの判断です。大規模言語モデルと一言で言ってしまっていますが、大規模言語モデルをどう利用するかというところで、アプローチ設計や必要なスキルセットは変わると思うので、今回、大規模言語モデルの利用方法というところで3つに分類して定義しました。

1つ目が、大規模言語モデルのプラットフォームを利用する場合。2つ目が、商用利用可能なモデルを利用する場合。3つ目が、完全自社開発して利用する場合です。

例えば、アプローチ設計で大規模言語モデルのプラットフォームを利用すると選択した場合、(スライドを示して)こちらの図のようにデータ処理、データ解析、評価など、データサイエンティストの業務としてごちゃごちゃしていた部分が、プラットフォームとしての利用の検討にまるっと置き換わります。

この置き換わったプラットフォームとしての利用の検討で、具体的に何をするかを一言でまとめると「要件に合うプラットフォームがあるかを調査して選択する」ということになります。

例えば、大規模言語モデルのプラットフォームを利用して活用する場合、現時点だと「Azure OpenAI Service」や「OpenAI API」などが選択肢として浮かぶと思っています。

その際に、課金方式、コスト、入力データの二次利用があるかなどを調査して、最終的に一番要件に合うプラットフォームを選択するという過程が、プラットフォームとしての利用の検討です。

また、この工程を実施するにあたっては、APIやプラットフォームの仕様の把握など、幅広い知識が求められるかなと考えています。

大規模言語モデルの利用方法によって求められるスキルは変わる

というところで、以上のように大規模言語モデルを活用した案件の場合と、通常のデータサイエンティストの業務というところでは、求められるものが変わってくると考えています。

通常のデータサイエンティストの業務の場合だと、データの前処理、機械学習、モデル評価など、AI領域の専門知識が多く必要とされますが、プラットフォームとしての利用を検討する場合、大規模言語モデルを活用した案件に必要な業務の場合だと、APIの接続などの専門知識のほうが要求されると思っています。

というところで、今回いろいろお話ししましたが、時間の都合で、すべてはお話できませんでした。

大規模言語モデルの利用方法によって、求められるスキルが変わってきます。今回は一番上をお話ししましたが、商用利用可能なモデルを利用する場合や完全自社開発して利用する場合も、今後データサイエンティストの価値を発揮できる部分として残っていくと思うので、ここに対してきちんと求められるスキルを準備していくことが今後重要になってくるのかなと考えています。

AI領域以外の専門知識を身につけることでデータサイエンティストとしての価値はさらに上がる

まとめです。今回、食べログとしては大規模言語モデル活用の未来として、大規模言語モデルを活用した案件が増加することが見込まれると考えています。

そのため、データサイエンティストとしては現状のAI領域の専門知識をさらに広げて、AI領域以外の専門知識を身につけることで、さらなる価値を持たせるデータサイエンティストになれるのではないかと考えています。

最後に、食べログでは一緒に働ける仲間を募集しています。よろしくお願いします。以上です。

司会者:ありがとうございます。データサイエンティストとして、けっこうアンラーニングしていかなきゃいけない部分もあったんじゃないかなと思っています。

大規模言語モデルを使い始めて、僕も「えぇ、こんなこと、普通にプロンプトだけでできちゃうの?」みたいにびっくりするところもあったのですが、ChatGPTやGPT-4を見た時に、森さんとして受け止め方というか、ファーストインプレッションみたいなものはありますか? 

:そうですね、私もファインチューニングを前提としていた節があって、「あれ? ファインチューニングしなくてこんなに性能出るの?」みたいなところとか「すごい、こんなにできるんだ」という感情を持ちました。

司会者:まさに、おっしゃっていただいたように、実は既存の言語モデルやライトな言語モデルをうまく使っていくことで効果が出る領域とか、あるいは使い方の工夫によって、組み合わせでできることなど、いろいろ出てきたのかなと思っています。

知識の幅が広いと、より解決策も深くなっていくのかなと思いますので、食べログさんでのチャレンジがまたあれば、ぜひうかがえればと思います。今日はありがとうございました。

:ありがとうございました。