(57)【要約】      （修正有）【課題】過去のユーザレビューに基づいて、まだレビューを書いていないアイテムのレビューを予測する。【解決手段】ユーザにレコメンデーションを提供する方法は、保存されたデータ構造３つ組及び該データ構造３つ組に関連する実際の評価を取得し、保存された前記データ構造３つ組及び関連する実際の評価を用いて機械学習モデルをトレーニングし、該機械学習モデルをトレーニングすることは保存された前記データ構造３つ組及び関連する実際の評価に基づいてユーザ、商品、及びレビューの表現を生成することを含み、前記機械学習モデルが生成された前記ユーザ、商品、及びレビューの表現を用いて評価を予測し、予測された前記評価に基づいてレコメンデーションを作成することを含む。【選択図】図５
2019049980.tif 000002
【特許請求の範囲】
【請求項１】
ユーザにレコメンデーションを提供する方法であって、
保存されたデータ構造３つ組及び該データ構造３つ組に関連する実際の評価を取得し、
保存された前記データ構造３つ組及び関連する実際の評価を用いて機械学習モデルをトレーニングし、該機械学習モデルをトレーニングすることは保存された前記データ構造３つ組及び関連する実際の評価に基づいてユーザ、商品、及びレビューの表現を生成することを含み、
前記機械学習モデルが生成された前記ユーザ、商品、及びレビューの表現を用いて評価を予測し、
予測された前記評価に基づいてレコメンデーションを作成する
ことを含む方法。
【請求項２】
保存された前記データ構造３つ組及び関連する実際の評価に基づいてユーザ、商品、及びレビューの表現を生成することは、前記ユーザ、商品、及びレビューの表現を一緒に学習することを含む、請求項０に記載の方法。
【請求項３】
逆伝搬法を用いて前記ユーザ、商品、及びレビューの表現を一緒に学習する、請求項０に記載の方法。
【請求項４】
各レビュー表現は、前記データ構造３つ組のレビューに現れる単語の埋め込みの平均値であると判断される、請求項０に記載の方法。
【請求項５】
各評価を予測することは、リグレッサーを生成されたレビュー表現に適用することを含む、請求項０に記載の方法。
【請求項６】
前記機械学習モデルをトレーニングすることは、実際の評価と前記レビュー表現入力をとるリグレッションモデルの出力との平均二乗誤差を最小化することを含む、請求項０に記載の方法。
【請求項７】
生成された前記ユーザ及びアイテムの表現を用いてテスト段階において対応する商品の潜在レビュー表現を近似し、
近似された前記潜在レビュー表現及び線形リグレッションモデルを用いて評価を予測する、ことを更に含む請求項０に記載の方法。
【請求項８】
ニューラルネットワークを用いて前記機械学習モデルをトレーニングする、請求項０に記載の方法。
【請求項９】
予測された前記評価に基づいて前記レコメンデーションを作成することは、予測された前記評価の降順にアイテムのリストを提供することを含む、請求項０に記載の方法。
【請求項１０】
ユーザにレコメンデーションを提供するシステムであって、
データ構造３つ組及び該データ構造３つ組に関連する実際の評価を取得するインターフェースと、
前記データ構造３つ組及び実際の評価を保存するデータベースと、
保存された前記データ構造３つ組及び関連する実際の評価を用いて機械学習モデルをトレーニングし、前記機械学習モデルをトレーニングすることは保存された前記データ構造３つ組及び関連する実際の評価に基づいてユーザ、商品、及びレビューの表現を生成することを含み、前記機械学習モデルを用いることにより、生成された前記ユーザ、商品、及びレビューの表現を用いて評価を予測するニューラルネットワークとを含み、
前記インターフェースは更に、予測された前記評価に基づいてレコメンデーションを作成する、システム。
【請求項１１】
前記ニューラルネットワークは更に、前記ユーザ、商品、及びレビューの表現を一緒に学習する、請求項０に記載のシステム。
【請求項１２】
逆伝搬法を用いて前記ユーザ、商品、及びレビューの表現を一緒に学習する、請求項０に記載のシステム。
【請求項１３】
各レビュー表現は、前記データ構造３つ組のレビューに現れる単語の埋め込みの平均値であると判断される、請求項０に記載のシステム。
【請求項１４】
各評価を予測することは、リグレッサーを生成されたレビュー表現に適用することを含む、請求項０に記載のシステム。
【請求項１５】
前記機械学習モデルをトレーニングすることは、前記レビュー表現及び対応する前記評価に基づいて線形リグレッサーの出力の距離を最小化することを含む、請求項１４に記載のシステム。
【発明の詳細な説明】
【基礎出願の組み込み】
【０００１】
先行出願の相互参照
本出願は２０１７年９月８日に出願された米国仮出願６２／５５５，６７０号の利益を主張するものであり、本明細書にその全体を参照により援用する。
【技術分野】
【０００２】
本発明は、オンライン小売業、より具体的には、オンライン小売りレコメンデーションシステムに関する。
【背景技術】
【０００３】
オンラインショッピングは消費者が仮想店舗を介して直接商品やサービスを購入できるようにするものであり、徐々に従来のショッピングに取って代わりつつある。実際、オンライン小売業者は、映画、書籍、音楽など、いくつかの分野の娯楽商品の事実上の提供者になってきた。そのため、レコメンデーションシステムはオンライン買い物客（ユーザ）とオンライン小売業者の両方にとって非常に有用である。ユーザにとっては、レコメンダシステムはユーザが興味があるかもしれない商品を素早く見つける。小売業者にとっては、レコメンダシステムはユーザの嗜好に合いそうな商品を示唆することによりユーザのニーズを作り出すことに貢献する。
【０００４】
従来のレコメンデーションシステムは、過去の評価（協調フィルタリング）、又は商品のメタデータ情報及びユーザの嗜好の特徴（コンテンツベースのフィルタリング）、又はその両方を組み合わせたもの（ハイブリッドレコメンダシステム）に基づいて予測を行う。また、J. McAuley et al., “Hidden factors and hidden topics: understanding rating dimensions with review text,” ACM (2013）は、ユーザによって書かれた商品レビューのテキストを評価予測のために使用する方法が協調フィルタリングのカテゴリー又はコンテンツベースフィルタリングのカテゴリーに属する確立した方法より優れていることを示している。
【発明の概要】
【課題を解決するための手段】
【０００５】
一実施形態において、本発明はユーザにレコメンデーションを提供する方法を提供する。本方法は、保存されたデータ構造３つ組及び該データ構造３つ組に関連する実際の評価を取得し、保存された前記データ構造３つ組及び関連する実際の評価を用いて機械学習モデルをトレーニングし、該機械学習モデルをトレーニングすることは保存された前記データ構造３つ組及び関連する実際の評価に基づいてユーザ、商品、及びレビューの表現を生成することを含み、前記機械学習モデルが生成された前記ユーザ、商品、及びレビューの表現を用いて評価を予測し、予測された前記評価に基づいてレコメンデーションを作成することを含む。
【図面の簡単な説明】
【０００６】
本発明を典型図に基づいて以下に更に詳細に説明する。ただし、本発明は以下の典型的実施形態に限定されない。本明細書で説明された及び／又は図示された全ての特徴は、本発明の各実施形態において単独で用いてもよく、又は様々に組み合わせてもよい。本発明の様々な実施形態の特徴及び利点は、添付の図面を参照して以下の詳細な説明を読むことにより明らかになろう。
【０００７】
【図１】図１は本発明の一実施形態によるレビューが利用可能なオンラインショッピングのシナリオを示す。
【図２】図２は本発明の一実施形態によるレコメンダシステムアーキテクチャである。
【図３】図３は本発明の一実施形態によるモデル仮定の視覚表現である。
【図４】図４は本発明の一実施形態によるレコメンダシステムをデプロイするための概観システムアーキテクチャを示す。
【図５】図５は本発明の一実施形態によるユーザにレコメンデーションを提示する処理を示す。
【図６】図６は本発明の一実施形態によるレコメンダシステム及びシステムをテストする際用いられるベンチマークデータセットをまとめた表を示す。
【図７】図７は本発明の一実施形態によるレコメンダシステム及びシステムのテストによる潜在次元の関数として平均二乗誤差を有する表を示す。
【図８】図８は本発明の一実施形態によるレコメンダシステム及びシステムのテストによる複数の評価予測方法の平均二乗誤差を比較する表を示す。
【図９】図９は本発明の一実施形態によるレコメンダシステム及び方法のテストによる実際のテストレビューとそれに最も近いトレーニングレビューとを比較する表を示す。
【図１０】図１０は本発明の一実施形態によるレコメンダシステム及び方法のテストによる単語埋め込みと対応するスコアのグラフ表示を示す。
【発明を実施するための形態】
【０００８】
本発明の実施形態は、ユーザによって与えられた過去の評価と関連する商品レビューの履歴に基づいて１つ又は複数のアイテム（又は商品）の評価予測を行うレコメンダシステムを提供する。予測期間中１つ又は複数のアイテムのレビューは利用できないので、レコメンダシステムは２層処理で動作する。レコメンダシステムはまず、ユーザが１つ又は複数のアイテムについて書く可能性のあるレビューの表現を近似し、それらの近似を用いて評価予測を行う。予測された評価に基づいて、レコメンダシステムは１つ又は複数のアイテムを格付けしてユーザに示す。
【０００９】
本発明の実施形態は、過去のユーザ評価及び関連するユーザにより書かれた過去のユーザ評価に関連する商品レビューの履歴に基づいて１つ又は複数のアイテムのユーザ評価を予測するレコメンダシステムを提供する。レコメンダシステムは過去のユーザ評価の履歴及び関連する商品レビューのテキストを用いてユーザ、商品、及びレビューをマルチリレーショナルグラフとして関係付ける。このマルチリレーショナルグラフを用いることにより、１つ又は複数のアイテムのレビューが利用できないときであっても予測期間に当該１つ又は複数のアイテムのレビューを近似することができる。そしてレコメンダシステムはレビューの近似に基づいて個々のユーザについて当該１つ又は複数のアイテムの評価予測を行う。予測された評価は、レコメンダシステムにより行われる予測に従ってユーザに商品を表示するアプリケーションに提供することができる。
【００１０】
説明を容易にするため、本発明の実施形態をオンラインショッピングという設定で説明する。一部の実施形態は、他の設定、特に(i）ユーザと商品との対話、及び(ii）商品に関連するテキスト、例えば、商品レビュー、商品説明、又は他の種類のテキストコンテンツが存在する設定に拡張可能であることは理解されよう。
【００１１】
一実施形態において、本発明はユーザによる商品に関連付けられたテキストコンテンツを利用するレコメンダをモデル化する方法を提供する。このレコメンダは、レビューが一定の満足度を表す関係と見なされるマルチリレーショナルグラフとしてモデル化される。レビューについてのこの仮定は、ユーザが特定の商品について書くであろうレビューの表現を近似しる仕組みを提供し、このレビューの近似に基づいて評価が予測される。このシステムは非常に効率的である。このレコメンダは、ユーザ、商品、及びレビューを、ユーザの評価の予測が一定時間内に実行可能な低次元表現に対応付ける。
【００１２】
本発明の実施形態はいくつかの利点をもたらす。本発明の実施形態は、レコメンダシステムの、レビューのテキストが一定の満足度を表す関係と見なされるマルチリレーショナルグラフへのモデル化を実現する。また、本発明の実施形態は、ユーザ、アイテム、及びレビューの表現を一緒に学習することを実現する。また、本発明の実施形態は、評価予測がレビュー埋め込みの見積もりに基づいてなされるのを可能にする。従来技術と比較した本発明の実施形態の利点は、テスト期間中にレビュー表現を近似できるということである。その後それらの近似を用いてトレーニングセットから最も類似したレビューを抽出しその最も類似したレビューをユーザがアイテムについて書いたかもれしない仮のレビューとしてユーザに提示することができる。このようにして、これらの実施形態はユーザがレビューを書いた他のアイテムの過去のレビューに基づいてユーザがまだレビューを書いていないアイテムについてのユーザのレビューを予測することができる。
【００１３】
小売業者の観点から、本発明の実施形態は追加の機能を提供する。小売業者はそのような実施形態を用いて彼らの商品に高い評価と良好なレビューを与えるユーザをターゲットにすることができる。いったんそのようなユーザがターゲットになれば、小売業者は市場で人気を得るのに役立つ良好なレビューと評価が得られるようにそれらのユーザに商品を広告することができる。本発明の一部の実施形態は仮の推奨レビューをユーザに提示するので、それらの推奨レビューはオンライン消費者にとって非常に価値のある、より入念なレビューを得るのに役立つことができる。
【００１４】
図１は本発明の実施形態によるレビューが利用可能なオンラインショッピングのシナリオを示す。図１のシナリオには、商品１１８、１２０、１２２についてレビュー１０８、１１０、１１２、１１４、１１６を書くユーザ１０２、１０４、１０６が含まれる。図１のシナリオは一方にユーザ１０２、１０４、１０６の組、他方に商品１１８、１２０、１２２の組がある２部グラフとして示され、対応する評価及びレビュー１０８、１１０、１１２、１１４、１１６がユーザ１０２、１０４、１０６を商品１１８、１２０、１２２に結びつけている。本発明の実施形態は、評価及びレビュー１０８、１１０、１１２、１１４、１１６を介したユーザ１０２、１０４、１０６と商品１１８、１２０、１２２とのモデル対話に効果的に適用することができる。本発明の実施形態によれば、機械学習のアルゴリズムを用いて目に見えないペア（ユーザ、商品）の評価を予測し、予測された評価に基づいてユーザ１０２、１０４、１０６にレコメンデーションを提示することができる。
【００１５】
(u,Rv_(u,i),i)は、関連する評価r_(u,i)を有しユーザuがアイテムi（商品）についてレビューRv_(u,i)を書き評価r_(u,i)を与えたことを示す３つ組であるとする。３つ組のこの定義は、マルチリレーショナルグラフにおける３つ組のそれを連想させるものであり、例えば、３つ組(head,label,tail)はノードhead、tailの間にlabelと名付けられたエッジが存在することを示す。引数、すなわち、head, label, tailがそれぞれ、引数間の特定の関係や実体を意味するワンホットベクトルとしてコード化される。同様に、３つ組(u,Rv_(u,i),i)において、各エッジはユーザノードuがアイテムノードiについて書いた対応するレビューに結びつけられている。アイテムiについてのユーザuのレビューは、p_z^(u,i)がレビューRv_(u,i)に表れるz番目の単語を表しn+1が当該レビューの長さを表す単語の組Rv_(u,i)=[p_0^(u,i),…,p_n^(u,i) ]として定義されてもよい。
【００１６】
以上の設定では、レビューはマルチリレーショナルグラフにおける関係に対する対応物である。マルチリレーショナルグラフでは、同一の関係が異なるノード対を結び付けることができる。例えば、関係located_inは３つ組(Tokyo,located_in,Japan)、(Berlin,located_in,Germany)に示されるようにノードを結び付けることができる。しかしながら、レビューに拡張した場合、レビューは唯一無二である傾向がある、すなわち、２つ以上のレビューが同一であることは滅多にない。それでも、レビューは単語と数字からなっており、類似する単語が異なるレビューに現れて異なるレビューに共通の感想を伝える場合がある。例えば、「すごい」や「すてき」などの単語は肯定的なレビューに書かれていることが多く、一方「がっかり」や「役に立たない」などの単語は否定的なレビューに見られる場合が多い。そのため、レビューは異なる満足度を表す関係と考えることができる。
【００１７】
一実施形態において、本発明は、全てのユーザ、アイテム、及びレビューを、ユーザ埋め込みとレビュー埋め込みがアイテム埋め込みに近いと判断される潜在空間に埋め込むモデルを提供し、同時にこのモデルはテキストを与えられてアイテムの評価を予測するリグレッサーを学習する。一実施形態において、予測期間にレビューは利用できないが、このモデルはアイテム埋め込みとユーザ埋め込みとの差をとることによりレビュー埋め込みの予測を可能にし、予測されたレビューの埋め込みをリグレッサーとともに用いて評価予測を行う。埋め込みは潜在空間における表現である。
【００１８】
本発明の実施形態において、マルチリレーショナルグラフデータ構造が、商品毎にユーザにより提供される実際のレビューと評価の組に基づいて生成される。マルチリレーショナルグラフデータ構造には、ユーザ表現、商品表現、及びレビュー表現が含まれる。マルチリレーショナルグラフデータ構造では、各ユーザ表現及びアイテム表現は、ノード、すなわち、潜在空間に関連して定義される特定の値を有するデータオブジェクトである。同様に、各レビュー表現は、エッジ、すなわち、潜在空間に関連して定義される特定の値を有するデータオブジェクトである。各評価は対応するレビューに関連する値である。これらの表現の値は、最適化問題、すなわち、ユーザ表現とレビュー表現との合計からアイテム表現までの距離（例えば、ユークリッド距離）の最小化を解決する学習された数学値である。また、その入力がレビュー表現であるリグレッッションモデルの出力は、当該アイテムについてユーザにより与えられる実際の評価までの距離に関して近くなるように最適化される。
【００１９】
実施形態において、本発明は全てのノード、すなわち、ユーザ及びアイテムの表現とエッジ、すなわち、レビュー表現を低次元潜在空間k（kはモデルハイパーパラメータ）に埋め込む。レビュー潜在空間表現h_(revu,i)は、関数fをレビュー、すなわちh_(revu,i)=f(Rv_(u,i) )、を構成する単語の埋め込みに適用した際の生成物である。この関数fは、通常ニューラルネットワーク（例えば、再帰型又は畳み込みニューラルネットワーク）でパラメータ化することができるが、多くの場合、関数fは、例えば、Rv_(u,i)における単語埋め込みの平均値又は最大値を演算する単純な、パラメータを含まない関数である。
【００２０】
これらの埋め込みの学習は２つの学習目的により駆動される。第１の学習手順は以下の目的により駆動される。
【数１】
2019049980.tif 000003
ここで、Sはトレーニング３つ組とそれに関連する評価の組であり、wは線形リグレッサーの学習可能な重みであり、はと書かれたバイアス項の合計を表すのに用いられるショートカットであり、はユーザと関連付けられたバイアスであり、はアイテム と関連付けられたバイアスであり、はオーバーオールバイアスである。バイアス項はトレーニング中に学習／調整される数式１のモデルのパラメータである。数式１は、実際の評価とレビュー表現を入力特徴として用いる（とバイアス項によりパラメータ化された）リグレッションモデルの出力との平均二乗誤差を最小化することを含む。
【００２１】
説明を分かりやすくするため、単純なインスタンスfを採用する、すなわち、そのレビューに現れる単語の埋め込みの平均値になるようなレビュー埋め込みh_(revu,i)を採用する。形式としては、
【数２】
2019049980.tif 000004
ここで、v_pは単語pに関連付けられた埋め込みであり、h_0はR^kにおいて全ての値をとる全てのレビューに共通のレビューバイアスである。レビューバイアスはデフォルトコントリビューションの提供を可能にする。レビューバイアスを提供することの利点は、その中のいずれの単語も選ばれた語彙の中で考慮されていないレビューが受け取られると、少なくともこのレビューはh_0と等しくなるように演算されたh_(revu,i)を有することになる。語彙は様々な方法で生成することができる。実施形態において、語彙はレビューの中に最も頻出するm（例えば、m=10000）個の単語だけを含む。
【００２２】
実世界シナリオにおいて、レコメンダシステムはユーザがまだ評価していないアイテムについて評価予測をするため、それらの未評価アイテムのレビューは利用できない。そのため、数式１の線形リグレッサーを未評価アイテムへ適用することができない。本発明はこの制約を克服するために第２の学習手順を提供し、埋め込みベースの知識ベース補完法からのアイデアを活用する。また、予測されたレビュー埋め込みh_(revu,i)が学習された数式１のリグレッションモデルの中で利用できるように、テスト期間中にレビュー埋め込みを推測できる仕組みを提供する。そのため、数式１の学習目的とともに、レビュー埋め込みがアイテム埋め込みとユーザ埋め込みとの差に近くなるように埋め込み空間をモデル化しようとする第２の目的学習を備える。第２の目的は、ユーザ埋め込み及びレビュー埋め込みとアイテム埋め込みとの距離を短くさせる第２の項を含むことにより形式化することができる。
【数３】
2019049980.tif 000005
ここで、e_u及びe_iはそれぞれ、ユーザ埋め込み及びアイテム埋め込みを表す。組み合わされた数式１と数式３のモデルは２ステップ処理を表す：まず、アイテム埋め込みとユーザ埋め込みの差（数式３）を演算することによりレビュー埋め込みの近似を決定し、次に、この近似を（wとバイアス項b_(u,i)によりパラメータ化された）数式１のリグレッションモデルへの入力として用いる。
【００２３】
数式１及び数式３を一緒に最適化することによりe_u=h_(revu,i)=e_i=0 ∀ u,iのような些末な解決法は回避される。これは、そのような劣った解決法は数式１に表された第１の学習目的の成果を劣悪なものにしてしまうからである。
【００２４】
数式１及び数式３を組み合わせることにより以下の最小化が行われる：
【数４】
2019049980.tif 000006
ここで、λは数式３に形式化されたモデル仮定による再構築損失に重み付けする項であり、Θはパラメータw, e, v, h_0∈R^k及びバイアス項bに対応する。数式４における最小化は、h_(revu,i)=e_i-e_uを演算することによりトレーニング中に目に見えないペア(u,i)のレビュー埋め込みh_(revu,i)を予測することを可能にする。学習された線形リグレッサーw^Tの重を用いて、新しいペア(u,i)の評価の予測p_(u,i)は以下のようになる。
【数５】
2019049980.tif 000007
【００２５】
上記の２つの学習手順のパラメータは逆伝搬法により一緒に学習することができる。その後、ユーザ、予測された評価、及びアイテムを関連付けることにより新しいタプルを作成してもよい。
【００２６】
本発明の実施形態は、３つ組とそれに関連する評価の履歴に基づいて、すなわち、実際の商品について実際のユーザにより提供された実際のレビューと評価の履歴に基づいてユーザ、商品、及びレビューの表現を生成する。これらの表現は評価予測作業に関して有意味であり、トレーニング中に目に見えないペア（ユーザ、商品）についてレビュー表現を近似するのを可能にするモデル仮定に従うものである。
【００２７】
図２は本発明の実施形態によるレコメンダシステムアーキテクチャ２００である。レコメンダシステムアーキテクチャ２００は、ニューラルネットワーク（ＮＮ）部２１２、データベース２１６、及びインターフェース２１０を含む。
【００２８】
データベース２１６には、ユーザ２０２が商品２０４について評価しレビューを書く、すなわち、商品２０４について１つ又は複数の評価２０６及びレビュー２０８を提供すると定期的に更新される３つ組 及びそれに関連する評価 の組が含まれる。それらの３つ組は実際の商品について実際のユーザにより提供された実際のレビュー及び評価から生成されたデータオブジェクトである。新しい３つ組とそれに関連する評価はデータベース２１６に既に存在する情報とともにＮＮ部２１２に送られＮＮ部２１２の重みが調整／再調整される。「ＮＮ部２１２の重み」とは、ユーザ、アイテム、及びレビューの潜在表現、並びに数式１及び数式３に示されるリグレッションモデルのパラメータを意味する。ＮＮ部２１２はモデルの全パラメータを集める。
【００２９】
インターフェース２１０は、ユーザ２０２が小売業者のウェブページに導入している新しいレビュー＋評価情報２０６、２０８の記録をとり、この情報をデータベース２１６に転送する。インターフェース２１０はまた、小売業者のウェブページ上のアクティブユーザがまだ評価していない商品についての評価予測をＮＮ部２１２を介して取得するために、それらのアクティブユーザの記録をとる。インターフェース２１０は予測された最も高い評価やスコアを持つ商品のレコメンデーション２１８をアクティブユーザに送る。インターフェース２１０は更に、ユーザが小売業者のウェブページを閲覧している間ユーザが関心のある商品のカテゴリーの記録をとってもよい。
【００３０】
ＮＮ部２１２はアクティブユーザの興味に合致するカテゴリの商品の評価予測を演算する。予測された評価はインターフェース２１０に送られる。ＮＮ部２１２は全てのユーザ、レビュー、及び商品を、埋め込み学習処理が２つの手順（上記の数式１及び数式３の学習目的）により駆動される低次元空間kに埋め込む。以後、ＮＮ部２１２が学習するユーザ、レビュー、及び商品の低次元表現を、交換可能に埋め込み表現又は潜在表現と呼ぶ。レビューの潜在表現は、その出力（予測された評価）が実際の評価（数式１を参照）に近くなくてはならないリグレッションモデルに送られる。図３は本発明の実施形態によるモデル仮定の視覚表現である。図３において、ユーザ及び商品の埋め込みが、商品の埋め込みがユーザの埋め込みに加えてレビューの埋め込み（数式３を参照）に近いどこかにあるように学習される。上記のように、レビューの埋め込みは、レビューRv_(u,i)に現れる単語埋め込みに適用される集合関数fの出力であってもよく、実施形態において、関数fは数式２に示されるような平均関数である。
【００３１】
これら２つの手順の背後にある動機は以下のようである：レビューはユーザがその商品に割り当てた評価と高い相関関係を有するが、レビューはテスト期間中は利用できない（システムはユーザがまだ評価していない商品について予測を行う）。従って、予測期間にレビューを推測する仕組みが必要である。第２の学習目的は、商品埋め込みとユーザ埋め込みとの差を演算することによりレビュー埋め込みの近似を得ることを可能にする。
【００３２】
本発明の実施形態はトレーニング中にレコメンデーションを提供するだけでなく、レビュー表現を近似してユーザが１つ又は複数の商品について書いたであろう仮のレビューを提供できるようにテスト中に用いることができる。仮のレビューを提供するために、インターフェース２１０はトレーニングセットから、近似されたレビュー埋め込みと全てのレビュー表現との距離を演算し、最も近い距離をユーザが当該商品について書くであろう仮のレビューとして保持してもよい。
【００３３】
ＮＮ部２１２を、ＮＮ部２１２の重み（すなわち、潜在表現及びリグレッションモデルのパラメータ）を再調整するためにインターフェース２１０により定期的に送信されるデータベース２１６に保存された３つ組と評価の組を用いてトレーニングしてもよい。リグレッションモデルの埋め込みと重みを、確率的勾配降下法（stochastic gradient descent: SGD）及び逆伝搬法を用いてランダムに初期化及びトレーニングしてもよい。
【００３４】
図４は本発明の実施形態によるレコメンダシステムをデプロイするための概観システムアーキテクチャ４００を示す。このレコメンダシステムは、データベースサーバ４０２が異なるアイテム及びユーザに関する情報（例えば、画像、テキストレビュー、ユーザデータ）を保存するプラットフォーム上で動作する。インターネットに接続されたフロントエンドサーバ４０４は、オーナー／管理者又は顧客とレコメンダシステムとのインターフェースである。バックエンドサーバ４０６は、トレーニングされたニューラルネットワークの全てのパラメータを含み、レコメンデーションを生成する動作の実行を担当する。使用法の例として、オーナー４１０は、フロントエンドサーバ４０４にリモート接続することにより新しい商品をレコメンダシステムに追加することができる。フロントエンドサーバ４０４は、それらの新しい商品に関する情報の初期化及びデータベースサーバ４０２への送信、又はバックエンドサーバ内のレコメンダシステム４０６の更新を担当する。一方、ユーザ４０８はフロントエンドサーバ４０４を介してプラットフォームにアクセスし、プラットフォームとの通常の対話を実行する。フロントエンドサーバは自動的に顧客４０８からデータフォームを収集し、バックエンドサーバ４０６にコンタクトしてレコメンデーションを取得する。
【００３５】
上記のように、レコメンダシステムは概略システムアーキテクチャ４００の中にデプロイされる。一実施形態において、このレコメンダシステムはレコメンダシステムアーキテクチャ２００に基づくものであってもよい。バックエンドサーバ４０６はＮＮ部２１２に関連する関数を実行する。バックエンドサーバ４０６はレコメンデーションを決定するために用いられるパラメータと重みを保存する。フロントエンドサーバ４０４はインターフェース２１０に関連する関数を実行する。フロントエンドサーバ４０４はウェブサーバであってもよい。フロントエンドサーバ４０４は、１つ又は複数のネットワーク上でオーナー４１０、顧客４１４、データベースサーバ４０２、及びバックエンドサーバ４０６と通信する１つ又は複数のアプリケーションプログラミングインターフェース（application programming interfaces:APIs）を備えてもよい。データベースサーバ４０２はデータベース２１６を表す。
【００３６】
データベースサーバ４０２、バックエンドサーバ４０６、及びフロントエンドサーバ４０４はそれぞれ、１つ又は複数のプロセッサ、メモリ、ネットワークインターフェース、出力装置、入力装置、及び／又は記憶装置を含む演算装置である。各プロセッサはグラフィカル処理装置及び／又は中央処理装置を含んでいてもよい。メモリ及び／又は記憶装置は、ランダムアクセスメモリ（ＲＡＭ）、ハードディスク、フラッシュメモリ、及び／又はソリッドステートドライブを含んでいてもよい。ネットワークインターフェースは、例えば、Ｗｉ−Ｆｉ、イーサネット、ブルートゥースをサポートする有線又は無線のネットワークインターフェースカードを含んでいてもよい。出力装置はディスプレイやスピーカーなどの視聴覚装置を含んでいてもよい。入力装置は、例えば、キーボード、カメラ、マイクを含んでいてもよい。演算装置の例として、デスクトップコンピュータ、ラップトップコンピュータ、サーバ、コンピューティングクラスタがあげられる。一部の実施形態において、ＮＮ部２１２は、ニューラルネットワーク学習スピードを高めるためにフィールドプログラマブルゲートアレイ（field programmable gate arrays: FPGAs）などの特殊なハードウェアを活用するバックエンドサーバ４０６上に実装されてもよい。
【００３７】
図５は本発明の一実施形態によるユーザにレコメンデーションを提供する処理５００を示す。処理５００は、実質的にレコメンダシステムアーキテクチャ２００を有するレコメンダシステムにより実行されてもよい。ステップ５０２において、インターフェース２１０はデータ構造３つ組とデータ構造３つ組に関連する実際の評価を取得する。インターフェース２１０はデータ構造３つ組とデータ構造３つ組に関連する評価をデータベース２１６に保存してもよい。
【００３８】
ステップ５０４において、ＮＮ部２１２は保存されたデータ構造３つ組及び関連する実際の評価を用いて機械学習モデルをトレーニングする。機械学習のトレーニングは、保存されたデータ構造３つ組とそれらに関連する評価に基づいてユーザ、商品、及びレビューの表現を生成することを含む。ＮＮ部２１２はまず数式４の損失を演算し、その後勾配を逆伝搬してモデルのパラメータ（ユーザ、アイテム、及びレビューの潜在表現、更にリグレッションモデルのパラメータ）を更新する。勾配はモデルのパラメータのそれぞれについて演算する。
【００３９】
ステップ５０６において、ＮＮ部２１２は学習したユーザ、商品、及びレビューの表現を用いてまずレビュー埋め込みを予測し次に予測されたレビュー埋め込みに関連する評価を予測する。ＮＮ部２１２は、アイテム表現とユーザ表現とのベクトル差を演算することによりレビュー埋め込みを近似する。その後ＮＮ部２１２は近似されたレビュー埋め込みをリグレッションモデルへの入力特徴ベクトルとして用いることにより評価を予測する。
【００４０】
ステップ508において、インターフェース210は予測された評価に基づいてユーザへのレコメンデーションを作成する。
【００４１】
本発明の実施形態によるレコメンダシステム及び方法は、センチメント分析とマルチリレーショナルグラフ補完を含んでもよい。アイテムとユーザの潜在表現のドット積及びいくつかのバイアス項がアイテムの特徴に対するユーザの総合的関心を捕捉する特異値分解（Singular Value Decomposition: SVD）は、協調フィルタリングのための標準的な方法である。ユーザとアイテムの潜在表現の対話からのモデル評価に関して多数の研究があるが、それらの多くはレビューウェブサイト上に存在するフィードバックを無視するものである。レビューテキストから抽出される特徴はレコメンダシステムの性能を向上させる上で役立つことが証明されている。ヒドゥンファクターズアズトピックス（Hidden Factors as Topics: ＨＦＴ）はＳＶＤを採用して潜在的ディリクレ配分法（Latent Dirichlet Allocation: LDA）とともに評価を適応させ、アイテム潜在表現をアイテム毎に書かれた表現に基づくトピックの組み合わせとしてモデル化するものである。これにより、アイテム表現が学習されてユーザの評価、更にディリクレ配分から引き出されると仮定されるトピック配分が正確にモデル化される。同様に、ＬＤＡを適用してユーザ表現を各ユーザにより書かれたレビューに基づくトピックの組み合わせとしてモデル化するＨＦＴ（ユーザ）と呼ばれるＨＦＴの第２のバージョンが提案されている。
【００４２】
近年、センチメント分析などのテキスト分類に関するディープラーニングアーキテクチャが相次いで提案されてきた。この種の研究とともに、S. Seo et al., “Representation learning of users and items for review rating prediction using attention-based convolutional neural network,” MLRec （2017）によるAttn+CNNなどのCNNベースのレコメンダシステムが提案されてきた。これらの研究では、評価についての予測はユーザ及びアイテムの埋め込みに適用される何らかの動作の出力であり、その後各ユーザにより書かれたテキスト及び各アイテムについて書かれたテキストの集合に適用されるディープアーキテクチャを介して学習される。
【００４３】
過去数年間、特定のリンクが真実である可能性を出力するスコアリング関数に基づいてナレッジベース内のミッシングリンクを推測する多数の埋め込みベースの方法が提案されてきた。その単純さと高性能により、Hなどの翻訳ベースのスコアリング関数について多すぎるほどの研究がなされてきた。Ruining, “Translation-based recommendation,” ACM （2017）は大規模順次予測方法を提案している：この方法はアイテムを、ユーザがアイテムシーケンス上で動作する翻訳ベクトルとしてモデル化される「遷移空間」に埋め込むものであり、順次ベイズランク付け問題として形式化されている。
【００４４】
本発明の一部の実施形態によれば、センチメント分析を実行してレビューテキストに関連する評価を予測するとともに埋め込み空間を、予測期間にレビュー表現をユーザ埋め込みとアイテム埋め込みから近似するのを可能にする特定のモデル仮定（例えば数式３）に従うマルチリレーショナルグラフとしてモデル化してもよい。
【００４５】
本発明の一実施形態によるレコメンダシステム及び方法を、行列因数分解に基づくいくつかの方法及び評価予測作業においてテキストを考慮するいくつかの最近のモデルと比較した。簡素化するため、本発明の当該実施形態によるレコメンダシステム及び方法の実施形態を以下の説明においてＴＲＡＮＳＲＥＶと呼ぶ。
【００４６】
本発明の一実施形態によるレコメンダシステム及び方法をテストするにあたり、一般に利用可能な比較用データセットを取得した。この一般に利用可能なデータセットにはユーザのレビュー及び評価の情報が含まれていた。最初のベンチマークデータセットはYelp Business Rating Prediction Challengeからのもので、フェニックス（米国）にあるレストランについてのレビューを含んでいた。第２のベンチマークデータセットはAmazon(R)の商品データであり、１９９６年５月から２０１４年７月までのAmazon(R)からのレビュー及びメタデータを含んでいた。具体的には、データセットの中の（各ユーザとアイテムについて少なくとも５レビューを含む）５コアバージョンを使用した。これは、そのようなデータへのアクセスにリクエストが必要なかったからである。商品カテゴリーが２４あり、そのうちの１８を選択した。１８のデータセットはそれぞれ独立して扱った。両ベンチマークデータセットにおける評価は１から５までの整数だった。
【００４７】
各データセットをランダムにトレーニング部分、検証部分、及びテスト部分にそれぞれ８０％、１０％、及び１０％の割合で分割した。検証及びテスト部分からトレーニング部分の一部ではない商品の評価を表す３つ組（及びそれに対応する評価）を除外した。トレーニング中に見られなかったユーザによる評価を表す３つ組（及びそれに対応する評価）も除外した。
【００４８】
各データセットには同一の前処理パイプラインが続いた。まず、標準的なトークナイザーをデータセットのテキストの集合に適用し、その後検討中のデータセットの少なくとも０．１％に現れる単語を保持した。Amazon(R)のデータセットの場合、ユーザによる完全なレビューとショートサマリー（約３０語以下）が利用可能であった。本実施形態ではショートサマリーを用いた。これは、短い文書をそのセンチメントに分類する場合、ショートサマリーを用いる方がそれより長いものを用いる場合より作業がはるかに容易になるからである。Yelpの場合、完全なレビューだけが利用可能だった。そのため、最初の２００語に切り捨て、上記のような前処理パイプラインを切り捨て後のテキストの集合に適用した。前処理されたデータセットの一部の統計データが図６に示される表にまとめられている。
【００４９】
ベースラインの組は、２つの主要なグループ、すなわち、ＳＶＤや非負値行列因数分解（Non-negative Matrix Factorization: NMF）などの行列因数分解ベースの方法、及びＨＦＴやＡｔｔｎ＋ＣＮＮなどの評価予測のためにレビューテキストを用いるモデルに分類することができる。単純にトレーニングセットにおける平均的評価を予測として用いる、素朴な方法「Ｏｆｆｓｅｔ」の性能も結果の例の中に示されている。
【００５０】
比較及び評価のために、全方法について潜在次元kを１６に固定した。それでも、ＴＲＡＮＳＲＥＶは様々な次元数に対して強固であり、kを変化させても性能における有意な差が見られなかった。ＳＶＤ及びＮＭＦについては、ｐｙｔｈｏｎパッケージであるＳｕｒＰＲＩＳＥを、バニラ確率的勾配降下法によって実行される最適化と値[0.001,0.005,0.01,0.05,0.1]及び[0.00001,0.00005,0.0001,0.0005,0.001]から選ばれた検証セット上の学習率及び規則化項とともに用いた。ＨＦＴについては、規則化項を値[0.001,0.01,0.1,1,10,50]から検証した。
【００５１】
ＴＲＡＮＳＲＥＶについては、λを[0.1,0.25,0.5,1]で検証し、オプチマイザの学習率及び規則化項μをＳＶＤ及びＮＭＦの場合と同じ値の組から検証した。ＳＶＤ及びＮＭＦと厳正に比較するため、最適化にバニラ確率的勾配降下法を用いた。一部の実施形態において、より高性能のオプチマイザ、例えば、ルート平均二乗伝播法（Root Mean Square Propagation: RMSProp）やD. Kingma et al., “Adam: A method for stochastic optimization,” arXiv:1412.6980 (2014)によるＡｄａｍ（Ａｄａｐｔｉｖｅ  Ｍｏｍｅｎｔ  Ｅｓｔｉｍａｔｉｏｎ：適応モーメント推定法）  を用いてもよい。ＨＦＴのパラメータは、デフォルトの設定、すなわち、２，５００回繰り返し起動し５０回毎に検証する省メモリ法ＢＦＧＳ（Ｌ−ＢＦＧＳ）を用いて適合させた。規則化項の適切な検証は評価された全ての方法において最高の性能を得るのに有益だった。
【００５２】
単一の学習エポックを全ての３つ組及びそれに関連する評価に対して繰り返した。ＳＶＤ、ＮＭＦ、及びＴＲＡＮＳＲＥＶを最大５００エポック起動し、１０エポック毎に検証した。検証指標が５０エポックで改善しない場合にトレーニングを停止する早期停止基準を実行してもよい。全ての方法を以下に規定される平均二乗誤差（ＭＳＥ）に従って検証した。
【数６】
2019049980.tif 000008
ここで、W={(u,i)} はユーザ−アイテムのペアの検証又はテストセットである。
【００５３】
Attn+CNNのＭＳＥを、データセットの８０％、１０％、及び１０％がそれぞれトレーニング部分、検証部分、及びテスト部分に分割されるS. Seo他から得た。ＴＲＡＮＳＲＥＶはTheanoラッパーのKerasを用いて実装した。全ての実験を、128GB RAM（ランダムアクセスメモリ）、単一の2.8 GHz CPU（中央処理装置）、及びNvidia(R)Titan X GPU（グラフィックス処理装置）を備えたコモディティハードウェア上で行った。
【００５４】
図７では、ユーザ、アイテム、及び単語の表現の様々な次元数に対するＴＲＡＮＳＲＥＶの不変性を示すために4つのデータセット−Baby、Digital Music、Office、及びTools & Home Improvement−が用いられている。kを４から６４に増加させたときのＭＳＥ値が図７の表に示されている。図７に示された不変性は、潜在ファクターモデルはファクターモデルの次元数を増加すると最高の正確さを達成するという定着した考え方に反するものである。
【００５５】
Amazonの１８のデータセット及びYelpの１つのデータセットについての結果が、最高の性能が太字で示された図８の表に列挙されている。ＴＲＡＮＳＲＥＶは検討された１９のデータセットのうちの１８で最高の性能を達成した。ＴＲＡＮＳＲＥＶとＨＦＴはともにレビューテキストを考慮しない方法の性能を体系的に上回った。ＴＲＡＮＳＲＥＶは検討されたベンチマークデータセットについてＨＦＴの性能に匹敵するかしばしば上回った。Attn+CNNはAmazonのデータセットの大部分において行列因数分解法（ＳＶＤ）、又はＨＦＴ、又は両方より性能が劣ることを示し、一方、ＴＲＡＮＳＲＥＶは１つ以外の全てのカテゴリーにおいてＨＦＴより優れた性能を示した。
【００５６】
ＴＲＡＮＳＲＥＶにより学習されたレビュー埋め込みは当該レビューに関連する評価に関して有意義であることを示した。従って、レビュー埋め込みは当該レビューに含まれる単語の平均埋め込みであると言える。その結果、単語埋め込みは評価と相関関係にあった。単語と評価との相関関係を可視化するために、まず、各単語にその単語を含むレビューの平均評価であるスコアを割り当て、次に、t-SNE（t-Distributed Stochastic Neighbor Embedding：t分布型確率的近傍埋め込み法）をＴＲＡＮＳＲＥＶにより学習された１６次元単語埋め込みに適用することにより各単語の２次元表現を学習した。図１０は、対応するスコアが右側に示された、Babyデータセットに関して学習された単語埋め込みの２次元表現を示す。
【００５７】
本発明を図面及び上記説明において図示及び詳述したが、それらの図示や説明は一例又は典型例であり限定するものではないと解釈すべきである。以下の請求の範囲内で当業者により変更及び修正が可能であることは理解されよう。特に、本発明は上記及び下記の様々な実施形態の特徴の任意の組み合わせを有する更なる実施形態を含む。また、本発明を特徴づける本明細書の記述は本発明の一実施形態を意味し、必ずしも全ての実施形態を意味するものではない。
【００５８】
請求項で使われる用語は、上記の記述と一致する最も広い合理的な解釈で解釈すべきである。例えば、構成要素を導入する際の冠詞「a」又は「the」の使用は複数の構成要素を除外するものと解釈すべきではない。同様に、「又は」の記載は、「A又はB」の記載がAとBのいずれかのみを意図することが文脈又は前述から明らかでない限り「A及びB」を除外しないように、包括的なものと解釈すべきである。また、「A、B、及びCのうちの少なくとも１つ」の記載は、A、B、及びCがカテゴリーその他として関連しているかどうかにかかわらず、A、B、及びCからなる構成要素の群のうちの１つ又は複数と解釈すべきであり、列挙した構成要素A、B、及びCのそれぞれの少なくとも１つを必要とすると解釈すべきではない。更に、「A、B、及び／又はC」若しくは「A、B、又はCのうちの少なくとも１つ」は、列挙された構成要素のうちの任意の単一の実体、例えば、A、列挙された構成要素のうちの任意のサブセット、例えば、A及びB、若しくは列挙された構成要素A、B、及びCの全体を含むと解釈すべきである。
【図１】
2019049980.tif 000009
【図２】
2019049980.tif 000010
【図３】
2019049980.tif 000011
【図４】
2019049980.tif 000012
【図５】
2019049980.tif 000013
【図６】
2019049980.tif 000014
【図７】
2019049980.tif 000015
【図８】
2019049980.tif 000016
【図９】
2019049980.tif 000017
【図１０】
2019049980.tif 000018
【外国語明細書】
2019049980000001.pdf