(57)【要約】      （修正有）【課題】知識グラフに基づいてユーザのためのレコメンデーションを生成する方法及びシステムを提供する。【解決手段】小売りシステムにおいて商品レコメンデーションを生成する方法では、複数のエンティティと複数のエンティティの属性を含むデータセットを収集する。複数のエンティティ間の関係性を生成する。複数のエンティティ、属性、および関係性を知識グラフに格納する。知識グラフに格納される複数のエンティティ、属性、および関係性の表現を学習する。新たなエンティティおよび新たなエンティティの属性のゼロショット学習を実行する。新たなエンティティおよび新たなエンティティの属性を知識グラフに格納する。知識グラフに基づいてユーザのためのレコメンデーションを生成する。【選択図】図５
2019125364.tif 000002
【特許請求の範囲】
【請求項１】
複数のエンティティと前記複数のエンティティの属性を含むデータセットを収集し、
前記複数のエンティティ間の関係性を生成し、
前記複数のエンティティ、前記属性、および前記関係性を知識グラフに格納し、
前記知識グラフに格納される前記複数のエンティティ、前記属性、および前記関係性の表現を学習し、
新たなエンティティおよび前記新たなエンティティの属性のゼロショット学習を実行し、
前記新たなエンティティおよび前記新たなエンティティの前記属性を前記知識グラフに格納し、
前記知識グラフに基づいてユーザのためのレコメンデーションを生成する、
小売りシステムにおいて商品レコメンデーションを生成する方法。
【請求項２】
前記ゼロショット学習を実行することにより、前記新たなエンティティおよび前記複数のエンティティの間の関係性を生成する、ことを含む請求項１の方法。
【請求項３】
前記エンティティが少なくともユーザと商品を含む、請求項１の方法。
【請求項４】
前記属性がマルチモーダルデータを含む、請求項１の方法。
【請求項５】
前記マルチモーダルデータが少なくともテキスト、画像、および音声クリップのいずれかを含む、請求項４の方法。
【請求項６】
前記ユーザのためのレコメンデーションを生成する際に、前記知識グラフに基づいて前記ユーザのための前記レコメンデーションを自動的に生成する、
ことを含む、請求項１の方法。
【請求項７】
前記新たなエンティティを含む前記知識グラフに格納される前記複数のエンティティ、前記属性、および前記関係性の第２の表現を学習する、
ことをさらに含む請求項１の方法。
【請求項８】
前記ユーザの顧客プロファイルを格納する、ことを含む請求項１の方法。
【請求項９】
前記知識グラフに基づいてユーザのためのレコメンデーションを生成する際に、前記ユーザに関連付けられている買い物かごを分析する、
ことを含む請求項１の方法。
【請求項１０】
前記ユーザのためのレコメンデーションを生成する際に、前記レコメンデーションを前記ユーザのデバイスに送信する、
ことを含む請求項１の方法。
【請求項１１】
複数のエンティティと前記複数のエンティティの属性を含むデータセットを収集し、
前記複数のエンティティ間の関係性を生成し、
前記複数のエンティティ、前記属性、および前記関係性を知識グラフに格納し、
前記知識グラフに格納される前記複数のエンティティ、前記属性、および前記関係性の表現を学習し、
新たなエンティティおよび前記新たなエンティティの属性のゼロショット学習を実行し、
前記新たなエンティティおよび前記新たなエンティティの前記属性を前記知識グラフに格納し、
前記知識グラフに基づいてユーザのためのレコメンデーションを生成する、
処理を実行する１つまたは複数のプロセッサを含む、
小売りシステムにおいて商品レコメンデーションを生成するレコメンデーションシステム。
【請求項１２】
前記新たなエンティティおよび前記複数のエンティティの間の関係性を生成する、ことをさらに含む請求項１１のレコメンデーションシステム。
【請求項１３】
前記エンティティが少なくともユーザと商品を含む、ことをさらに含む請求項１１のレコメンデーションシステム。
【請求項１４】
前記ユーザのためのレコメンデーションを生成する際に、前記知識グラフに基づいて前記ユーザのための前記レコメンデーションを自動的に生成する、
ことを含む請求項１１のレコメンデーションシステム。
【請求項１５】
前記知識グラフに基づいてユーザのためのレコメンデーションを生成する際に、前記ユーザに関連付けられている買い物かごを分析する、
ことを含む請求項１１のレコメンデーションシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エンティティ間の論理ベース推論およびゼロショット学習をサポートするマルチモーダルな知識グラフ表現に基づいて商品レコメンデーションを生成するための方法およびシステムに関する。
【背景技術】
【０００２】
従来のレコメンデーションシステムでは、ユーザによる商品評価を使用する。例えば、ユーザが商品を購入すると、ユーザはその商品の評価をすることができる。ユーザは、所有している商品または過去に使用したことのある商品についても評価できる。従来のレコメンデーションシステムでは、商品評価に対して様々な協調フィルタリングまたは行列因数分解アルゴリズムを適用する。従来のレコメンデーションシステムを学習する際、エンティティ（例えば、商品）を用意し、そのエンティティについて質問をする必要がある。そのため、学習の対象となっていない新しいエンティティについての質問に答えることができない。
【０００３】
また、従来のレコメンデーションシステムはユーザプロファイルを作成する。ユーザプロファイルは、多くの場合、ユーザの属性の類似性またはグループ間の異なる統計によってユーザをクラスタ化することによって作成する。従来のレコメンデーションシステムは、例えば、ユーザが購入する商品の種類に基づいてユーザプロファイルを作成してもよい。
【０００４】
従来のレコメンデーションシステムは、ユーザによる商品評価とユーザのプロファイル情報とを組み合わせることによって、そのユーザに対して商品の簡単なレコメンデーションを提供することができる。従来のシステムが推薦できる商品は、従来のシステムが学習されたものに限定される。従来のシステムが新しい商品を推薦できるようになるには、その新しい商品に対する学習プロセスを経る必要がある。
【発明の概要】
【０００５】
一実施形態によれば、小売りシステムにおいて商品レコメンデーションを生成する方法を提供する。かかる方法では、複数のエンティティと前記複数のエンティティの属性を含むデータセットを収集する。複数のエンティティ間の関係性を生成する。複数のエンティティ、属性、および関係性を知識グラフに格納する。知識グラフに格納される複数のエンティティ、属性、および関係性の表現を学習する。新たなエンティティおよび新たなエンティティの属性のゼロショット学習を実行する。新たなエンティティおよび新たなエンティティの属性を知識グラフに格納する。知識グラフに基づいてユーザのためのレコメンデーションを生成する。
【０００６】
別の実施形態において、１つまたは複数のプロセッサを含むレコメンデーションシステムは、前記１つまたは複数のプロセッサが複数のステップを実行する。複数のエンティティと前記複数のエンティティの属性を含むデータセットを収集する。複数のエンティティ間の関係性を生成する。複数のエンティティ、属性、および関係性を知識グラフに格納する。知識グラフに格納される複数のエンティティ、属性、および関係性の表現を学習する。新たなエンティティおよび新たなエンティティの属性のゼロショット学習を実行する。新たなエンティティおよび新たなエンティティの属性を知識グラフに格納する。知識グラフに基づいてユーザのためのレコメンデーションを生成する。
【図面の簡単な説明】
【０００７】
本発明は、以下の例示的な図面においてさらに詳細に説明される。本発明は、例示的な実施形態に限定されない。本明細書において説明および／または図示されたすべての特徴は、本発明の実施形態において単独で使用されてもよく、または異なる組み合わせで組み合わせられてもよい。本発明の様々な実施形態の特徴および利点は、添付の図面の以下の詳細な説明によって、以下の図の例示とともに明らかになるであろう。
【図１】一実施形態による商品レコメンデーションシステムのシステム構成を示す。
【図２】一実施形態による複数のデータモダリティを含む学習プロセスのためのシステムを示す。
【図３】一実施形態によるレコメンデーションシステムにおける学習プロセスを実施するシステムを示す。
【図４】一実施形態による小売りシステムにおける商品レコメンデーションシステムのシステム構成を示す。
【図５】一実施形態による学習プロセスを示すフロー図である。
【図６】一実施形態による処理システムのブロック図である。
【発明を実施するための形態】
【０００８】
コンピュータ化されたレコメンデーションシステムの固有の問題として、新しい商品を推薦するためにレコメンデーションシステムを学習することがあげられるが、この問題は、本発明の実施形態によって解決される。本実施形態による知識グラフにおけるエンティティは、商品、ユーザ、または記号情報のいずれでもよい。知識グラフ内の関係性とは、エンティティ間のリンクである。本システムは、「埋め込み」と呼ばれる各エンティティのベクトル表示を生成する。このベクトル表示は、ターゲット知識グラフに適合し、「条件pの場合、qである」という形で事前定義された論理規則を満たしている。具体例としては、「ユーザＸがナッツに対してアレルギーを持っており、商品Pにナッツが含まれている場合、ユーザXは商品Pに対してアレルギーを持っている」がある。さらに、従来のレコメンデーションシステムでは新しい商品を推薦するには学習を必要とするが、本発明の実施形態によるレコメンデーションシステムでは、ゼロショット学習を用いて新商品を推薦することができる。
【０００９】
本発明の一実施形態において、本システムがゼロショット学習を実行することを可能にする方法を提供する。これにより、本システムは新しいエンティティに関する問い合わせに応答することができる。ゼロショット学習を適用することで、本システムは、問い合わせに応答できるようになる前に新しいエンティティに対して学習プロセスを実行する必要がなくなる。画像、テキスト、およびその他のデータモダリティを利用することによって、商品の形状やデザインなど、エンティティについての知覚的情報が増える。様々なデータモダリティを利用することによって、本システムは学習プロセスまたは訓練に含まれていなかったエンティティについて推論することもできる。
【００１０】
さらに、本システムは、各種エンティティ間できめ細かい推論ができる。一連の規則およびエンティティの学習された埋め込み表現を与えられると、本システムはエンティティ間の新しいリンクおよび論理規則を推論することができる。例えば、（ユーザX、アレルギーがある、ナッツ）の三つ組と（シリアル、含む、ナッツ）の三つ組が与えられた場合、本システムは新しいルールとして（ユーザX、アレルギーがある、シリアル）を推論することができる。
【００１１】
いくつかの実施形態によれば、本システムはレコメンデーションシステムにおいて使用される。本システムは、エンティティ間の質問に答えることによって商品のランク付けを行ってもよい。顧客は、この商品ランキングを利用して、興味のある商品を探すことができる。
【００１２】
商品の推薦は、顧客が買い物をする度に顧客の買い物かごに基づいて行うか、または顧客からの直接的なクエリに応じて行うことができる。また、商品の所有者が、商品の知名度や順位を向上させるために、特定の商品やユーザのグループに対して行う様々な変更によって、商品ランキングも直接影響を受けることがある。本システムは、例えば、ユーザに推薦する商品を順位付けしたリストをユーザに提供してもよい。小売り業者などの所有者は、レコメンデーションシステム内の商品属性を変更して商品の順位を上げてもよい。
【００１３】
実施形態において、商品やユーザなどのエンティティからの複数のデータモダリティを組み合わせて知識グラフを構築するための方法およびシステムを提供する。知識グラフには、エンティティ間の様々な関係性が保存されている。本システムは、事前定義された一連の規則に基づいて論理的推論を行う。本システムは知識グラフのエンティティ間の新しいリンクを推論し、ゼロショット学習の環境で動作する。ゼロショット学習の環境において、本システムは新しいエンティティと既存のエンティティとの間のリンクを確立するが、このとき新しいエンティティに対して学習プロセスを実行する必要がない。
【００１４】
データモダリティとしては、例えば、画像などの知覚データ、数値的特徴（サイズ、価格、成分、商品の購買層に関するデータなど）、ならびにテキストによる説明および評価などがあげられる。知覚データにより、本システムは知識グラフにデザイン的特徴を含めることができる。テキストによる説明と評価は、商品を購入または評価した他のユーザの感想である。他の数値データおよびカテゴリデータを本システムに追加することにより、エンティティの特徴を取り入れることができる。本システムに提供される、エンティティに関する追加情報としては、例えば、寸法、商品カテゴリ情報、およびその他のカテゴリデータがある。
【００１５】
図1は、一実施形態による商品推薦システム１００のシステム構成を示す。複数のデータソースが組み合わされて共通の埋め込み空間１０２に射影される。データソースには、ユーザ情報または顧客情報１０４が含まれる。顧客情報１０４には、性別、年齢、結婚歴、居住地、およびアレルギー、高血圧、糖尿病などの健康状態が含まれてもよい。他には、商品のテキストやタグなどの商品画像１０６およびテキスト情報１０８を含む商品情報を入力することもできる。顧客情報１０４はマージブロック１１０において処理される。マージブロック１１０は顧客情報１０４のベクトル表示を生成する。同様に、マージブロック１１２は商品情報１０６および１０８のベクトル表示を生成する。マージブロック１１０からのベクトル表示は、その後、埋め込みブロック１１４において処理される。同様に、マージブロック１１２からのベクトル表示は、その後、埋め込みブロック１１６において処理される。埋め込みブロック１１４および１１６の出力は、埋め込み空間１０２に統合される。図２は、マージブロックおよび埋め込みブロックの詳細を示す。
【００１６】
埋め込み空間１０２において、異なるエンティティを互いにリンクさせる様々な関係性が知識グラフとして符号化される。エンティティとは、システムへの各種入力である。例えば、エンティティには、ユーザ、ユーザの一群、商品、特定カテゴリの商品の一群、または記号的カテゴリ（つまり、抽象的な意味を持つカテゴリ、または属性では正確に表すことができないもののカテゴリ（例としては、有機食品）が含まれる。顧客および商品の複雑な関係性を符号化することが可能である。これらの関係性を実店舗または電子商取引の環境に適用することによって、個別の顧客に対して様々な商品を推薦することができる。
【００１７】
埋め込み空間１０２は、情報を符号化する疑似空間（潜在空間）内における点集合である。知識グラフは、エンティティ間の関係性を表すデータ構造である。例えば、（トマト、材料である、サラダ）および（シーザーソース、材料である、サラダ）はある知識グラフに含まれる三つ組である。さらに、トマト、様々なブランドのシーザーソースのボトル、サラダの画像を入手することもできる。次に、本システムは、知識グラフによって与えられる関係性が符号化されている埋め込み空間（または潜在空間）への射影を学習する。その後、本システムにトマトの新しい写真と「材料である」の関係性が入力されると、「サラダ」という回答を得られうる。
【００１８】
図示の実施形態では、顧客１１８に関する情報ならびにシリアルエンティティ１２０、牛乳エンティティ１２２、およびコーヒーエンティティ１２２などの商品エンティティが埋め込み空間１０２に示されている。顧客１１８とシリアルエンティティ１２０との間に関係名「頻繁に購入する」１２６が示されている。同様に、顧客１１８とナッツ１３０との間に関係名「アレルギー」１２８が示されている。特定のシリアル１３２はナッツ１３０に対して関係名「含まれない」１３４の関係性を持つ。本システムは、これらの関係性に基づいて、ユーザ１１８に対して適切なシリアルを推薦することができる。
【００１９】
同様に、図示の実施形態では、特定の牛乳１３６がラクトース１４０に対して関係名「含まれる」１３８の関係性を持つことが示されている。さらに、特定のコーヒー１４２がグルテン１４４に対して関係名「含まれない」１４２の関係性を持っている。埋め込み空間１０２では、シリアルエンティティ１２０と牛乳エンティティ１２２との間、およびコーヒーエンティティ１２４と牛乳エンティティ１２２との間において関係名「一緒に使う」１４６の関係性が保たれている。図１は説明のために限定された数の商品および関係性のみを例示しているが、埋め込み空間１０２には多数の商品エンティティおよび関係性が適用されている。
【００２０】
一実施形態によれば、本システムは、埋め込み空間１０２内のエンティティおよび関係性に基づいて、顧客が興味を示す可能性のある商品の順位を決めることができる。
【００２１】
いくつかの実施形態によれば、知識グラフの構造および一連の論理規則が事前定義されている。知識グラフは、エンティティの初期セットとエンティティ間の関係性で構成されている。論理規則は、（商品、含む、グルテン）および（ユーザ、過敏症、グルテン）などの条件、ならびに「商品を薦めない」などの結果を定義する。
【００２２】
知識グラフを作成した後、各種商品およびユーザを含む既存のデータセットを知識グラフに入力できる。本システムはデータセットのベクトル表示を生成する。
【００２３】
図２は、一実施形態による複数のデータモダリティを含む、学習プロセスのためのシステムを示す。学習プロセスでは、各種データモダリティから表現を学習し、埋め込み空間１０２などの共通の埋め込み空間に統合する。共通の埋め込み空間は、特定の知識グラフ内の２つの異なるエンティティに関する質問に答えるために最適化されている。
【００２４】
一実施形態によれば、本システムはタプルによって動作する。本システムは２つのインスタンス（すなわち２つの商品）のデータを収集する。各商品は埋め込み空間に射影される。埋め込みは、演算（すなわち、総和、連結、乗算など）によって統合され、得られたベクトルは、例えば、知識グラフにおけるベクトルの関係の誤分類を最小限に抑えるために用いられる。
【００２５】
マージブロックは、複数のデータモダリティを用いて特定の商品のベクトル表示を生成する。図２において、例えば「商品Ｘ」に対するマージブロック２０２が示されている。マージブロック２０２には、画像２０４、テキスト２０６、およびオーディオクリップ２０８などが入力される。図示された３つのモダリティはそれぞれニューラルネットワークにおいて処理され、中間埋め込み空間にキャストされる。例えば、画像２０４はニューラルネットワーク２１０において処理される。ニューラルネットワーク２１０は、ＶＧＧ、ＲｅｓＮｅｔ、ＬＳＴＭ、ＣＮＮ、および他のニューラルネットワークを含むことができる。同様に、テキスト２０６はニューラルネットワーク２１２において処理される。他の入力もまたニューラルネットワークにおいて処理されてもよい。
【００２６】
それぞれのニューラルネットワークは、それぞれの入力に対応するベクトル表示を生成する。ニューラルネットワーク２１０はベクトル２１４を生成し、ニューラルネットワーク２１２はベクトル２１６を生成する。同様に、追加のデータモダリティが入力されると、ニューラルネットワークを介して処理され、対応するベクトル表示が生成される。ベクトル表示を生成するプロセスを「埋め込み」と呼ぶ。
【００２７】
次に、入力源に対応するベクトルは、連結演算、点ごとの乗算演算、平均演算、差分演算、または他の演算などの演算（ＯＰ’）によって結合される。図示の実施形態によれば、ベクトル２１４とベクトル２１６はＯＰ’２１８によってベクトル（Vec_X）２２０に結合される。演算プロセスにおいて、各種ソースモダリティの情報をマージして、共通空間の埋め込みを生成する。
【００２８】
各種カテゴリおよびソースモダリティにも同様の手順が適用される。入力モダリティ２２２、２２４などはマージブロック２２８において処理され、ベクトル２３０が生成される。図示されたプロセスは、多数のデータモダリティおよびエンティティに適用できる。例えば、モダリティが異なる商品カテゴリ、ユーザ、その他のエンティティをマージブロックにおいて処理できる。２つの異なるエンティティインスタンスからの埋め込みは、演算（ＯＰ’）によってさらに結合される。いくつかの実施形態によれば、ベクトル２２０などのエンティティベクトルは、知識グラフに直接使われる。他の実施形態によれば、処理中のエンティティに応じて、ベクトル２２０および２３０などの２つ以上のエンティティベクトルをＯＰ’２３２などの演算で処理することによって、新しいベクトル２３４を生成できる。最後に、システム全体を最適化し、エンティティインスタンス間のリンクおよび知識グラフの関係に関するエラーを最小限に抑える。この最適化プロセス２３６は、共通の埋め込み空間が、知識グラフ内の２つ以上の異なるエンティティを含むクエリに応答することを可能にする。
【００２９】
最適化プロセスは、リンクの誤分類、関係に基づく埋め込み間の距離などを含むリンク誤りを最小限に抑える。一実施形態によれば、この機能は、運動量を伴う確率的勾配降下法を用いた逆伝播アルゴリズムによって実現することができる。
【００３０】
実施形態における本システムは、マルチモーダルデータに基づいてゼロショット学習を実行できる。これにより、商品と他のエンティティとの間に明示的な関係を構築する必要がない。エンティティの単一インスタンスを表すために複数のデータモダリティ（画像、音声など）を同時に使用することは、ゼロショット学習に役立つ。画像２０４、テキスト２０６、および音声２０８などの各種データモダリティにより、本システムはエンティティ間の関係性を含む知識グラフを生成できる。一実施形態によれば、知識グラフにより商品を顧客に推薦することができる。一連の論理規則を定義できる。エンティティの埋め込みに基づいて、本システムはエンティティ間の新しいリンクおよび論理規則を推論することができる。エンティティの知覚情報をマージすることにより、形状や外観などの重要な特徴を追加できる。また、図２に示した学習プロセスに含まれていない新しいエンティティとの関係性も推論できる。
【００３１】
図３は、顧客に推薦を行うための推薦プロセス３００を示す。レコメンデーションシステム３０８には、図２に示すような学習プロセスを適用することができる。本システムを初期化し、図２に示すように知識グラフを構築した後、実店舗または電子商取引の所有者３０２は、顧客３１２に対して推薦を行うために様々な操作を実行することができる。所有者３０２は商品３０４をシステム３０８に追加することができる。いくつかの実施形態によれば、商品３０４は、図２に示すような学習プロセスを用いて本システムに追加される。したがって、商品のデータモダリティを入力することによって、商品３０４を埋め込み空間に追加することができる。システム全体を再学習することなく、新しい商品３０４を追加することができる。
【００３２】
いくつかの実施形態によれば、所有者３０２は、システム３０８の動きに直接影響を与え、特定の商品がより高い推薦順位３１０となるようにすることができる。例えば、所有者３０２は、特定の商品３０４の特売３０６を表示することができる。特売は商品の推薦順位３１０に直接影響する。
【００３３】
いくつかの新しい商品および顧客３１２などの数人のユーザがシステム３０８に追加されると、システム３０８は、新しいデータで「微調整」することによって更新されて全体の性能が向上する。この調整プロセスには、例えば、図２に示す最適化プロセス２３６を適用できる。
【００３４】
一実施形態によれば、顧客３１２は、質問またはクエリ３１８をシステム３０８に直接送信することによってシステム３０８と交信する。システム３０８は、クエリ３１８に応答して、商品順位を含めたレコメンデーション３１０を提供する。レコメンデーション３１０を提供するときには、システム３０８は顧客３１２の顧客プロファイル３１４を使用する。いくつかの実施形態によれば、レコメンデーション３１０は、例えばウェブページまたはモバイルアプリケーションを介して顧客３１２に直接提供される。
【００３５】
別の実施形態によれば、システム３０８は、買い物かご３１６および顧客プロファイル３１４を利用して、レコメンデーション３１０を生成する。買い物かご３１６は、顧客３１２が購入する可能性のある商品のリストを提供する。例えば、顧客３１２は、レシピに含まれるいくつかの食材の情報を保存することができる。システム３０８は、埋め込み空間を用いることによって、顧客が特定のレシピに興味があることを認識し、そのレシピに関連するレコメンデーション３１０を提供する。さらに、システム３０８は、顧客プロファイル３１４により、顧客３１２の好みまたは要件に関する追加の情報を受け取ることができ、推薦順位３１０を生成するときにこの追加の情報を考慮に入れることができる。したがって、システム３０８は、レコメンデーション３１０を生成するときに買い物かご３１６および顧客プロファイル３１４を一緒に用いることができる。
【００３６】
図４は、一実施形態による小売りシステムにおける商品推薦システム４００のシステム構成を示す。データベースサーバ４１６には、様々な異なる商品およびユーザ４０４に関する情報が格納される。この情報には、画像、テキストによる評価、ユーザデータ、およびその他のデータが含まれる。フロントエンドサーバ４１４は、インターネットなどのネットワーク４０８に接続されている。ネットワーク４０８は、所有者４０２および／または顧客４０４と商品推薦システム４００とのインタフェースである。図示の実施形態によれば、所有者４０２はコンピュータ４０６を使用して、ネットワーク４０８を介してフロントエンドサーバ４１４に接続する。同様に、顧客４０４はコンピュータまたはモバイルデバイス４１０などのデバイスを使用して、ネットワークに無線接続または有線接続することによってフロントエンドサーバ４１４に接続できる。
【００３７】
顧客４０４はデバイス４１０を使用して、プロファイル情報の送信、買い物、商品の買い物かご４１２への追加し、または商品のウィッシュリストなどの別のリストへの追加を行うことができる。バックエンドサーバ４１８は、学習されたニューラルネットワークのパラメータを含み、顧客への商品のレコメンデーションやその他のレコメンデーションを生成する。
【００３８】
所有者４０２は、コンピュータ４０６などの装置を介してフロントエンドサーバ４１４にリモート接続することによって本システムに新しい商品を追加することができる。フロントエンドサーバ４１４は、ハイエンド情報（画像、テキスト、商品属性など）をフォーマットしてデータベースサーバ４１６に送信するか、あるいは順位変更因子の送信、モデルへの新しいエンティティの追加、またはモデルの微調整によってバックエンドサーバ４１８内のシステムを更新する。ユーザ４０４は、フロントエンドサーバ４１４を介して商品推薦システム４００にアクセスする。データベースサーバ４１６から情報を取得し、バックエンドサーバ４１８からレコメンデーションおよびその他のメタデータを取得することができる。いくつかの実施形態によれば、フロントエンドサーバ４１４は、顧客４０４および顧客の買い物かご４１２からデータを自動的に収集する。次にフロントエンドサーバ４１４はバックエンドサーバ４１８からレコメンデーションを取得し、取得したレコメンデーションを顧客のデバイス４１０に送信する。
【００３９】
図５は、一実施形態による学習プロセスを示すフロー図である。ステップ５０２において、エンティティの各種属性が収集される。これらの属性には、マルチモーダルデータおよびシステムの所有者または他のユーザによって提供される情報などの情報が含まれる。エンティティとは、システムへの各種入力である。例えば、エンティティには、ユーザ、ユーザの一群、商品、または特定のカテゴリの商品の一群が含まれる。このようにして、商品とユーザおよびそれらの属性などのエンティティのデータセットが収集される。
【００４０】
ステップ５０４において、本システムは知識グラフを生成する。知識グラフには各種エンティティに関する情報が格納される。本システムは知識グラフ内のエンティティ間の関係性を決定する。知識グラフは、異なるエンティティを互いにリンクする様々な関係性を符号化している。例えば、顧客と商品との間の複雑な関係性を符号化することが可能である。
【００４１】
ステップ５０６において、本システムは知識グラフの表現を学習する。本システムは、知識グラフ内のエンティティ、関係性、および属性の表現を学習する。知識グラフの表現とは、学習されることの射影である。射影とは、画像または属性をベクトル（埋め込み）に変換することである。知識グラフは、情報を関係付けるステートメントを含むデータ構造である。ステートメントの例としては、（トマト、材料である、サラダ）、（レタス、材料である、サラダ）、（オリーブ、材料である、サラダ）があげられる。したがって、本システムは、データ（すなわち、トマト、レタス、オリーブなどの画像）に基づいて射影を学習するが、この射影は、知識グラフの条件を満たす埋め込み空間にデータをマッピングする。後にキュウリの画像が入力されると、本システムは、学習において三つ組（キュウリ、材料である、サラダ）が知識グラフの一部でなかったとしても、キュウリの調理法を判断できる。キュウリは野菜なので、本システムはキュウリがサラダの材料であることを推論することができる。
【００４２】
ステップ５０８において、システムはレコメンデーションを生成する。一実施形態によれば、レコメンデーションは１人の顧客に対するものである。レコメンデーションは、知識グラフおよび知識グラフ内のエンティティ間の関係性に基づいている。
【００４３】
図６は、一実施形態による処理システムのブロック図である。この処理は、上記の推薦システム、サーバ、およびユーザのデバイスを実装するために実行することができる。本処理システムは計算装置の中央処理装置（ＣＰＵ）などのプロセッサ６０４を含む。プロセッサ６０４は、上述の機能および方法を実行するためのシステムの実施形態を構成するコンピュータ実行可能命令を実行する。実施形態によれば、コンピュータ実行可能命令は、ローカルに格納され、例えば、ハードドライブまたはフラッシュドライブであるストレージ６１０などのコンピュータ可読媒体からアクセスされる。読み取り専用メモリ（ＲＯＭ）６０６は、プロセッサ６０４を初期化するためのコンピュータ実行可能命令を格納し、ランダムアクセスメモリ（ＲＡＭ）６０８は、プロセッサ６０４によって実行される命令を読み込み処理するためのメインメモリである。ネットワークインターフェース６１２は、有線ネットワークまたはセルラーネットワーク、およびローカルエリアネットワークまたはインターネットなどのワイドエリアネットワークに接続することができる。
【００４４】
本明細書で引用した刊行物、特許出願、および特許を含むすべての参考文献は、あたかも各参考文献が個別におよび具体的に参照により組み込まれることが示され、その全体が本明細書に記載されるのと同程度に参照により本明細書に組み込まれる。
【００４５】
本発明は、図面および前述の説明において詳細に図示され説明されてきたが、これらの図示および説明は、例示的または代表的であり、限定的ではないとみなされるべきである。本発明の趣旨または添付クレームの範囲を逸脱せずに変更および修正を加えうることは当業者には明らかなところである。特に、上記および下記の異なる実施形態の特徴の任意の組み合わせも本発明の実施形態に含まれる。さらに、本明細書で述べた本発明を特徴づける記述は、本発明の実施形態を指し、必ずしもすべての実施形態を指すものではない。
【００４６】
特許請求の範囲で使用される用語は、前述の説明と一致する最も広い合理的な解釈を有すると解釈されるべきである。例えば、要素を導入する際に冠詞「a」または「the」を使用することは、複数の要素を除外するものとして解釈されるべきではない。同様に、「または」の列挙は、「AまたはB」の記載が「AおよびB」を除外しないように包括的であると解釈されるべきである。ただし、文脈または上記の説明から、AおよびBのうちの１つのみが意図されていることが明らかである場合はこの限りではない。さらに、「A、BおよびCのうち少なくとも１つ」の記載は、A、BおよびCが区分またはその他において関連しているかどうかにかかわらず、A、BおよびCからなる要素群の1つまたは複数として解釈されるべきであり、列挙された要素A、BおよびCのそれぞれを少なくとも１つずつ必要とすると解釈されるべきではない。さらに、「A、Bおよび／またはC」または「A、BまたはCの少なくとも1つ」の記載は、列挙された要素から任意の単数の実体（例えば、A）、列挙された要素の一部（例えば、AとB）、または要素A、B、Cのすべてを含むものとして解釈されるべきである。
【図１】
2019125364.tif 000003
【図２】
2019125364.tif 000004
【図３】
2019125364.tif 000005
【図４】
2019125364.tif 000006
【図５】
2019125364.tif 000007
【図６】
2019125364.tif 000008
【外国語明細書】
2019125364000001.pdf