- イントロダクション:スーパーマーケットの3つの課題
- ナレッジグラフとは
- ナレッジグラフの活用事例
- ナレッジグラフに関連した論文
- Yu et al., COSMO: A large-scale e-commerce common sense knowledge generation and serving system at Amazon[4]
- Shi et al., LLM-Powered Explanations: Unraveling Recommendations Through Subgraph Reasoning[1]
- Wang et al., Multi-level recommendation reasoning over knowledge graphs with reinforcement learning[3]
- 3つの課題の解決策
- その他の活用アイデア
- まとめ
- 参考文献
イントロダクション:スーパーマーケットの3つの課題
東京大学大学院数理科学研究科博士課程2年の安達充慶です。2024年9月の一ヶ月間、インターン生としてお世話になっています。
今回私は小売業界におけるLLMの活用を提案する業務を行いました。その成果をここでご紹介したいと思います。なお、ここでは小売業界の中でもスーパーマーケットに焦点を当てて話を進めます。
スーパーの特徴は、個々の商品の単価が低く利益率も低いことです。したがって、利益を最大化するためには、できるだけ客単価を向上させ、売上高を伸ばすことが重要です。この目標を達成する手段は色々ありますが、今回は以下に示す3つの方法を考えます。
- チラシを用いた宣伝
- パーソナライズしたおすすめ商品の選定
- 店頭POPによる宣伝
チラシを用いた宣伝では、狭い紙面を無駄にせず商品をアピールすることが求められます。具体的には、核となる商品を決めたのち、その商品と一緒に売れる可能性の高い商品を載せること(いわゆるクロスセル)が有効であると考えられます。この一緒に売る商品として最適なものを見つけることが課題です。
パーソナライズされたおすすめ商品の選定も売り上げ向上に寄与すると考えられます。しかし、お客様一人一人のおすすめ商品を人手で選定することは非現実的であるため、システムによる自動化が必須である点が課題です。
店頭POPによる宣伝では、POPに書く宣伝文が重要な要素となります。しかし、宣伝文を考える作業は時間がかかるため、店舗従業員に負担が重くのしかかります。従業員の負担を減らしつつ、効果的な宣伝文を作る仕組みを整えることが重要です。
これらの課題に対し、今回私はナレッジグラフとLLMを組み合わせたレコメンドシステムによる解決策を提案しました。以下、ナレッジグラフとは何なのか、それを使ってどのように上記の課題が解決できるのかを説明します。
ナレッジグラフとは
ナレッジグラフとは、さまざまな知識を連結してグラフとして表現したものです。形式的には以下のデータから構成されます。
- ノード:ユーザーや商品などのエンティティ一つにつき一つのノードを割り当てる。
- エッジ:関係のあるノード同士を結ぶ向きのついた矢印。
- ラベル:エッジが表す関係性を表現する文。一つのエッジにつき一つのラベルが用意される。
例えば、「あるユーザーAが商品Bを購入した」というデータをナレッジグラフで表現する場合は以下のようにします。まず、ノードとして「ユーザーA」と「商品B」の二つを用意します。そして「ユーザーA」から「商品B」にのびるエッジを一つ用意し、このエッジに「購入した」というラベルをつけます。
上記の例では、「ユーザー」や「商品」のようにいかにもエンティティらしさのあるものがノードに現れました。しかし、それ以外にも「甘い」のように感覚を表す語彙をノードで表現することも可能です。これによってユーザーの嗜好を表現したり、食品の味を表現したりすることが可能になります。どこまでをノードとして追加するかは、ナレッジグラフの活用目的に合わせて決めるべきであると考えられます。
以下、スーパーにおける課題の解決策に入る前に
- ナレッジグラフの活用事例
- ナレッジグラフに関連した論文
を紹介します。
ナレッジグラフの活用事例
Google検索
Google検索を行うと、右側に表示されるボックスに検索対象についての情報が表示されることがあります。以下は「Insight Edge」と検索したときのボックスの一部です。
Insight Edgeに関連する情報として所在施設と所在地が表示されていることが分かります。このボックスを生成する目的でナレッジグラフが活用されています。ナレッジグラフの内部が実際にどうなっているかは分かりませんが、以下の図のように「Insight Edge」というエンティティと所在施設などの情報が関連付けられていると推測できます。
Amazon ECサイトのレコメンドシステムCOSMO
ナレッジグラフはAmazonのECサイトでも活用されています。最近発表されたCOSMO[4]というレコメンドシステムでは、人間が持っている暗黙の常識をレコメンドに反映させるための役割をナレッジグラフが担っています。このシステムにより、おすすめの精度は最大で60%向上したとのことです。そしてナレッジグラフに暗黙の常識を追加させる作業の段階でLLMが活用されています。ここではLLMが推論能力を獲得しているという性質を活用しています。
論文で挙げられている例を使って説明します。妊娠している人が靴を買いたいと考え、「妊婦用の靴」と検索したとします。この場合、商品説明に「妊婦」が含まれている靴を探すよりも、妊婦の用途に合った性質(「すべりにくい」など)を持つ靴を探す方が筋がいいと言えます。したがって、そのような暗黙の常識をナレッジグラフで保持することでおすすめの精度が向上すると考えられます。
COSMOでは、ユーザーのサーチクエリとその後の購買行動を注意深く観察することでナレッジグラフに追加する情報を生成しています。ここで注意が必要なのは、サーチクエリとその後の購買行動が全く無関係である可能性が否定できないところです。「妊婦用の靴」と検索したユーザーがすべりにくい靴を購入した場合は、確かにその購入履歴から「妊婦用の靴はすべりにくい方が好ましい」という暗黙の常識を獲得できます。一方、「妊婦用の靴」と検索したユーザーがどういうわけかサンダルを購入したとしても、「妊婦用の靴はサンダルが好ましい」とは言えません。
ここで登場するのがLLMです。LLMは膨大な資料による学習の過程で、世の中についての知識や簡単な推論を行う能力を身につけているとされています(例えばHuang et al.[1])。そこで、LLMに「このサーチクエリと購買履歴の間にはどのような関係がありますか」と聞けば、背後にある暗黙の常識を取り出すことができると考えられます。
ナレッジグラフに関連した論文
ナレッジグラフを活用したレコメンド技術に関連する論文を3つ紹介します。
Yu et al., COSMO: A large-scale e-commerce common sense knowledge generation and serving system at Amazon[4]
Amazonのナレッジグラフ活用事例で紹介したAIシステムCOSMOについての論文です。前節ですでに説明したので詳細は省略します。
Shi et al., LLM-Powered Explanations: Unraveling Recommendations Through Subgraph Reasoning[1]
本論文の目的は、ユーザーの購買履歴と口コミ履歴から、ユーザーが次に買いたいと思う商品のレコメンドを行うことです。本研究で構成されたナレッジグラフには各ユーザーを表すノードと各商品を表すノードがあります。(それ以外のノードもあります。)ユーザーのノードを一つ選んだとき、ナレッジグラフから好ましい商品のノードを一つ選択するアルゴリズムを構築することが目的です。本論文では、ナレッジグラフとLLMを活用したレコメンドシステムにおいて2つの工夫を提案しています。
一つ目の工夫は、ナレッジグラフに口コミ由来の情報をLLMを通して追加する点です。この論文では初期状態のナレッジグラフは次のデータから構成されています。
- エンティティはユーザーと商品
- エッジは各ユーザーが購入した商品への矢印
- ラベルは「購入した」という関係
これだけではナレッジグラフとしては貧弱なので、著者らは口コミデータを利用してナレッジグラフを拡張することを提案しました。例えば、あるユーザーが「このタオルは手触りがいい」と書いたとすると、「手触りの良さ」というノードが追加され、タオルから「手触りの良さ」に向かうエッジに「材質」というラベルがつきます。「私は甘いものが好きなので」という口コミがあれば、ユーザーと「甘い」というノードの間に「味覚の好み」というラベルのついたエッジがつきます。
二つ目の工夫は、ナレッジグラフから情報を取り出す際、重要度が高いと推察される情報からなる部分グラフを抽出してから処理を行う点です。一般にナレッジグラフは大規模になることが多く、情報を取り出す際に巨大なコンピュータリソースを使います。この論文では、ユーザーを起点として、そのユーザーと関連性の高い情報だけからなる部分グラフを構成する手法を提案しています。以下のアルゴリズムで部分グラフを作ります。以下、$N$と$M$はあらかじめ与えられた自然数です。
- はじめに選択したユーザーのみからなる部分グラフ$G_0$を構成する。
- 選択したユーザーと関連性の高いエッジを$N$本選び出し、それらを$G_0$に追加した部分グラフ$G_1$を作る。
- $G_1$と関連性の高いエッジを$N$本選び出し、それを$G_1$に追加した部分グラフ$G_2$を作る。
- この操作を$M$回繰り返して得られる部分グラフ$G_M$が求めるものである。
「関連性」はある一定の計算方法で求めます。その計算の中にはパラメータが入っており、その値は事前の学習で求めておきます。$N$と$M$はハイパーハラメータです。
以上の方法でエッジの数が$NM$本のサブグラフが抽出できました。このあと、はじめに選択したユーザーに最もおすすめの商品が一定のアルゴリズムで決定されます。このアルゴリズムに含まれるパラメータも事前の学習で決めておきます。
論文のタイトルにもある通り、この手法はレコメンドの根拠を説明できるシステムの構築を目指しています。最後の「ユーザーにおすすめな商品を決定する」プロセスでは、ユーザーから商品までたどり着くまでの一本の道が生成されます。その道は商品のおすすめ理由を含んでいると考えられるので、それをLLMに渡すことで人間に理解しやすい形でレコメンドの根拠が示されることになります。
Wang et al., Multi-level recommendation reasoning over knowledge graphs with reinforcement learning[3]
本論文ではナレッジグラフを階層化することを提案しています。論文における図では、ナレッジグラフが3層に分かれており、その上部の層に行くにつれてノードが抽象的な対象を表すようになります。
ナレッジグラフの最下層は具体的な商品名がノードになっています。一方、最上層では「化粧品」や「高級ブランド」といった抽象度の高い語彙がノードになっています。「ユーザーが次にほしがる商品をおすすめしたい」という観点に立ったとき、「プラダの化粧バッグを購入した」という情報から「プラダ」や「化粧バッグ」という語彙だけに注目するのは得策でない可能性があります。それよりも、プラダから連想される「高級ブランド」や「化粧品」といった抽象化された属性の方がユーザーの好みを反映しているかもしれません。ナレッジグラフの階層化は、こうした抽象化を行う目的に適していると考えられます。
3つの課題の解決策
ナレッジグラフとLLMを組み合わせたシステムによって冒頭で述べた課題がどのように解決できるか、私の考えを述べます。
チラシを用いた宣伝
ナレッジグラフの情報をもとにクロスセル(セット売り)を実施する際の商品選定に利用することができます。例えば以下の図のようなナレッジグラフがあったとします。
このとき、システムに「Item 1とセットで販売するといい商品は?」と聞くと「Item 1を購入する顧客はItem 2をセットで購入する傾向にあるため、Item 2をおすすめします。」と返事が来るはずです。Item 3もItem 1と関係がありますが、「Item 3を購入する顧客はItem 1も購入する」という逆向きの関係なのでおすすめされません。LLMは内在化された推論能力によりこのような判断を自分で行うことができます。
パーソナライズしたおすすめ商品の選定
具体的に提供可能なサービスの一例として、AIによるレシピ提案システムが考えられます。この場合、ナレッジグラフに
- レシピの情報
- 味覚や食感などの情報
- ユーザーごとの好みの情報
を登録しておきます。味覚や食感などの情報はレシピの提案者から、ユーザーごとの好みの情報は過去のレシピ選択の履歴から取得します。
例えば、以下の図のようなナレッジグラフがあったとします。
この状況でユーザーが「今日は中華料理の気分だ」のようにLLMに話すと、LLMは「麻婆豆腐はいかがですか?辛いもの好きのあなたにおすすめです。」と返してくれるでしょう。また、情報の粒度を調節することで、「唐辛子の辛さが特徴の麻婆豆腐」と「山椒のピリピリ感が特徴の麻婆豆腐」を区別できるようにすることも可能です。これによって、よりユーザーの好みに合ったレシピを提案できる可能性が高まります。
店頭POPによる宣伝
店頭POPにLLMを活用する動きはすでに成果を出しています。例えば、西鉄ストア[5]では、購買履歴の情報と通販サイトの口コミデータの情報を使って生成AIにPOPの売り文句を作成させる取り組みを行いました。この結果、取り組み対象となったカレー商品の売り上げは他店舗の売り上げ増加率を1%上回る結果となりました。イオン[6]でも生成AIを「店舗に掲示する文書のひな型作成」や「店内放送のひな型文書作成」に応用しています。
上記の取り組みにナレッジグラフを活用することを考えてみます。ナレッジグラフの強みは商品やユーザーの購買行動などが体系的に管理されているところです。したがって、商品の特性やアピールしたい層についての情報を的確に取り込んだPOP文を作成できると期待されます。
その他の活用アイデア
ナレッジグラフとLLMの組み合わせを活用できそうな他のアイデアをいくつか述べたいと思います。
ドラッグストアでの活用
- 患者さんの健康上の悩みに対してアドバイスを行うシステムに活用します。
- 患者さんの症状と、予防策や対処法をノードとして管理し、それらの間の関係性をエッジとして管理します。
生活習慣の改善
- ユーザーの生活習慣改善に役立つアドバイスを行うシステムに活用します。
- ユーザーの生活習慣、それによって現れる種々の症状、改善方法をノードとして管理します。
求人マッチングサービス
- 求職者に最適な求人やキャリアパスの提案を行うシステムに活用します。
- 求職者の経歴・スキル、求人情報をノードとして管理します。
まとめ
ナレッジグラフとLLMは相互補完的な関係にあります。ナレッジグラフは事実関係を正しく整理する目的に最適です。LLMは正しくない情報を生成してしまうという問題(ハルシネーション)が知られていますが、ナレッジグラフはその弱点を補うことができます。一方、ナレッジグラフから取り出した事実関係を利用する作業はLLMの得意とするところです。
現在、スーパーマーケットでの応用を念頭に、Customer Decision Treeのアイデアをもとにナレッジグラフを構築できないか検討中です。(参考URLとして[7]を挙げます。) Customer Decision Treeとは、顧客のニーズを階層化して表現したものです。最上層では最も大雑把なニーズが定義され、階層を下るごとにニーズが細分化していきます。個々の商品は、Customer Decision Treeの最下層で提示されたニーズと結びつくはずです。
スーパーで取り扱う食品などの商品の場合、同じ商品であっても顧客によって全く違うニーズから購入に至るケースがあります。したがって、一つの商品に対して複数のニーズが該当するケースがあると考えられます。このような状況をナレッジグラフとして捉えるところから始めることで、説明力の高いレコメンドシステムが構築できるのではないかと期待しています。
最後にインターンの感想を書いて締めたいと思います。このインターンは「LLMを事業に活用する方法を検討する」ということだけが決まっており、それ以降のことは私が自由に考えることができました。自由度の高さゆえ、次に進むべき方向が分からなくなってしまうこともありましたが、その度にメンターの森さんが軌道を指し示してくださいました。その際、「この事業の特性を考えると」といつもおっしゃっていたのが印象的でした。相手が求めることを的確に想像することが努力の方向性を間違えないために必要なことだと実感しました。
メンターの森さんをはじめ、たくさんの方にお世話になりました。この場を借りて感謝申し上げます。一ヶ月間お世話になりました。
参考文献
[1] Huang, J., Chang, K. (2022). Towards Reasoning in Large Language Models: A Survey. Findings of the Association for Computational Linguistics: ACL 2023 (pp. 1049–1065).
[2] Shi, G., Deng, X., Luo, L., Xia, L., Bao, L., Ye, B., ... & Li, Y. (2024). LLM-Powered Explanations: Unraveling Recommendations Through Subgraph Reasoning. arXiv preprint arXiv:2406.15859.
[3] Wang, X., Liu, K., Wang, D., Wu, L., Fu, Y., & Xie, X. (2022). Multi-level recommendation reasoning over knowledge graphs with reinforcement learning. In Proceedings of the ACM Web Conference 2022 (pp. 2098-2108).
[4] Yu, C., Liu, X., Maia, J., Li, Y., Cao, T., Gao, Y., ... & Li, Z. (2024). COSMO: A large-scale e-commerce common sense knowledge generation and serving system at Amazon. In Companion of the 2024 International Conference on Management of Data (pp. 148-160).
[5] 日本経済新聞、「西鉄ストア、生成AIが『売り文句』 POP実験で販売好調」、https://www.nikkei.com/article/DGXZQOJC0695Y0W4A600C2000000/(2024/9/17アクセス)
[6]エクサウィザーズ、「イオンデジタルアカデミーが『exaBase 生成AI』を採用」、https://exawizards.com/archives/26831/(2024/9/17アクセス)
[7] PR TIMES, 「消費者ニーズのさらなる深掘りが可能に!『カスタマーデシジョンツリー分析」のサービス内容を拡充(株式会社True Data)」、https://prtimes.jp/main/html/rd/p/000000048.000039871.html(2024/9/19アクセス)