(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-04-26
(54)【発明の名称】個人向けの在庫管理のためのテキストデータの符号化
(51)【国際特許分類】
G06F 16/9035 20190101AFI20220419BHJP
G06Q 10/08 20120101ALI20220419BHJP
G06F 40/205 20200101ALI20220419BHJP
【FI】
G06F16/9035
G06Q10/08
G06F40/205
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2021540889
(86)(22)【出願日】2020-01-13
(85)【翻訳文提出日】2021-09-14
(86)【国際出願番号】 US2020013387
(87)【国際公開番号】W WO2020150163
(87)【国際公開日】2020-07-23
(32)【優先日】2019-01-14
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】521167822
【氏名又は名称】パンチ インコーポレイテッド
(74)【代理人】
【識別番号】110001243
【氏名又は名称】特許業務法人 谷・阿部特許事務所
(72)【発明者】
【氏名】ティアン ラン
(72)【発明者】
【氏名】シン ヘン
【テーマコード(参考)】
5B091
5B175
5L049
【Fターム(参考)】
5B091AA15
5B091CA01
5B091EA01
5B175HA01
5L049CC51
(57)【要約】
少なくとも1つの符号化部を用いて個人向けに推奨されるテキストデータを符号化するためのシステム及び方法が開示される。在庫カタログ管理システムは、顧客から在庫品目のテキストデータと人的特性データの両方を受け取り、人的特性が在庫品目とどの程度親和性があるかを捕捉する特徴表現を生成するように符号化部をトレーニングする。例えば、菜食主義者の顧客とチキンサラダの特徴表現は、顧客が野菜を好むため、チキンサラダのタンパク質の面から親和性が低いことを示す。このシステムは、生成された特徴の表現を使い、品目の類似性の尺度に基づいて品目をカテゴリに区分し、適切な品目を推奨して個人向けの推奨事項を改善してもよい。
【特許請求の範囲】
【請求項1】
説明テキストデータを符号化する方法であって、
ネットワークを介して、ソースデータベースのエントリから説明テキストデータを受信することと、
前記説明テキストデータを第1の符号化部に入力することであって、前記第1の符号化部は、前記説明テキストデータに基づいて品目スコアのベクトルを出力するようにトレーニングされ、前記品目スコアのベクトルの各値は、前記説明テキストデータが複数の候補品目のうちの与えられた1つに対応する度合いを表す、ことと、
前記第1の符号化部の出力として、前記品目スコアのベクトルを受信することと、
前記品目スコアベクトルを第2の符号化部に入力することであって、前記第2の符号化部は、前記品目スコアのベクトルの各値に対して人的特性スコアのベクトルを出力するようにトレーニングされ、前記人的特性スコアのベクトルの各値は、前記品目スコアのベクトルの値に対応する前記候補品目が人的特性に対応する度合いを表す、ことと、
前記複数の候補品目のうちの候補品目の特徴表現と、前記候補品目に対する人的
好みの特徴表現を生成することと、
前記ネットワークを介して、特徴表現に基づく推奨事項をクライアント装置に出力することと、
を含む、方法。
【請求項2】
前記複数の候補品目の各候補品目の複数の特徴表現と、前記各候補品目の人的好みと、を生成することをさらに含む、
請求項1に記載の方法。
【請求項3】
前記品目スコアのベクトルの第1の値に対し、人的特性の第1のベクトルを決定することと、
前記品目スコアのベクトルの第2の値に対し、人的特性の第2のベクトルを決定することと、
をさらに含む、請求項1に記載の方法。
【請求項4】
前記特徴表現の生成は、前記人的特性スコアの第1のベクトルと、前記人的特性スコアの第2のベクトルと、を連結することを含む、
請求項3に記載の方法。
【請求項5】
前記品目スコアのベクトルの各値は、複数の特徴カテゴリの各特徴カテゴリを示す、
請求項3に記載の方法。
【請求項6】
前記人的特性スコアの第1のベクトルを決定することは、
重要度測定値のデータベースから、前記特徴カテゴリに対応する第1の重要度測定値を検索することであり、前記第1の重要度測定値は、前記特徴カテゴリに対応する第1の人的好みに対する第1の重みを含む、ことと、
前記人的特性スコアの第1のベクトルの第1の値に前記第1の重要度測定値を割り当てることと、
重要度測定値のデータベースから、前記特徴カテゴリに対応する第2の重要度測定値を検索することであり、前記第2の重要度測定値は、前記特徴カテゴリに対応する第2の人的好みに対する第2の重みを含む、ことと、
前記人的特性スコアの第1のベクトルの第2の値に前記第2の重要度測定値を割り当てることと、
を含む、請求項5に記載の方法。
【請求項7】
前記特徴表現及び前記品目スコアのベクトルに基づいて、在庫表現を決定することと、
前記特徴表現に基づいて、顧客表現を決定することと、
前記在庫表現と、前記顧客表現との内積を計算することと、
前記内積に基づいて、予測された親和性スコアを決定することと、
在庫注文データの履歴に基づいて、観測された親和性スコアを決定することと、
予測された親和性スコアと、観測された親和性スコアとの間の平均二乗誤差を最小化することと、
前記平均二乗誤差を最小化することに基づいて、前記在庫表現または前記顧客表現の少なくとも1つを更新することと、
リモートサーバにおいて、前記在庫表現及び前記顧客表現を格納することと、
をさらに含む、請求項1に記載の方法。
【請求項8】
前記候補品目は第1の候補品目であり、前記方法は、
前記第1の候補品目の予測された親和性が、第2の候補品目の予測された親和性の範囲内にあることを決定することと、
前記推奨事項が前記第1の候補品目及び前記第2の候補品目の両方の推奨事項を含むことを決定することと、
をさらに含む、請求項1に記載の方法。
【請求項9】
前記説明テキストデータは説明テキストデータの第1のセットであり、前記ソースデータベースは第1のデータベースであり、前記方法は、
前記ネットワークを介し、第2のソースデータベースのエントリから説明テキストデータの第2のセットを受信することと、
前記説明テキストデータの第1のセット及び前記説明テキストデータの第2のセットが単一の候補品目を参照することを決定することと、
をさらに含む、請求項1に記載の方法。
【請求項10】
前記特徴表現が第1の特徴表現であり、前記第1のセットの説明テキストデータ及び前記第2のセットの説明テキストデータが前記単一の候補品目を参照することを決定することは、
前記第1の特徴表現と第2の特徴表現の余弦類似性を計算することと、
前記余弦類似性に基づいて、前記説明テキストデータの第1のセットに関連付けられた第1の品目と、前記説明テキストデータの第2のセットに関連付けられた第2の品目との間の類似性を示す類似性の値を決定することと、
を含む、請求項9に記載の方法。
【請求項11】
前記ソースデータベースの各エントリは、在庫品目に対応する、請求項1に記載の方法。
【請求項12】
在庫カテゴリの特徴表現を決定することと、
複数の特徴表現の各特徴表現を前記在庫カテゴリの特徴表現と比較することであり、前記複数の特徴表現のそれぞれは、前記在庫のリスト中の複数の在庫の各々に対応する、ことと、
をさらに含む、請求項11に記載の方法。
【請求項13】
前記比較に基づいて、前記在庫カタログに属するものとして前記複数の品目のセットを分類することをさらに含む、
請求項12に記載の方法。
【請求項14】
前記比較に基づいて、前記複数の品目のセットを、前記在庫カテゴリ内のターゲット品目の類似性の値の範囲内の複数の類似性の値の各々を有するものとしてランク付けすることをさらに含む、請求項12に記載の方法。
【請求項15】
説明テキストデータを符号化するシステムであって、
テキスト符号化部であり、
ネットワークを介して、ソースデータベースのエントリから説明テキストデータを受信し、及び、
前記説明テキストデータに基づいて品目スコアのベクトルを決定し、前記品目スコアのベクトルの各値は前記説明テキストデータが複数の候補品目のうちの与えられた1つに対応する度合いを表す、ように構成されたテキスト符号化部と、
類似性符号化部であり、
前記テキスト符号化部からの出力として、前記品目スコアのベクトルを受信し、前記品目スコアのベクトルの各値に対して人的特性スコアのベクトルを決定し、前記人的特性スコアのベクトルの各値は、前記品目スコアのベクトルの値に対応する前記候補品目が人的特性に対応する度合いを表し、及び、
前記複数の候補品目のうちの候補品目の特徴表現と、前記候補品目に対する人的好みの特徴表現を生成する、ように構成された類似性符号化部と、
前記ネットワークを介して、特徴表現に基づく推奨事項をクライアント装置に出力するように構成された製品推奨部と、
を備えた、システム。
【請求項16】
前記説明テキストデータは説明テキストデータの第1のセットであり、前記ソースデータベースは第1のデータベースであり、前記システムは、
前記ネットワークを介し、第2のソースデータベースのエントリから説明テキストデータの第2のセットを受信することと、
前記説明テキストデータの第1のセット及び前記説明テキストデータの第2のセットが単一の候補品目を参照することを決定することと、
をさらに含む、請求項15に記載のシステム。
【請求項17】
前記特徴表現が第1の特徴表現であり、前記第1のセットの説明テキストデータ及び前記第2のセットの説明テキストデータが前記単一の候補品目を参照することを決定することは、
前記第1の特徴表現と第2の特徴表現の余弦類似性を計算することと、
前記余弦類似性に基づいて、前記説明テキストデータの第1のセットに関連付けられた第1の品目と、前記説明テキストデータの第2のセットに関連付けられた第2の品目との間の類似性を示す類似性の値を決定することと、
を含む、請求項16に記載のシステム。
【請求項18】
1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに、
ネットワークを介して、ソースデータベースのエントリから説明テキストデータを受信することと、
前記説明テキストデータを第1の符号化部に入力することであって、前記第1の符号化部は、前記説明テキストデータに基づいて品目スコアのベクトルを出力するようにトレーニングされ、前記品目スコアのベクトルの各値は、前記説明テキストデータが複数の候補品目のうちの与えられた1つに対応する度合いを表すことと、
前記第1の符号化部の出力として、前記品目スコアのベクトルを受信することと、前記品目スコアベクトルを第2の符号化部に入力することであって、前記第2の符号化部は、前記品目スコアのベクトルの各値に対して人的特性スコアのベクトルを出力するようにトレーニングされ、前記人的特性スコアのベクトルの各値は、前記品目スコアのベクトルの値に対応する前記候補品目が人的特性に対応する度合いを表すことと、
前記複数の候補品目のうちの候補品目の特徴表現と、前記候補品目に対する人的好みの特徴表現を生成することと、
前記ネットワークを介して、特徴表現に基づく推奨事項をクライアント装置に出力することと、
を含む動作を実行させる実行可能命令を格納した非一時的なコンピュータ可読記憶媒体。
【請求項19】
前記説明テキストデータは説明テキストデータの第1のセットであり、前記ソースデータベースは第1のデータベースであり、前記非一時的なコンピュータ可読記憶媒体は、1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに、
前記ネットワークを介し、第2のソースデータベースのエントリから説明テキストデータの第2のセットを受信することと、
前記説明テキストデータの第1のセット及び前記説明テキストデータの第2のセットが単一の候補品目を参照することを決定することと、
を含むステップを実行させる実行可能命令をさらに格納した、請求項18に記載の非一時的なコンピュータ可読記憶媒体。
【請求項20】
前記特徴表現が第1の特徴表現であり、前記第1のセットの説明テキストデータ及び前記第2のセットの説明テキストデータが前記単一の候補品目を参照することを決定することは、
前記第1の特徴表現と第2の特徴表現の余弦類似性を計算することと、
前記余弦類似性に基づいて、前記説明テキストデータの第1のセットに関連付けられた第1の品目と、前記説明テキストデータの第2のセットに関連付けられた第2の品目との間の類似性を示す類似性の値を決定することと、
を含む、請求項19に記載の非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
この開示は、一般的にテキストの符号化に関し、特に、1つまたは複数のエンコーダの出力に基づく在庫管理に関する。
【背景技術】
【0002】
この出願は、2019年1月14日に出願された米国仮出願第62/792,174号の利益を主張し、これは参照によりその全体が組み込まれる。
【0003】
テキストは、企業の在庫を説明するためにしばしば使用される。例えば、「チキンサラダ」は、レストランで利用可能なメニュー品目を説明するために使用され得る。異なる企業は、同様の在庫品目の説明に異なるテキストを使用し得る。あるレストランでは「オーガニックチキンサラダ」を使用し、別のレストランでは「chksld」を使用して彼らのメニューのチキンサラダを指す場合がある。これらの説明は、長さまたはスペルが大幅に異なる場合がある。例えば、「オーガニックチキンサラダ」というテキストは「オーガニック」の特別な説明を使用しているが、「chk sld」は母音のない別のスペルを使用して、品目名の短い形式を作成している。技術的な問題は、一貫性がない、冗長である、及び/または非常に変動性のある標準化されていないフォームのために、さまざまな説明、またはコンピュータによって解釈される企業からのテキストデータを、個人向けの品目管理のために集約できない場合に発生する(例えば、個人向けの推奨事項を決定するとき)。
【発明の概要】
【0004】
本明細書に記載されているのは、個人化された在庫管理のためにテキストデータを符号化するためのシステム及び方法の実施形態である。ここで説明される在庫カタログ管理システムは、類似した在庫品目の説明のそれぞれを、互いに類似しているそれぞれの固有の表現に符号化してもよい。この表現は、次に、個人向けの品目の管理に使用されてもよい(例えば、より一貫性があって正確な個人向けの推奨事項を決定するために)。
【0005】
例えば、在庫カタログ管理システムは、企業(例えば小売業)によって維持されているデータベースから製品の在庫データを受信してもよい。例えば、在庫カタログ管理システムは、テキストデータ、またはメニュー品目の名前(例えばチキンサラダを指す「chicken sld」)を説明する「説明テキストデータ」を受信する。エンコーダは、テキストデータを受信し、テキストデータに分散する表現を出力してもよい。例えば、エンコーダは、品目のスコアのベクトルを出力し、ベクトルの各品目のスコアは、テキストデータと在庫品目または在庫品目の説明(例えば、「chicken sld」と「drink」品目とが対応する程度は-0.31度、及び「chicken sld」と「protein」とが対応する程度は0.75度)との一致の程度を表す。他のエンコーダは、品目のスコアのベクトルを使い、品目のスコアのベクトル内の各値の人的特性のスコアのベクトルを生成してもよい。いくつかの実施形態において、人的特性のスコアのベクトルの人的特性のスコアは、品目のスコアと人的特性の一致の程度を示す。例えば、「chicken sld」が「protein」品目に対応する0.75度は、「vegetarian」または「spend amount」のような人的特性のための人的特性のスコアのベクトルの生成に使用される。-0.83度は「vegetarian」の人的特性のスコアとして出力され得、0.79度は「spend amount」の人的特性のスコアとして出力され得る(例えば、より多くのお金を支払う顧客はタンパク質を購入する者と相関性がある)。2次元的な特徴表現は、人的特性のスコアの各ベクトルの表現を連結し得る在庫カタログ管理システムによって生成される。在庫カタログ管理システムは、その特徴表現を個人向けの在庫の管理に使用してもよい(例えば、推奨事項の出力)。
【0006】
いくつかの実施形態において、在庫カタログ管理システムは、符号化され、連結された製品情報を分析して個人向けの推奨商品を決定する。例えば、在庫カタログ管理システムは、製品の説明データに分散された表現を識別し、製品の類似性の尺度に基づいて製品を複数の在庫カテゴリに分類し、アップセル及びクロスセルのため適切な製品を推奨し、個々の顧客に向けて在庫中の製品を個人用とする。例えば、在庫カタログ管理システムは、上記の例において生成された特徴表現を使い、「chicken sld」が一般的にポテトチップと共に購入される「チキンサラダ」に対応することを決定する。在庫カタログ管理システムは、ユーザのクライアント装置にポテトチップを購入することの推奨を発行してもよい。他の実施形態において、在庫カタログ管理システムは、その特徴表現を使い、「chicken sld」がチキンサラダに対応し、コブサラダと類似する特徴表現を有することを決定する。在庫カタログ管理システムは、チキンサラダと類似するメニュー品目としてコブサラダを購入することの推奨を発行してもよい。このようにして、在庫カタログ管理システムは、クラウドソース化された在庫カタログデータを標準化し、顧客情報を使用して特徴表現を生成し、様々な販売チャネルを通して小売店の顧客のために誂えた推奨事項を生成する。
【図面の簡単な説明】
【0007】
開示された実施形態は、詳細な説明、添付の特許請求の範囲、及び添付の図(または図面)からより容易に明らかとなる他の利点、及び特徴を有する。
【0008】
【
図1】
図1は、少なくとも1つの実施形態による、在庫カタログ管理システムが動作する通信環境を示すネットワーク図である。
【
図2A】
図2Aは、少なくとも1つの実施形態による、
図1の在庫カタログ管理システムのブロック図である。
【
図2B】
図2Bは、少なくとも1つの実施形態による、
図1の在庫カタログ管理システムのブロック図である。
【
図3A】
図3Aは、少なくとも1つの実施形態による、
図1の在庫カタログ管理システムによって決定された製品推奨事項を受信するためのグラフィカルユーザインターフェース(GUI)を示す図である。
【
図3B】
図3Bは、少なくとも1つの実施形態による、
図1の在庫カタログ管理システムによって決定された製品推奨事項を受信するためのグラフィカルユーザインターフェース(GUI)を示す図である。
【
図4】
図4は、少なくとも1つの実施形態による、
図1の在庫カタログ管理システムを実装するためのコンピュータシステムを示す図である。
【
図5】
図5は、少なくとも1つの実施形態による、
図1の在庫カタログ管理システムを使って推奨事項を出力するための処理を示すフローチャートである。
【発明を実施するための形態】
【0009】
図面及び以下の説明は、好適な実施形態としてのみの説明に関する。以下の説明から、本明細書に開示される構造、及び方法の代替的な実施形態は、特許請求の範囲の原理から逸脱することなく、採用され得る実行可能な代替として容易に認識されることとなることが留意されたい。
【0010】
いくつかの実施形態が詳細に参照され、それらの例は、添付の図面に示されている。使用可能な場合はいつでも、類似または類似の参照番号を図で使用することができ、類似または類似の機能を示すことができることに留意されたい。図は、例示のみを目的として開示されたシステム(または方法)の実施形態を示している。当業者は、ここで示される構造及び方法の代替的実施形態が、ここで説明される原理から逸脱せずに採用されることができることを、下記の説明から容易に認識するであろう。
【0011】
[例示的な在庫カタログ管理システムの構成]
図1は、在庫カタログ管理システム140が動作する通信環境100を示すネットワークの図である。通信環境100は、ネットワーク110、企業120及び130、1つまたは複数もクライアント装置150及び在庫カタログ管理システムを含む。代替えの構成において、異なる及び/または追加の構成が通信環境100に含まれてもよい。
【0012】
ネットワーク110は、少なくとも1つの企業(例えば、企業120及び130)、少なくとも1つのクライアント装置(例えばクライアント装置150)及び在庫カタログ管理システム140と通信可能に結合されている。いくつかの実施形態において、ネットワーク110は、少なくとも1つの企業及び在庫カタログ管理システム140との間のみを通信可能に結合してもよい。例えば、ネットワーク110は、企業120と共に在庫カタログ管理システム140のみを通信可能に結合する。いくつかの実施形態において、ネットワーク110は、少なくとも1つのクライアント装置と在庫カタログ管理システム140との間のみを通信可能に結合してもよい(例えば、クライアント装置150と在庫カタログ管理システム140との間)。ネットワーク110は、インターネット、ケーブルネットワーク、モバイルフォンネットワーク、光ファイバネットワークまたはどのような好適なタイプの通信ネットワークを含む1つまたは複数のネットワークであってもよい。
【0013】
企業120及び130は、小売業、デパート店、スーパーマーケット、インターネット小売業、小企業、レストランまたは製品及び/またはサービスの在庫(例えば、販売、集約、監視等)に関連するどのような好適な企業であってもよい。ここで使用される「製品」及び「アイテム」という用語は、企業によって顧客に販売された製品及び/またはサービスの在庫を指す。企業120及び130は、在庫のローカルデータベース(例えば、それぞれ、ソースデータベース121及び131)を実装することができる。いくつかの実施形態において、ソースデータベース121及び131は、在庫品目のリスト(例えば、スーパーマーケットで販売されている食料品のリストまたはレストランでのメニュー品目のリスト)を含む。企業120は、ネットワーク110と通信可能であり、ソースデータベース121に格納する電子的装置122を含んでもよい。
【0014】
クライアント装置150はモバイル電話機、ラップトップコンピュータ、タブレットコンピュータ、パーソナルコンピュータ、スマートテレビまたはネットワーク(例えば、ネットワーク110)と通信可能等のような好適なコンピュータ装置であってもよい。各クライアント装置は、ユーザまたはユーザプロファイルのそれぞれと関連付けられていてもよい。クライアント装置と関連付けられたユーザプロファイルは、在庫カタログ管理システム140及び/または企業120または130によって構成またはアクセス可能であってもよい。
【0015】
在庫カタログ管理システム140は、ネットワーク110を介して企業120及び130並びにクライアント装置からデータを受信してもよい。いくつかの実施形態において、在庫カタログ管理システム140は、受信したデータを編成及び標準化し、次に企業120及び130並びに/またはクライアント装置150に向けた推奨事項を決定する。在庫カタログ管理システム140は、在庫データ、顧客データ、データのベクトル表現(例えば、在庫、顧客のベクトル表現及び、在庫と顧客の両方が組み合わされた表現)及び表現ベクトル中のデータの符号化のような様々な操作を実行するソフトウェアモジュール、表現ベクトルの最適化、最適化されたベクトル表現に基づく在庫品目間の類似性の決定、及び決定された類似性に基づく推奨品のための少なくとも1つのデータベースを保存及び維持する。在庫カタログ管理システム140は、
図2A-2Bの説明においてさらに記載される。
【0016】
[在庫カタログ管理システム]
図2A及び
図2Bは、
図1の在庫カタログ管理システムのブロック図である。
図2Aに示す在庫カタログ管理システム140は、様々なソフトウェアモジュール:表現生成部200、類似性測定部210、製品情報形成部220、製品カタログ分類部230、製品類似性ランク部240及び製品親和性推奨部250を含む。いくつかの実施形態において、在庫カタログ管理システム140は、様々な機能のために、追加の、より少ない、または異なる構成要素を含む。
【0017】
表現生成部200は、製品説明データと人的特性データとが組み合わされた数学的表現を生成する。ここでは、製品情報データは「テキストデータ」または「説明テキストデータ」と称することもある。いくつかの実施形態において、表現生成部200は、製品説明データと顧客データ(例えば商取引)をデータベースから受信する(例えば、ローカルに、または外部サーバに保存する企業またはシステム管理データベースのソースデータベース121及び/または131)。表現生成部200は、
図2Bに示すように、追加のサブモジュール:テキスト符号化部201、親和性符号化部202及び最適化部203を含んでもよい。表現生成部200は、生成された表現を類似性測定部210、製品情報形成部220、製品カタログ分類部230、製品類似性ランク部240及び/または製品親和性推奨部250に出力してもよい。
【0018】
テキスト符号化部201は、製品説明データの数学的表現を生成する。例えば、テキスト符号化部201は、製品説明データを受信し、製品の様々な特徴を表す実数のベクトルを生成する。ここでは、このベクトルは「品目スコアベクトル」とされる。品目スコアベクトルを生成するため、テキスト符号化部201は、テキスト文書及び文章の文を分析する分散表現プロセスを実行する。各製品説明は、分散表現処理において、文書の文章または文書自身とみなされてもよい。テキスト符号化部201は、文章または文書を固有のベクトルにマッピングし、文中の単語を別の特有のベクトルにマッピングする。
【0019】
1つまたは複数の行列は初期化され得る。1実施形態において、単語行列及び文書行列の2つの行列が初期化されてもよい。いくつかの実施形態において、全ての在庫品目の符号化された表現は、文書行列中に集められ、品目の説明に使われた符号化された単語表現は、単語行列に集められる。テキスト符号化部201は、実質的にランダムな値を使用して (例えば、乱数発生器を使用して)行列を初期化してもよい。単語行列の各列または行は、製品説明の単語ベクトルをマップしてもよい。例えば、「チキン」及び「サラダ」は、製品説明「チキンサラダ」から得られる単語である。「チキン」及び「サラダ」の単語ベクトルは、それぞれw1及びw2として表すことができ、以下の式1の単語行列wに含まれている。単語ベクトルは、コーパス内の共通のコンテキストを共有する単語が互いに近接して配置されるようにベクトル空間に配置されてもよい(例えば、コサインの類似性によって表される)。いくつかの実施形態において、文書マトリックスの各列または行は、製品説明全体をマップする。例えば、D1で示される「chicken salad」は文書ベクトルを形成し、D2で表される「chk salad」は式1中の文書マトリックス中の他の文書ベクトルを形成する。テキスト符号化部201は、式1の対数尤度を最小化するために製品説明をスキャンするkの固定ウィンドウサイズのソフトマックス分類器を使用してトレーニングされてもよい。
【0020】
【0021】
ここで、Diは、i番目の文書を表しているベクトルに対応し、|Di|はi番目の文書中の単語の数である。トレーニングの最適化は、ソフトマックス分類器がスキャンしているドキュメントを記憶し、そのウィンドウ内の単語とともに行列Dの行を更新する。テキスト符号化部201において、文書行列Dは、製品説明の内容を文書全体、または文章及び文章中の各単語の関連性を符号化する最終出力として機能する。ここで、テキスト符号化部201を参照するように、文書及び文章は、単語の論理的な配置を含む。式1を使い、テキスト符号化部201は、文書ベクトルDi及び単語ベクトルwt
iを同時に生成してもよい。ドキュメントベクトルは単語ベクトルの連結を含んでもよいが、単独の文書ベクトルは特有の表現である。例えば、行列[w1 w2 D1]は文書ベクトルであるが、D1自身は製品説明の特有の表現である。
【0022】
非限定的な例として、テキスト符号化部201は、品目スコアベクトル[0.39,0.75,-0.31,0.13,0.03]を生成する。5スコアのサイズのこのベクトルの例は、比較的小さく、本発明の理解を容易にするために採用された。テキスト符号化部201は、実際にはコンピュータのみによって解釈され得る(例えばデコーダを呼び出す)非常に大きなベクトルを生成し得る。いくつかの実施形態において、ベクトル内の各スコアは、品目の分類の重みに対応する。テキスト符号部201は、監視されていない及びタスクに非依存の方式で製品品目情報から品目分類を学習してもよい。例えば、各スコアは、それぞれ「野菜」、「タンパク質」、「飲料」、「果物」及び「穀物」の品目分類の重さに対応する。チキンサラダに鶏肉が含まれているため、比較的大きいスコアまたは重さには、「タンパク質」の記述子が与えられる。テキスト符号部201は、「チキン」が「チキンサラダ」の説明において、「サラダ」より重要であると決定するため、「野菜」には、より小さい重みが与えられ得る。チキンサラダは飲料でないため、記述子「飲料」には、より大幅に小さいスコアが与えられ得る(例えば、負の値は記述子の不足を示し、大きさは記述子の品目の不足の度合いを示す)。いくつかの実施形態において、テキスト符号化部201の出力は、理解し難い文書ベクトルの出力の説明を生成するために参照される(例えば「チキンサラダ」)。
【0023】
明及び製品説明の文章のベクトルにおける個々の単語のベクトルは、テキスト符号化部201が品目スコアベクトルを生成するトレーニングに同時に使用される。例えば、テキスト符号化部201は、確率的勾配降下法を使用して同じ製品を参照する製品説明の単語及び文の両方でトレーニングされる。トレーニングは、製品説明における次の単語の予測の失敗が起こる可能性を最小化し得る。同じ単語ベクトルをテキスト符号化部201により全ての在庫品目の製品説明の次の単語を予測することに使用することができるが、テキスト符号化部201によって生成されたベクトルは、製品について固有である。例えば、「チキン」の単語ベクトルは、「チキンサラダ」と「チキンエンチラーダ」との両方に使用されるが、生成される「チキンサラダ」のベクトル(例えば、スコアベクトル)は、生成された「チキンエンチラーダ」のベクトルと異なっている。これら特有のベクトルを使用し、在庫カタログ管理システム140は、クラウドソースのカタログデータに含まれる紛失、不完全またはノイズのある製品説明の影響を最小限にしながら、重要な製品情報に基づいて製品の類似性を識別してもよい。
【0024】
テキスト符号化部201は、生成された文書及び単語ベクトルへの製品説明の分析に基づいて、製品説明中の単語を予測してもよい。テキスト符号化部201は、上記のように、式1の行列D中の列で表される固有のベクトルへ製品説明(例えば文章)をマッピングし、文章中の各単語もまた式1の行列w中の列によって表される特有のベクトルにマッピングされる。テキスト符号化部201は、生成された単語及び文章ベクトルを平均化及び/または連結して文章(例えば、)の文脈中から次の単語を予測してもよい。例えば、「fried chk」という文章の文脈において、テキスト符号化部201で生成された「fried」と「chk」の単語ベクトルは、「チキン」が「フライド」の後に来る可能性が高いため、「フライド」と「ひよこ豆」ではなく、「フライド」及び「チキン」に対応するとしてもよい。
【0025】
企業より受信された高い可変性を有する製品説明が参照している単語を予測することにより、テキスト符号化部201は、任意の長さの製品説明の分散表現を生成する。例えば、企業120は、ソースデータベース121中のチキンサラダを表現するためにテキストデータ「chicken sld」を使用してもよく、企業130は、ソースデータベース131中のチキンサラダを表現するためにテキストデータ「chk sld」を使用してもよい。クラウドソーシングを通って得られたテキストデータは、短い形式の名前(例えば「chk sld」)、またはミススペルを含む(例えば「chiken salad」)、または特別な名前(例えば「オーガニックチキンサラダ」)であってもよい。在庫カタログ管理システム140は、同様の製品の様々な代替えの名前に起因する複雑さとノイズを取り扱い、色々な名前が1つの製品(例えば「チキンサラダ」)を参照することを決定する。
【0026】
符号化によって生成された高密度のベクトル及び他のベクトル表現は、製品の本質的な情報を表現する符号化された特徴を含みながら、対応する複合化処理をすることなく直接解釈することができないことがあることに留意されたい。テキスト符号化部201は、人間が理解できる分類の手順よりも連続的、かつ高密度な分類にアプローチを実行し得る。後者は離散的で希薄であるため、非効率的であり得るからである。
【0027】
親和性符号化部202は、製品情報の数学的表現と、人的特性データとの組み合わせを生成する。いくつかの実施形態において、親和性符号化部202は、製品説明データを企業(例えば企業120、130)から、人的特性データをそれら企業から、またはユーザ(例えば顧客)から、クライアント装置(例えばクライアント装置150)及び/または、企業及び/またはプロファイル情報を維持する通信環境100中の1つまたは複数のデータベースを通じて受信する。例えば、レストランからの人的特性データは、顧客の年齢、好みのメニュー品目、購入時刻、購入頻度、食事制限、人の在庫品目の購入、または人の在庫品目購入の目的に基づいて生成されたどのような適切なデータ、または、それらのどのような適切な組み合わせの集計を含む。いくつかの実施形態において、人的特性データは、顧客処理データ及び顧客プロファイルデータを含む。例えば、顧客処理データは、顧客がポテトチップと共にチキンサラダを購入したことを示す。人的特性データの顧客プロファイルデータは、顧客が好む菜食主義者用製品を示してもよい。顧客処理及びプロファイルデータは、顧客の集計を表してもよい。例えば、顧客処理データは、レストランの顧客の55%がポテトトップと共にチキンサラダを購入することを示している。親和性符号化部202への人間特性データ入力は、親和性符号化部202が次元のデータの追加を伴う数学的表現を生成するように、符号化部201によって生成された品目スコアベクトルを集計し、データは、受信された人的特性データの人的特性と、品目スコアベクトルの品目の分類との間の親和性を示す。実数の2行2列の行列であり得る生成された数学的表現は、ここでは「特徴表現」と呼ばれる。各特徴表現の値は、製品説明データと人的特性データとの組み合わせであってもよい。
【0028】
いくつかの実施形態において、親和性符号化部202は、品目スコアベクトルの品目分類を第1の次元として、人的特性を第2の次元として使用する。テキスト符号部201からの品目スコアベクトルを使用して人的特性の第2の次元を整理することにより、親和性符号化部202は、類似の属性を有する製品を共にグループ化し、品目及び顧客と製品の相互作用の希薄さを低減してもよい。例えば、既存の在庫カタログ管理システムは、菜食主義者がレストランから5つのメニュー品目を注文したことを示してもよく、ここで説明する在庫カタログ管理システムは、菜食主義者はこれら5つのメニュー品目を注文する可能性が高く、3つの他の菜食主義者用メニュー品目の追加及び残りの30のメニュー品目は注文される可能性が低いことを示してもよい。親和性符号化部202は、品目スコアベクトルの各エントリを、品目スコアベクトルの次元に垂直な第2で拡張することにより、顧客と製品との間の相互作用を表現する第2の次元を構築する。第2の次元において、第2のベクトルの値は、各人的特性のスコアまたは重みを定量化してもよい。例えば、品目分類(例えば「野菜」)に対する人的特性(例えば「菜食主義者」)に対する親和性が定量化される。以下に示す「チキンサラダ」の品目スコアベクトル[0.39,0.75,-0.31,0.13,0.03]を使って、親和性符号化部202によって生成された特徴表現の非限定的な例が示される。
【0029】
【0030】
この例の品目スコアベクトルの第1の値は品目分類「野菜」に対応し、第2の値は「タンパク質」の品目分類に対応することを思い出されたい。親和性符号化部202は、人的特性「菜食主義者」について、それぞれ0.89及び-0.83のこれら2つの品目分類の親和性定量値を生成した。定量値は、菜食主義者がタンパク質よりも野菜と高い親和性を有することを示している。
【0031】
いくつかの実施形態において、親和性符号化部202は、顧客プロファイル(例えば単一のプロファイルまたは多くのプロファイルの集合)をも数学的表現に符号化する。親和性符号化部202によって符号化された顧客プロファイルデータは、顧客の年齢及び位置を含む。顧客プロファイルは、1つまたは複数の顧客の集計であってもよい。例えば、顧客プロファイルデータは、レストランの顧客の2%は菜食主義者であることを示してもよい。いくつかの実施形態において、親和性符号化部202は、ワンホットアイデンティティ機能を使って顧客プロファイルに記述されている中の特定の人的特性を他よりも強調する。例えば、親和性符号化部202は、「菜食主義者」は最も顕著な顧客の特徴であると決定し、この特性に焦点をあてて特徴表現を生成しているときに他の人的特性の優先順位を下げてもよい(例えば、無視する、またはより小さい重みを適用する)。生成された特徴表現は、結果的に菜食主義者の特性に特に焦点を当てた推奨製品を生じ得る。
【0032】
最適化部203は、生成された製品の数学的表現と顧客との間の平均二乗誤差を最小化することにより、製品の見方に対する顧客の親和性を定量化する際に、親和性符号化部202によって生成された特徴表現の精度を向上させる。いくつかの実施形態において、最適化部203は、在庫品目及び顧客の数学的表現を生成する:在庫表現及び顧客表現。これらの表現は、在庫カタログ管理システム140によってリモートサーバまたはローカルサーバに保存されてもよい。
【0033】
在庫表現は、テキスト符号化部201によって生成された品目スコアベクトルと親和性符号化部202によって生成された特徴表現との線形接合であってもよい。式2は、在庫表現pを決定する非制限的な線形結合の例を示す。
【0034】
【0035】
ここで、ei
jは、eのj番目の要素、テキスト符号化部201によって生成された製品iの品目スコアベクトル、Fjは、品目スコアベクトルのj番目の要素に対応する親和性符号化部202によって生成された特徴表現、及びpiは、製品iの在庫表現である。ベクトルeiは、親和性符号化部202による特徴表現の第1の次元として機能してもよく、Fjは特徴表現の第2の次元であってもよい。テキスト符号化部201及び親和性符号化部202(ベクトル表現空間で互いに直交する符号化部)の製品の線形結合は、両方の符号化部によって生成された機能を組み込むことにより、製品表現と人的特性の両方を完全に捕捉し得る。例えば、在庫表現は、クラウドソーシングされた取引履歴、ロイヤリティプログラム活動及び親和性符号化部202によって計算された顧客プロファイルを伴う製品説明機能を組み込んでいる。
【0036】
顧客表現は、人的特性の線形結合の可能性がある。
【0037】
【0038】
ここで、cuは顧客uの人的特性を表し、Kuは、「菜食主義者」のような顧客uのワンホットアイデンティティ機能、IuはKuに対応する親和性符号化部202によって生成された品目スコアベクトル及びquは顧客uの顧客表現である。いくつかの実施形態において、Kuは親和性符号化部202によって生成され、菜食主義者のような人的特性を強調する。
【0039】
いくつかの実施形態において、最適化部203は、最適化処理を実行して特徴、在庫及び顧客表現の改善を実行する。この処理を実行するため、最適化部203は、選択された顧客が2つの異なる製品に対して親和性を有する場合(例えば、「お気に入り」機能を通じて関心を示した場合や、2つの製品を繰り返し購入した場合)、2つの製品の在庫表現も十分類似しているような最適化のターゲットを設定してもよい。同様に、最適化部203は、製品の選択が同じ2人の顧客によって購入された場合に、2人の顧客の顧客表現が類似するように、最適化のターゲットを設定してもよい。最適化部203は、勾配降下最適化アルゴリズムを通じて2つのトレーニングプロセスを同時に使用してもよい。例えば、最適化部203は、顧客表現と在庫表現のドットプロダクト,f(pi*qu+biu),を計算し、製品iと顧客uの内積を定量化し、ここでfは恒等関数またはシグモイド関数のような正規化関数、biuはバイアス項である。最小化ターゲットは、最適化部203によって使用され、予測された親和性スコアf(pi*qu+biu)と、観測を通じた対応する親和性(例えば、経験的親和性スコアまたは観測された親和性スコア)との間の勾配降下による平均二乗誤差を最小化する。いくつかの実施形態では、経験的親和性スコアは、製品注文頻度データを正規化することによって定量化される。
【0040】
テキスト符号化部201は、計算された親和性スコア及びエラー最小化に基づいて、在庫表現または顧客表現のうちの少なくとも1つを更新してもよい。例えば、テキスト符号化部201は、最適化部203によって生成された在庫及び顧客表現が更新されるようにトレーニングされているとき生成した、ア品目スコアベクトルのサイズを増加または減少させてもよい。
【0041】
類似性測定部210は、在庫カタログ管理システム140が、異なる説明が同じ製品を参照していることを許容し、製品を様々な在庫カテゴリに分割し、アップセル及びクロスセルのために類似の製品をランク付けしてもよい。いくつかの実施形態において、類似性測定部210は、2つの製品間の類似性を計算する。例えば、企業120は「chicken salad」を使用してチキンサラダメニュー品目を説明し、企業130は「chk salad」を使用してチキンサラダメニュー品目を説明する。在庫カタログ管理システム140は、テキストデータとして両方のエントリを受け取ることができ、類似性測定部210は、2つの非ゼロ特徴表現間の余弦類似性を計算してもよい。限定されない例では、以下に提供される「chicken salad」特徴表現及び「chkサラダ」特徴表現の余弦類似性は、91.2%であり得る。
【0042】
【0043】
余弦類似性表現は、2つの非ゼロベクトル間の角度のコサインに基づく、内積空間の2つの非ゼロベクトル間の類似性の尺度である。同じ方向の2つのベクトルの余弦類似性は1、正反対の2つのベクトルの類似性は-1である。類似性の計算は特徴表現に示されているが、類似性測定部210は、文書ベクトルの類似性(例えば、余弦類似性を使用して)をも決定し得る。例えば、「organic chicken salad」のドキュメントベクトルは、ドキュメントベクトルが固有であるため、「chk sld」のドキュメントベクトルとは異なるが、類似性測定部210は、両方のベクトルがチキンサラダを表すという、高度な類似性の決定をし得る。
【0044】
テキスト符号化部201によって生成されたベクトル及び最適化部203によって最適化された表現は、製品情報形成部220、製品カタログ分類部230、製品類似性ランク部240、及び製品親和性推奨部250によって実行されるダウンストリームタスク(例えば、製品推奨及び類似性によるランキング)に使用され得る。
【0045】
製品情報形成部220は、クラウドソーシングされたデータ(例えば製品説明中の短い形式及びスペルミス)に内在するノイズ及び希薄さを最小化して、より正確かつ矛盾のない製品情報を決定する。例えば、製品情報形成部220は、「chicken salad」と「chk salad」は、それらの在庫表現が類似しているため(例えば、類似性測定部210によって決定される)、同じ製品を参照していると決定する。
【0046】
製品カタログ分類部230は、教師あり/または教師なしの機械学習方法を使用して製品を分類する。教師ありの方法の場合、製品カタログ分類部230は、予め定義されたカテゴリのリスト(例えば、テキスト説明のリスト)を受け取る。製品カタログ分類部230は、予め定義されたカテゴリのリストを符号化部201及び202に入力し、カテゴリの特徴表現を生成してもよい。いくつかの実施形態におけるカテゴリの符号化は、製品の符号化がトレーニング処理であるのに対し、カテゴリの符号化は推論処理であり得るという点で、製品の符号化とは相違する。例えば、在庫カタログ管理システム140が最適化部203を使用して在庫表現を最適化した後、符号化部201及び202の内部パラメータが決定され、カテゴリ名を含む既知及び未知の両方の製品説明が固定され得る。いくつかの実施形態において、製品カタログ分類部230は、製品の在庫表現をカテゴリの特徴表現と比較することによって(例えば、類似性測定部210及び/または余弦類似性を使用して)製品をそのカテゴリに分類する。例えば、在庫カタログ管理システム140は、カテゴリとして「salad」を受け取り、製品カタログ分類部230は、「salad」の特徴表現を生成する。製品カタログ分類部230は、類似性測定部210を使用することにより、カテゴリ「salad」に最も類似する製品を表にしてもよい。類似性閾値を用いて、製品カタログ分類部230は、閾値要件を満たす在庫(例えば、ソースデータベース121に記録された在庫)から類似の製品を決定してもよい。
【0047】
いくつかの実施形態において、製品カタログ分類部230は、教師なし機械学習方法を使用して製品を分類する。いくつかの実施形態において、製品カタログ分類部230は、教師なしの方法を使用するために、カテゴリの予め定義されたリストを必要としない。代わりに、製品カタログ分類部230は、黙示的なカテゴリを自動的に作成してもよい。例えば、類似性測定部210を用いて在庫内のすべての製品の在庫表現を評価することにより、製品カタログ分類部230は、K平均法、ガウス混合モデル(GMM)または平均シフトクラスタリング等の教師なしクラスタリングアルゴリズムを使用して、製品をカテゴリにグループ化する。
【0048】
製品類似性ランク部240は、製品がターゲット製品にどの程度類似しているかを評価し、それぞれの評価に基づいて複数の製品をランク付けする。いくつかの実施形態において、製品類似性ランク部240は、親和性符号化部202によって生成された在庫内のすべての製品の在庫表現をターゲット製品と比較する。例えば、製品類似性ランク部240は、類似性測定部210によって計算された類似性を使用する。類似性ランキングの例を以下の表1に示す。
【0049】
【0050】
表1は、「tuesday spec pork taco」等の製品説明、及び親和性符号化部202によって生成された特徴表現に基づく類似性に対応する評価を示す。製品類似性ランク部240は、ターゲット製品に最も類似している所定の数の製品を表にしてもよい。製品類似性ランク部240は、ターゲット製品に最も類似している所定の数の製品を表にしてもよい。例えば、「pork taco」のターゲット製品は、類似性によって製品を決定及びランク付けするために使用される。表1の例では、豚肉、牛肉、鶏肉等の他の種類のタコスも類似していると見なされる。ビーフサラダは、他のタコスと同様に、ポークタコスに類似する製品であると理解されているが、企業の在庫の中で4番目に類似している製品である可能性がある。いくつかの実施形態において、製品類似性ランク部240は、ターゲット類似性値(例えば100%)の範囲(例えば類似性50-100%)中の類似性値を有する製品をランク付けしてもよい。例えば、類似性が50%以上の製品をランク付けすると、「beef salad」は表1に示されているランク付けから除外される。在庫カタログ管理システム140は、製品類似性ランク部240によって決定されたランクを、企業のデバイス(例えば企業120の電子デバイス122)に表示させてもよい。これらのランクを使用して、企業120は、製品の推奨事項を改善してもよい(クロスセリングやアップセル等)。いくつかの実施形態において、製品類似性ランク部240及び製品カタログ分類部230は、両方が類似性測定部210によって計算された類似性を使用して互いに類似する品目を表にするという点で類似の機能を実行する。
【0051】
製品親和性推奨部250は、在庫内の顧客と製品のペア(すなわち、顧客と製品のペア)の親和性スコアを計算する。いくつかの実施形態において、製品親和性推奨部250は、単一の製品について複数の親和性スコアを計算し、各親和性スコアは、顧客と単一の製品との関係(例えば、顧客が製品を購入する可能性が高い程度)を示す。親和性スコアは、在庫表現と顧客表現の内積を使用して計算され得る。親和性の定量的尺度を計算することにより、製品親和性推奨部250は、在庫カタログ管理システム140が、精度、自動化、及び効率を高め、個人化された小売体験(例えば、製品のアップセルまたは推奨)を提供することを許容する。いくつかの実施形態において、製品親和性推奨部250は、対応する親和性スコアが互いに範囲内にあると決定することによって製品の組み合わせを推奨する。例えば、特定の顧客に対する「chicken salad」と「potato chips」の親和性スコアは、ターゲットの親和性スコアの10%以内である。いくつかの実施形態において、製品親和性推奨部250は、転移トレーニングが起こることを許容する。例えば、顧客は、明示的に探していなかった品目で、製品説明中に顧客が問い合わせた内容と同様の特徴やキーワードがあっても、品目名または説明が異なるものを探し得る。
【0052】
[代表的な製品推奨ユーザインターフェース]
図3A及び
図3Bは、
図1の在庫カタログ管理システム140によって決定された製品推奨事項を受信するためのグラフィカルユーザインターフェース(GUI)を表す。
図3AのGUI300は、顧客がクライアント装置(例えば、クライアント装置150のスマートフォン)を介して食品を購入するためのメニューを示している。
図3BのGUI300Bは、クライアント装置のディスプレイ上の顧客注文の履歴を示す。
【0053】
GUI300Aは、推奨事項310を備えたメニュー項目「Filet Mignon」、「追加注文」アイコン320、及び注文概要アイコン330を含む。いくつかの実施形態において、企業120は、ソースデータベース121の品目がメニュー品目(「フィレミニヨン」や「エビのリングイネ」等)であるレストランである。在庫カタログ管理システム140は、企業120及びGUI300Aを表示するクライアント装置と通信し、推奨メニュー項目を表示させてもよい。いくつかの実施形態において、在庫カタログ管理システム140は、企業(例えば、企業120及び130)からクラウドソースされた製品説明及び顧客データに基づいて、ソースデータベース121内のメニュー品目の特徴表現を生成する。例えば、テキスト符号化部201は、「タンパク質」、「野菜」及び「アントレ―」のような品目分類に基づいて、品目スコアベクトルを生成する。親和性符号化部202は、生成された品目スコアベクトルを使用して、「菜食主義者」、「高齢射」、及び「支払額」等の人的特性カテゴリを考慮するフィレミニヨンの2D特徴表現を生成してもよい。例えば、フィレミニョンの特徴表現は、顧客が注文に比較的多額の金銭を費やす高齢者である場合のフィレミニヨンの顧客親和性の定量化された値を含む。在庫カタログ管理システム140は、顧客の集計のフィレミニョンの特徴表現が、ピノノワール、焼きアスパラガス、及びポテトグラタンの特徴表現に類似していると判断し得る。製品類似性ランク部240及び/または製品親和性推奨部250において、この決定を行うために類似性測定部210によって計算された類似性は、注文に多額の金銭を費やす顧客がピノノワール、焼きアスパラガス及び/またはポテトグラタンをフィレミニョンと一緒に注文する可能性が高いことを示し得る。在庫カタログ管理システム140は、最適化部203を介して、この可能性のエラーを最小化してもよい。いくつかの実施形態において、最適化部203は、フィレミニョンの注文の予測親和性スコアと経験的親和性スコアとの間の平均二乗誤差を最小化し得る(例えば、勾配降下法を使用する)。顧客は、GUI300Aに示されている「ピノノワール」の横のチェックボックスの「X」からピノノワールを注文するアイコンを選択し、アイコン320を選択して、フィレミニョンとピノノワールのメニュー項目を購入に追加し、注文概要アイコン330を使用した注文を確定し得る。
【0054】
GUI300Bは、メニュー項目340、及び顧客プロファイルアイコン350と共に、以前に注文された「Pork Tacos」と類似するメニュー項目を含む。いくつかの実施形態において、企業120は、ソースデータベース121内の品目がメニュー品目(例えば、「ポークタコス」及び「バニラソフトクリーム」)であるレストランである。在庫カタログ管理システム140は、企業120及びGUI300Bを表示しているクライアント装置と通信し、同様のメニュー項目を表示させてもよい。いくつかの実施形態において、在庫カタログ管理システム140は、製品の説明に基づいて、ソースデータベース121内のメニュー品目の特徴表現を生成する。例えば、テキスト符号化部201は、「タンパク質」、「野菜」及び「アントレ―」等品目カテゴリに基づいて、ポークタコスの品目スコアベクトルを生成する。親和性符号化部202は、生成された品目スコアベクトルを使用して、「来店時刻」、「高齢者」及び「ロイヤリティメンバー」等の人的特性カテゴリを説明するポークタコスの2D特徴表現を生成してもよい。例えば、ポークタコスの特徴表現には、顧客の集合に高齢者、ロイヤルティプログラムのメンバー、レストランを頻繁に訪れたり購入したりする人々が含まれる場合の、ポークタコスに対する顧客の親和性を定量化する値が含まれてもよい。在庫カタログ管理システム140は、ポークタコスの特徴表現が、チキンタコス、ビーフタコス、及びタコサラダを含むカテゴリー(例えば、「タコ」カテゴリ)にあると決定してもよい。製品カタログ分類部230において、この決定をするために、類似性測定部210によって計算された類似性は、ポークタコスがチキンタコス、ビーフタコス及びタコサラダに類似する可能性があることを示してもよい。顧客は、以前の「ポークタコス」の注文の横にあるGUI300Bに示されている、ビーフタコスを注文するためのアイコンを選択してもよい。自分の顧客プロファイルデータにアクセスするために、GUI300Bを表示しているクライアント装置のユーザは、顧客プロファイルアイコン350を選択してもよい。例えば、アイコン350を通じてアクセスできる顧客プロファイルには、メニュー項目のお気に入り、個人データ(年齢や場所等)及び注文履歴が表示される。
【0055】
[コンピュータ装置構造]
図4は、機械可読媒体から命令を読み取り、それらをプロセッサ(またはコントローラ)において実行することが可能である例示的な装置の構成要素を図示するブロック図である。具体的には、
図4は、ここで説明される任意の1つまたは複数の方法を装置に実行させるために、プログラムコード(例えば、ソフトウェア)を中に有するコンピュータシステム400の例示的な形態における装置の形成を図示する。プログラムコードは、1つまたは複数のプロセッサ402によって実行可能な命令424から構成されてもよい。代替の実施形態において、マシンは、スタンドアローン装置として動作するか、または他の装置に接続(例えばネットワーク化)されてもよい。ネットワーク接続された展開において、マシンは、サーバ・クライアントネットワーク環境内のサーバ装置もしくはクライアント装置として、またはピア・ツー・ピア(または分散)ネットワーク環境内のピア装置として動作してもよい。
【0056】
マシンは、サーバーコンピュータ、クライアントコンピュータ、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、携帯情報端末(PDA)、携帯電話、スマートフォン、Webアプライアンス、ネットワークルーター、スイッチまたはブリッジ、またはアクションを指定する命令424(シーケンシャルまたはその他)を実行できる任意のマシンでもよい。さらに、単一の装置のみが図示されているが、「装置」という用語は、また、命令124を個別に、または協働して実行する装置の任意の集合を含むものとされ、ここで議論される方法のいずれか1つまたは複数を実行する。
【0057】
例示的なコンピュータシステム400は、プロセッサ402(例えば、中央処理装置(CPU)、グラフィックス処理装置(GPU)、デジタル信号プロセッサ(DSP)、1つまたは複数のアプリケーション固有の集積回路(ASIC)、バス408を介して互いに通信するように構成された1つまたは複数の無線周波数集積回路(RFIC)、またはこれらの任意の組み合わせ、メインメモリ404及び静的メモリ406を含む。コンピュータシステム400は、ビジュアルディスプレイインターフェース410をさらに含んでよい。ビジュアルインターフェースは、ユーザインターフェースをスクリーン(またはディスプレイ)上に表示することが可能なソフトウェアドライバを含んでもよい。ビジュアルインターフェースは、直接的に(例えば、スクリーン上に)、または間接的に表面上またはウィンドウ上等に(例えば、ビジュアルプロジェクションユニットを介して)間接的にユーザインターフェースを表示してもよい。説明の簡単のため、ビジュアルインターフェースはスクリーンと記してもよい。ビジュアルインターフェース410は、タッチ可能なスクリーンを含んでもよく、インターフェースを伴ってタッチ可能なスクリーンと接続してもよい。コンピュータシステム400は、英数字入力デバイス412(例えば、キーボードまたはタッチスクリーンキーボード)、カーソル制御デバイス414(例えば、マウス、トラックボール、ジョイスティック、人感センサー、または他のポインティング機器)、記憶ユニット416、信号生成デバイス418(例えば、スピーカ)及びネットワークインターフェースデバイス420を含み、また、バス408を介して通信するよう構成される。
【0058】
ストレージユニット416は、本明細書で説明される方法論または機能のうちの任意の1つまたは複数を具現化する命令424(例えば、ソフトウェア)が格納される機械可読媒体422を含む。また、命令424(例えば、ソフトウェア)は、コンピュータシステム400によるその実行の間に、メインメモリ404内、またはプロセッサ402内(例えば、プロセッサのキャッシュメモリ内)に完全に、または少なくとも部分的に存在してよく、メインメモリ404及びプロセッサ402はまた、機械可読媒体を構成する。命令424(例えば、ソフトウェア)は、ネットワークインターフェースデバイス420を介し、ネットワーク426を介して伝送、または受信されてもよい。
【0059】
機械可読媒体422は、例示的な実施形態では単一の媒体であることが示されているが、「機械可読媒体」という用語は、命令を格納できる単一の媒体または様々な媒体(例えば、集中型または分散型データベース、またはキャッシュまたはサービスに関連付けられた)であってもよい。「機械可読媒体」という用語は、また、装置によって実行するための命令(例えば、命令424)を格納することができ、装置に、ここで開示される1つまたは複数の方法論の実行させる任意の媒体を含むと解釈されるべきである。「機械可読媒体」という用語は、固体メモリ、光学媒体、及び磁気媒体の形のデータリポジトリを含むが、これらに限定されない。
【0060】
[推奨事項の出力処理]
図5は、
図1の在庫カタログ管理システムを使った推奨事項の出力処理を説明する図である。
【0061】
在庫カタログ管理システム140は、ソースデータベースのエントリから説明的なテキストデータを受信する501。例えば、在庫カタログ管理システム140の表現生成部200は、企業120のソースデータベース121のエントリから「chicken sld」を受信する。
【0062】
在庫カタログ管理システム140は、記述的テキストデータを第1の符号化部に入力する502。例えば、表現生成部200のテキスト符号化部201は、記述的テキストデータを入力として受け取ってもよい。次に、テキスト符号化部201は、記述的テキストデータを分析して、品目スコアのベクトルを生成してもよい。例えば、テキスト符号化部201は、「chicken sld」を分析し、説明的なテキストデータが与えられた候補アイテムに対応する少なくとも1つの程度(例えば、品目スコアのベクトルの少なくとも1つの値)を決定する。テキスト符号化部201は、上記の式1を使用してこの決定を行ってもよく、これにより、符号化部201は、製品説明内の単語が与えられた候補アイテムに属するという対数尤度を計算することを許容する。例えば、テキスト符号化部201は、受信した記述テキストデータ「chicken sld」に基づいて、アイテムスコアベクトル[0.39、0.75、-0.31、0.13、0.03]を決定する。品目スコアベクトルのこの例は、在庫アイテム「chicken salad」を表す固有のベクトルに対応していてもよい。
【0063】
在庫カタログ管理システム140は、品目スコアのベクトルを受信する503。例えば、在庫カタログ管理システム140は、テキスト符号化部201によって生成された品目スコアベクトルを受信する。
【0064】
在庫カタログ管理システム140は、品目スコアのベクトルを第2の符号化部に入力する504。例えば、在庫カタログ管理システム140は、品目スコアのベクトルを表現生成部200の親和性符号化部202に入力する。
【0065】
在庫カタログ管理システムは、候補アイテムの特徴表現及び候補アイテムに対する人間の好みを生成する505。例えば、親和性符号化部202は、企業120及び130及び/またはクライアント装置150から人的特性データを受信して、人的特性データ(例えば、「菜食主義者」及び「高齢者」)における品目スコアの受信されたベクトルの各値について、人的特性データにおける各人の間の好みの親和性を表すベクトル及び受信された品目スコア(例えば、「タンパク質」及び「飲料」)
のベクトルの値を決定する。
図5には示されていないが、特徴表現は、在庫カタログ管理システム140によって生成され、予測された親和性と、在庫カタログ管理システム140(例えば企業120及び130から)によって受信された経験的な親和性におけるエラーを最小化するために、最適化ターゲットに対して最適化部203によって最適化されてもよい。生成された特徴表現は、他の予測される親和性の中でも、菜食主義者がチキンサラダに対して低い親和性を持っていることを示し得る。
【0066】
在庫カタログ管理システム140は、特徴表現に基づく推奨事項を出力する506。例えば、製品親和性推奨部250は、「チキンサラダ」の特徴表現及び人的特性データ(例えば、顧客が菜食主義者であることを示すユーザプロファイルデータ)に基づいて推奨事項を生成してもよい。製品親和性推奨部250は、在庫カタログ管理システム140によって「チキンサラダ」の特徴表現を含むように生成された在庫表現と、菜食主義者の顧客に対応する顧客表現との内積を取り、顧客が「チキンサラダ」に対する親和性は定量的に低いが、「ビーフサラダ」に対する親和性は高いと判断してもよい。
【0067】
[追加構成の考察]
開示された構成の利益及び有利な点の例には、非常に可変的な製品の説明から製品の推奨事項を生成するためのテキスト符号化が含まれる。ここに記載の在庫カタログ管理システムは、製品説明データ及び人的特性データを受信し、受信したデータを使用して、製品及び製品に対する顧客の親和性の両方を説明する特徴表現を生成する。
【0068】
本明細書を通じて、複数の事例は、単一の事例として説明される構成、動作、または構造を実装してもよい。1つまたは複数の方法の個々の動作が別個の動作として図示、及び説明されているが、個々の動作の1つまたは複数を同時に実行することができ、図示されている順序で動作を実行する必要はない。例示的な構成において別個の構成要素として提示された構造及び機能は、組み合わされた構造または構成要素として実装され得る。同様に、単一の構成成分として提示される構造、及び機能は、別個の構成要素として実装されてもよい。これら、他の変形例、修正、追加、及び改善は、本明細書の主題の範囲内にある。
【0069】
ここでは、特定の実施形態は、論理もしくはいくつかの構成要素、またはモジュールもしくは機構を含むものとして説明される。モジュールは、ソフトウェアモジュール(例えば、機械可読媒体上、または伝送信号内で実施されるコード)、またはハードウェアモジュールのいずれかを構成することができる。ハードウェアモジュールは、特定の動作で実行することが可能な有形のユニットであり、特定の方法で構成、または配置してもよい。例示的な実施形態において、1つもしくは複数のコンピュータシステム(例えば、スタンドアローン、クライアントまたはサーバコンピュータシステム)、またはコンピュータシステム(例えば、プロセッサもしくはプロセッサのグループ)の1つもしくは複数のハードウェアエンジンは、本明細書で説明されるような一定の演算を実行するように動作するハードウェアエンジンとして、ソフトウェア(例えば、アプリケーションまたはアプリケーション部分)によって構成されてもよい。
【0070】
さまざまな実施形態において、ハードウェアモジュールは、機械的、または電子的に実装されてよい。例えば、ハードウェアモジュールは、特定の機能を実行するように永続的に構成された(例えば、フィールドプログラマブルゲートアレイ(FPGA)、または特定の動作を実行するための特定用途向け集積回路(ASIC)等の特定用途プロセッサとして)専用の回路、または論理を備えてもよい。また、ハードウェアモジュールは、ソフトウェアによって一時的に構成されるプログラム可能な論理、または回路(例えば、汎用プロセッサ、または他のプログラム可能なプロセッサ内に包含されるもの)を含んでもよく、特定の動作を実行する。専用の永続的に構成される回路、または一時的に構成される回路(例えば、ソフトウェアによって構成される)において、ハードウェアモジュールを機械的に実装する判断は、コスト、及び時間を考慮して駆動され得ると認識されることになる。
【0071】
したがって、「ハードウェアモジュール」という用語は、特定の方法で動作するように、またはここで説明する特定の動作を実行するように物理的に構築され、永続的に構成された(例えば、配線された)、または一時的に構成された(例えば、プログラムされた)実在物である、有形の実在物を包含すると理解されるべきである。ここで用いられるように、「ハードウェア実装モジュール」は、ハードウェアモジュールを参照する。ハードウェアモジュールが一時的に構成(例えば、プログラム化)される実施形態を考慮すると、それぞれのハードウェアモジュールは、時間内に、任意の1つの事例で構成、または事例化される必要はない。例えば、ハードウェアモジュールがソフトウェアで構成された汎用プロセッサで構成されている場合、その汎用プロセッサは、異なる時期にそれぞれ異なるハードウェアモジュールとして構成されてもよい。したがって、ソフトウェアは、例えば、ある時に特定のハードウェアモジュールを構成し、別の時に異なるハードウェアモジュールを構成するようプロセッサを構成してもよい。
【0072】
ハードウェアモジュールは、情報を他のハードウェアモジュールへ提供したり、情報を他のハードウェアモジュールから受信したりすることが可能である。したがって、説明されるハードウェアモジュールは、通信可能に結合されているとみなし得る。そのような様々なハードウェアモジュールが同時に存在する場合、通信は、ハードウェアモジュールを接続する信号送信(例えば、適切な回路及びバスを介して)を介して達成され得る。複数のハードウェアモジュールが異なるときに構成、または例示される実施形態において、そのようなハードウェアモジュール間の通信は、例えば、複数のハードウェアモジュールがアクセスするメモリ構造の中の情報の格納、及び検索を通じて達成することができる。例えば、1つのハードウェアモジュールは、動作を実行し、その動作の出力を、通信可能に結合されているメモリデバイスの中に格納してもよい。次に、さらなるハードウェアモジュールは、その後、メモリデバイスにアクセスし、格納された出力を回収、及び処理してもよい。ハードウェアモジュールは、入力デバイスとの、または出力デバイスとの通信を開始してもよく、リソース(例えば、情報の収集)を操作することが可能である。
【0073】
ここで説明される例示的な方法のさまざまな動作は、関連する動作を実行するよう一時的に(例えば、ソフトウェアによって)、または永続的に構成される1つまたは複数のプロセッサによって少なくとも部分的に実行してもよい。一時的に、または永続的に構成され、そのようなプロセッサは、1つまたは複数の操作もしくは機能を実行するよう動作するプロセッサ実装モジュールを構成してもよい。ここで参照されるモジュールは、いくつかの例示的な実施形態において、プロセッサ実装モジュールを含んでもよい。
【0074】
同様に、ここで説明される方法は、少なくとも部分的にプロセッサに実装されてもよい。例えば、方法の動作の少なくともいくつかは、1つまたは複数のプロセッサもしくはプロセッサ実装ハードウェアモジュールによって実行してもよい。一定の演算の実行は、1つまたは複数のプロセッサ間で分散されてもよく、単一のマシン内に存在するだけではなく、複数のマシンにわたり展開される。いくつかの例示的な実施形態において、単一のプロセッサ、または複数のプロセッサは、単一の場所(例えば、家庭環境内に、オフィス環境内、またはサーバーファームとして)配置してもよく、一方、他の実施形態おいて、プロセッサは、いくつかの場所に渡って分散してもよい。
【0075】
1つまたは複数のプロセッサはまた、「クラウドコンピューティング」環境における、または「サービスとしてのソフトウェア」(SASG)としての関連する動作の実行をサポートするように動作してもよい。例えば、少なくともいくつかの動作は、(プロセッサを含むマシンの例として)コンピュータのグループによって実行されてよく、これらの動作は、ネットワーク(例えば、インターネット)、及び1つまたは複数の適切なインターフェース(例えば、アプリケーションプログラミングインターフェース(APIs))を介してアクセス可能である。
【0076】
一定の演算の実行は、1つまたは複数のプロセッサ間で分散されてもよく、単一のマシン内に存在するだけではなく、複数のマシンにわたって展開されてもよい。いくつかの実施形態において、1つまたは複数のプロセッサまたはプロセッサが実装されたモジュールは、単一の地理的な場所(例えば、ホーム環境、オフィス環境、またはサーバーファーム内)に配置されてもよい。他の実施形態において、1つまたは複数のプロセッサまたはプロセッサが実装されたモジュールは、複数の地理的な場所に分散されてもよい。
【0077】
本明細書の一部は、機械メモリ(例えば、コンピュータメモリ)内のビット、またはバイナリデジタル信号として格納されたデータにおける動作のアルゴリズム、または記号表現の観点から提示される。これらのアルゴリズム、または記号表現は、データ処理分野における当業者が彼らの仕事の内容を他の当業者に伝えるよう用いる技術の例である。ここで用いられるように、「アルゴリズム」は、所望の結果へ導く首尾一貫した一連の動作、または同様の処理である。この文脈において、アルゴリズム、及び動作は、物理量の物理的操作を伴う。通常、必ずしもではなく、そのような量は、マシンによって、格納すること、アクセスすること、変換すること、結合すること、比較すること、またはさもなければ操作することが可能である電気的、磁気的、または光学的な信号の形態を取ってもよい。主に一般的な使用法の理由から、「データ」、「コンテンツ」、「ビット」、「値」、「要素」、「記号」、「文字」、「用語」、「数字」、「数字」またはそのような単語を使用して信号を参照すると便利な場合がある。しかしながら、これらの単語は、単に便利なラベルに過ぎなく、且つ適切な物理量に関連付けられている。
【0078】
特に明記しない限り、「処理する」、「コンピュータ処理する」、「計算する」、「決定する」、「提示する」、「表示する」等の単語を使用するここでの議論は、1つまたは複数のメモリ(例えば、揮発性メモリ、不揮発性メモリ、またはそれらの組み合わせ)、レジスタ、または情報を受信、保存、送信、または表示するその他のマシンの構成要素の物理的(例えば、電子的、磁気的、または光学的)量として表されるデータを操作または変換するマシンの動作またはプロセスを指してもよい(例えば、コンピュータ)。
【0079】
ここで使用される場合、「一実施形態」または「実施形態」への任意の言及は、実施形態に関連して説明される特定の要素、特徴、構造、または特性が少なくとも1つの実施形態に含まれることを意味する。本明細書における様々場所において、「一実施形態において」という表現の説明は、必ずしもすべてが同一の実施形態を参照しているわけではない。
【0080】
いくつかの実施形態は、それらの派生物と共に「結合された」及び「接続された」という表現を使用して説明されてもよい。これらの用語は、互いに同義語として意図されていないことに理解されたい。例えば、2つ以上の要素が物理的または電気的に直接接触していることを示すために、「接続されている」という用語を使用して、いくつかの実施形態を説明してもよい。しかしながら、また、「結合した」という用語は、2つまたはそれより多くの要素が互いに直接接触していないが、依然として互いに協働または相互作用することを意味してもよい。
【0081】
本明細書で使用される場合、「含む」、「含んでいる」、「含む」、「含んでいる」、「有する」、「有している」またはそれらの他の任意の変形という用語は、非排他的な包含を包含することを意図する。例えば、要素のリストを備えるプロセス、方法、条項、もしくは装置は、必ずしもそれらの要素のみに限定されるのではなく、そのようなプロセス、方法、条項、もしくは装置に明示的に記載されていない、または内在する他の要素を含む場合がある。
【0082】
さらに、「a」または「an」の使用は、ここでの実施形態の要素及び構成要素を説明するために使用される。これは、単に便宜上、及び本発明の一般的な意味を付与するために行われているに過ぎない。本説明は、1つまたは少なくとも1つを含むものであり、また、そうでないことを意味することが明らかでない限り、単数形が複数形を含むように読まれるべきである。
【0083】
本開示を読むと、当業者は、本明細書に開示された原則を通じて、個人化された推奨事項のためにテキストデータを符号化するためのシステム及びプロセスのためのさらに追加の代替の構造的及び機能的設計を理解するであろう。したがって、特定の実施形態及び適用例が例示され、説明されてきたが、開示される実施形態は、ここで開示される厳密な構造及び構成要素に限定されないことが、理解されたい。当業者には明らかであろう様々な変形、変更、およびバリエーションは、添付の特許請求の範囲において定義される趣旨および範囲から逸脱せずに、ここで開示される方法および装置の構成、動作および詳細において行われることができる。
【国際調査報告】