(57)【要約】      （修正有）【課題】質問ユーザーに対する適確なレコメンデーションを生成すること。【解決手段】質問ユーザーに関連する（個別化されたレーティングをオプションに関連付ける）個別化されたレーティング・ベクトルを生成する。ユーザー・ベクトルと、関連ウェイトと、特徴ベクトルとの要素毎の乗算により生成される。ユーザー・ベクトルはユーザー・レーティングを質問ユーザー及びオプションに関連付ける。関連ウェイトは質問ユーザーの特徴に関連付けられる。特徴ベクトルは、特徴レーティングをユーザー特徴及びオプションに関連付ける。ユーザー特徴は質問ユーザーの特徴に少なくとも部分的に対応する。個別化されたレーティング・ベクトルに少なくとも部分的に基づいて、質問ユーザーに対するレコメンデーションを生成する工程を含み、レコメンデーションは、個別化されたレーティング・ベクトルのオプションのうちの少なくとも１つのオプションに関連している。【選択図】図１
2017199355.tif 000002
【特許請求の範囲】
【請求項１】
質問ユーザーに関連する個別化されたレーティング・ベクトルを生成する工程と、前記個別化されたレーティング・ベクトルに少なくとも部分的に基づいて、前記質問ユーザーに対するレコメンデーションを生成する工程とを有する方法であって：
前記個別化されたレーティング・ベクトルは、個別化されたレーティングをオプションに関連付け、
前記個別化されたレーティング・ベクトルは、
ユーザー・レーティングを前記質問ユーザー及び前記オプションに関連付けるユーザー・ベクトルと；
前記質問ユーザーの特徴に関連する関連ウェイトと；
特徴レーティングをユーザー特徴及び前記オプションに関連付ける特徴ベクトルと；の要素毎の乗算により生成され、
前記ユーザー特徴は、前記質問ユーザーの特徴に少なくとも部分的に対応し；
前記レコメンデーションは、前記個別化されたレーティング・ベクトルのオプションのうちの少なくとも１つのオプションに関連している、方法。
【請求項２】
前記ユーザー・ベクトルは、前記質問ユーザーに関連するレーティング・マトリクスの一部に対応し、前記レーティング・マトリクスは、ユーザー・レーティングを、前記個別化されたレーティング・マトリクスのオプションに関連付け、前記ユーザーは、前記質問ユーザーを含むユーザー・レーティングに関連付けられる、請求項１に記載の方法。
【請求項３】
前記個別化されたレーティング・ベクトルは、
【数１】
2017199355.tif 000021
により表現され、「＊」は要素毎の乗算を表現し、ＸＥはレーティング・マトリクスを表現し、ＸＥ［Ｕ，］はユーザー・ベクトルを表現し、Ｕは前記質問ユーザーを表現し、（Σｋαｐｋ）−μｓは前記関連ウェイトを表現し、ｋはプライベート因子を表現し、αｐｋは前記プライベート因子に関連する対応する精度を表現し、μｓはスケーリング因子を表現し、ＸＣは特徴ベクトルを含む特徴マトリクスを表現し、前記特徴マトリクスは特徴レーティングをユーザー特徴及びオプションに関連付け、前記ユーザー特徴は複数のユーザー特徴に含まれるものであり、ＸＣ［Ｃ，］は前記特徴ベクトルを表現し、Ｃは前記ユーザー特徴を表現する、請求項２に記載の方法。
【請求項４】
値が不足した部分的なリレーショナル・マトリクスを構成する工程；
前記部分的なリレーショナル・マトリクスを集団的に分解する工程；及び
前記部分的なリレーショナル・マトリクスのうち不足した値に関する予測を含む完全なリレーショナル・マトリクスを生成する工程であって、前記完全なリレーショナル・マトリクスは、前記レーティング・マトリクス及び前記特徴マトリクスを含む、工程；
を更に有する請求項３に記載の方法。
【請求項５】
前記部分的なリレーショナル・マトリクスを構成する工程、前記部分的なリレーショナル・マトリクスを集団的に分解する工程、及び、前記完全なリレーショナル・マトリクスを生成する工程が、グループ・スパース埋め込みによる集団マトリクス・ファクトリゼーションに少なくとも部分的に基づいて実行される、請求項４に記載の方法。
【請求項６】
前記ユーザー特徴が前記ユーザーの年齢層を含み、前記ユーザー特徴が、前記質問ユーザーの年齢に対応する年齢層を含む、請求項３に記載の方法。
【請求項７】
前記ユーザー特徴が前記ユーザーの性別を含み、前記ユーザー特徴が、前記質問ユーザーの性別に対応する性別を含む、請求項３に記載の方法。
【請求項８】
前記個別化されたレーティング・ベクトルが第１の個別化されたレーティング・ベクトルを含み、前記関連ウェイトが第１関連ウェイトを含み、前記質問ユーザーの特徴が前記質問ユーザーの第１特徴を含み、前記特徴ベクトルが第１特徴ベクトルを含み、前記ユーザー特徴が第１ユーザー特徴を含み、
前記方法は、前記質問ユーザーに関連する第２の個別化されたレーティング・ベクトルを生成する工程を更に含み、前記第２の個別化されたレーティング・ベクトルは、個別化されたレーティングを第１の個別化されたレーティング・ベクトルのオプションに関連付け、
前記第２の個別化されたレーティング・ベクトルは、
前記ユーザー・ベクトルと；
前記質問ユーザーの第２特徴に関連する第２関連ウェイトと；
特徴レーティングを第２ユーザー特徴及び前記オプションに関連付ける第２特徴ベクトルと；の要素毎の乗算により生成され、
前記第２ユーザー特徴は前記質問ユーザーの第２特徴に少なくとも部分的に対応する、請求項１に記載の方法。
【請求項９】
前記第１の個別化されたレーティング・ベクトル及び前記第２の個別化されたレーティング・ベクトルの要素毎の乗算に少なくとも部分的に基づいて、第３の個別化されたレーティング・ベクトルに少なくとも部分的に基づいて、前記質問ユーザーに対する前記レコメンデーションを生成する、請求項８に記載の方法。
【請求項１０】
前記第３の個別化されたレーティング・ベクトルは、
【数２】
2017199355.tif 000022
により表現され、「＊」は要素毎の乗算を表現し、ＸＥはレーティング・マトリクスを表現し、ＸＥ［Ｕ，］はユーザー・ベクトルを表現し、Ｕは前記質問ユーザーを表現し、（Σｋαｐ１ｋ）−μｓ１は前記第１関連ウェイトを表現し、ｋはプライベート因子を表現し、αｐ１ｋは前記プライベート因子に対する第１ユーザー特徴に関連する精度を表現し、μｓ１は前記第１特徴に関連する第１スケーリング因子を表現し、ＸＣ１は第１特徴ベクトルを含む第１特徴マトリクスを表現し、前記第１特徴マトリクスは、特徴レーティングを、第１ユーザー特徴と、前記第１の個別化されたレーティング・ベクトルのオプションとに関連付け、前記第１ユーザー特徴は前記第１ユーザー特徴を含み、ＸＣ１［Ｃ１，］は前記第１特徴ベクトルを表現し、Ｃ１は前記第１ユーザー特徴を表現し、
（Σｋαｐ２ｋ）−μｓ２は前記第２関連ウェイトを表現し、αｐ２ｋは前記プライベート因子に対する第２ユーザー特徴に関連する精度を表現し、μｓ２は前記第２特徴に関連する第２スケーリング因子を表現し、ＸＣ２は第２特徴ベクトルを含む第２特徴マトリクスを表現し、前記第２特徴マトリクスは、特徴レーティングを、第２ユーザー特徴と、前記第１の個別化されたレーティング・ベクトルのオプションとに関連付け、前記第２ユーザー特徴は前記第２ユーザー特徴を含み、ＸＣ２［Ｃ２，］は前記第２特徴ベクトルを表現し、Ｃ２は前記第２ユーザー特徴を表現する、請求項９に記載の方法。
【請求項１１】
前記第１ユーザー特徴は前記質問ユーザーの年齢に対応する年齢層を含み；及び
前記第２ユーザー特徴は前記質問ユーザーの性別に対応する性別を含む；
請求項１０に記載の方法。
【請求項１２】
値が不足した部分的なリレーショナル・マトリクスを構成する工程；
前記部分的なリレーショナル・マトリクスを集団的に分解する工程；及び
前記部分的なリレーショナル・マトリクスのうち不足した値に関する予測を含む完全なリレーショナル・マトリクスを生成する工程であって、前記完全なリレーショナル・マトリクスは、前記レーティング・マトリクス、前記第１特徴マトリクス及び前記第２特徴マトリクスを含む、工程；
を更に含む請求項１０に記載の方法。
【請求項１３】
前記部分的なリレーショナル・マトリクスを構成する工程、前記部分的なリレーショナル・マトリクスを集団的に分解する工程、及び、前記完全なリレーショナル・マトリクスを生成する工程が、グループ・スパース埋め込みによる集団マトリクス・ファクトリゼーションに少なくとも部分的に基づいて実行される、請求項１２に記載の方法。
【請求項１４】
オペレーションをプロセッサに実行させるプログラミング・コードをエンコードした非一時的なコンピュータ読み取り可能な媒体であって、前記オペレーションは、質問ユーザーに関連する個別化されたレーティング・ベクトルを生成する工程と、前記個別化されたレーティング・ベクトルに少なくとも部分的に基づいて、前記質問ユーザーに対するレコメンデーションを生成する工程とを有し、
前記個別化されたレーティング・ベクトルは、個別化されたレーティングをオプションに関連付け、
前記個別化されたレーティング・ベクトルは、
ユーザー・レーティングを前記質問ユーザー及び前記オプションに関連付けるユーザー・ベクトルと；
前記質問ユーザーの特徴に関連する関連ウェイトと；
特徴レーティングをユーザー特徴及び前記オプションに関連付ける特徴ベクトルと；の要素毎の乗算により生成され、
前記ユーザー特徴は、前記質問ユーザーの特徴に少なくとも部分的に対応し；
前記レコメンデーションは、前記個別化されたレーティング・ベクトルのオプションのうちの少なくとも１つのオプションに関連している、コンピュータ読み取り可能な媒体。
【請求項１５】
前記個別化されたレーティング・ベクトルは第１の個別化されたレーティング・ベクトルを含み、前記関連ウェイトが第１関連ウェイトを含み、前記質問ユーザーの特徴が前記質問ユーザーの第１特徴を含み、前記特徴ベクトルが第１特徴ベクトルを含み、前記ユーザー特徴が第１ユーザー特徴を含み、
前記オペレーションは、前記質問ユーザーに関連する第２の個別化されたレーティング・ベクトルを生成する工程を更に含み、前記第２の個別化されたレーティング・ベクトルは、個別化されたレーティングを第１の個別化されたレーティング・ベクトルのオプションに関連付け、
前記第２の個別化されたレーティング・ベクトルは、
前記ユーザー・ベクトルと；
前記質問ユーザーの第２特徴に関連する第２関連ウェイトと；
特徴レーティングを第２ユーザー特徴及び前記オプションに関連付ける第２特徴ベクトルと；の要素毎の乗算により生成され、
前記第２ユーザー特徴は前記質問ユーザーの第２の特徴に少なくとも部分的に対応する、請求項１４に記載のコンピュータ読み取り可能な媒体。
【請求項１６】
前記第１の個別化されたレーティング・ベクトル及び前記第２の個別化されたレーティング・ベクトルの要素毎の乗算に少なくとも部分的に基づいて、第３の個別化されたレーティング・ベクトルに少なくとも部分的に基づいて、前記質問ユーザーに対する前記レコメンデーションを生成する、請求項１５に記載のコンピュータ読み取り可能な媒体。
【請求項１７】
前記第３の個別化されたレーティング・ベクトルは、
【数３】
2017199355.tif 000023
により表現され、「＊」は要素毎の乗算を表現し、ＸＥはレーティング・マトリクスを表現し、ＸＥ［Ｕ，］はユーザー・ベクトルを表現し、Ｕは前記質問ユーザーを表現し、（Σｋαｐ１ｋ）−μｓ１は前記第１関連ウェイトを表現し、ｋはプライベート因子を表現し、αｐ１ｋは前記プライベート因子に対する第１ユーザー特徴に関連する精度を表現し、μｓ１は前記第１特徴に関連する第１スケーリング因子を表現し、ＸＣ１は第１特徴ベクトルを含む第１特徴マトリクスを表現し、前記第１特徴マトリクスは、特徴レーティングを、第１ユーザー特徴と、前記第１の個別化されたレーティング・ベクトルのオプションとに関連付け、前記第１ユーザー特徴は前記第１ユーザー特徴を含み、ＸＣ１［Ｃ１，］は前記第１特徴ベクトルを表現し、Ｃ１は前記第１ユーザー特徴を表現し、
（Σｋαｐ２ｋ）−μｓ２は前記第２関連ウェイトを表現し、αｐ２ｋは前記プライベート因子に対する第２ユーザー特徴に関連する精度を表現し、μｓ２は前記第２特徴に関連する第２スケーリング因子を表現し、ＸＣ２は第２特徴ベクトルを含む第２特徴マトリクスを表現し、前記第２特徴マトリクスは、特徴レーティングを、第２ユーザー特徴と、前記第１の個別化されたレーティング・ベクトルのオプションとに関連付け、前記第２ユーザー特徴は前記第２ユーザー特徴を含み、ＸＣ２［Ｃ２，］は前記第２特徴ベクトルを表現し、Ｃ２は前記第２ユーザー特徴を表現する、請求項１６に記載のコンピュータ読み取り可能な媒体。
【請求項１８】
前記第１ユーザー特徴は前記質問ユーザーの年齢に対応する年齢層を含み；及び
前記第２ユーザー特徴は前記質問ユーザーの性別に対応する性別を含む；
請求項１７に記載のコンピュータ読み取り可能な媒体。
【請求項１９】
値が不足した部分的なリレーショナル・マトリクスを構成する工程；
前記部分的なリレーショナル・マトリクスを集団的に分解する工程；及び
前記部分的なリレーショナル・マトリクスのうち不足した値に関する予測を含む完全なリレーショナル・マトリクスを生成する工程であって、前記完全なリレーショナル・マトリクスは、前記レーティング・マトリクス、前記第１特徴マトリクス及び前記第２特徴マトリクスを含む、工程；
を前記オペレーションが更に含む請求項１７に記載のコンピュータ読み取り可能な媒体。
【請求項２０】
前記部分的なリレーショナル・マトリクスを構成する工程、前記部分的なリレーショナル・マトリクスを集団的に分解する工程、及び、前記完全なリレーショナル・マトリクスを生成する工程が、グループ・スパース埋め込みによる集団マトリクス・ファクトリゼーションに少なくとも部分的に基づいて実行される、請求項１９に記載のコンピュータ読み取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本願で開示される実施形態はレコメンデーションの生成に関連する。
【背景技術】
【０００２】
現代のシステムは比較的多くの選択肢をユーザーに提示している。例えば、販売されている製品、鑑賞する映画、聴くための歌、読むための書籍などのような大量のものを提示している。これら及び他のシステムは、システムのユーザーにオプションのレコメンデーションを提供するようにレコメンデーション・システムを利用して、ユーザーに関連するオプションとともにユーザーに提示しようとする。正確なレコメンデーション・システムを使用することは、特定のシステムに対するユーザーの満足度を向上させる。
【０００３】
そのようなレコメンデーション・システムは協調フィルタリング(collaborative  filtering)を使用し、協調フィルタリングは、新たなユーザーと製品との関係を識別するために、ユーザー間の関係と製品間の相互依存性とを分析することを含んでよい。協調フィルタリングは、近傍法(neighborhood  method)及び潜在因子法(latent  factor  method)を含んでもよい。
【０００４】
近傍法は、ユーザー及び/又は製品の間の関連性を算出し、製品についてのユーザーの好みを評価することを含む。潜在因子法は、格付けパターンから推定される一群の因子によりユーザー及び製品の双方を特徴付けることで、格付けをモデル化しようとする。
【０００５】
本願で対象とされる事項は、何れの欠点をも解決する実施形態には限定されず、また、上述したような環境でしか動作しない実施形態にも限定されない。むしろ、この背景技術の欄は、本願で説明される実施形態が実施されてもよい技術分野の一例を示すために提供されているに過ぎない。
【発明の概要】
【０００６】
実施形態の一側面によれば、本方法は、質問ユーザーに関連する個別化されたレーティング・ベクトルを生成することを含む。個別化されたレーティング・ベクトルは、個別化されたレーティングをオプションに関連付ける。個別化されたレーティング・ベクトルは、ユーザー・ベクトルと、関連ウェイトと、特徴ベクトルとの要素毎の乗算により生成される。ユーザー・ベクトルはユーザー・レーティングを質問ユーザー及びオプションに関連付ける。関連ウェイトは質問ユーザーの特徴に関連付けられる。特徴ベクトルは、特徴レーティングをユーザー特徴及びオプションに関連付ける。ユーザー特徴は質問ユーザーの特徴に少なくとも部分的に対応する。本方法は、個別化されたレーティング・ベクトルに少なくとも部分的に基づいて、質問ユーザーに対するレコメンデーションを生成することを含み、レコメンデーションは、個別化されたレーティング・ベクトルのオプションのうちの少なくとも1つのオプションに関連している。
【０００７】
実施形態の目的及び効果は、少なくとも請求項に具体的に示される要素、特徴及び組み合わせにより実現及び達成される。
【０００８】
上記の一般的な説明及び以下の詳細な説明は何れも模範的及び説明的なものであり、請求項の限定ではないことが理解されるべきである。
【図面の簡単な説明】
【０００９】
実施形態は、添付図面を利用することにより更なる具体性及び詳細とともに記述及び説明される。
【００１０】
【図１】例示的なレコメンデーション・システムを示す図。
【００１１】
【図２】例示的なレーティング・マトリクスを示す図。
【００１２】
【図３】例示的な特徴マトリクスを示す図。
【００１３】
【図４】別の例による特徴マトリクスを示す図。
【００１４】
【図５】方法例のフローチャートを示す図。
【００１５】
【図６】例示的なデータ融合プロセスのブロック図。
【発明を実施するための形態】
【００１６】
協調フィルタリングのための潜在因子法は、マトリクス・ファクトリゼーション法(matrix  factorization  method)(又は行列分解法)を含む。シングル・ビュー(Single-view)マトリクス・ファクトリゼーション法は、行列を2つの行列の直積として近似することにより、低ランク表現を提供する。例えば、「X」により表現される「n  x  d」行列は、U_1により表現される「n  x  k」行列およびU_2により表現される「d  x  k」行列のような2つのランクk行列により表現される。すなわち、例えばXは次の数式によって表現される：
【数１】
2017199355.tif 000003
【００１７】
具体例として、Xは、d個の映画に対するn人のユーザーの格付けを含むとする(「格付け」は「レーティング」等と言及されてもよい)。行列U_1及びU_2は、それぞれ、k個の因子のベクトルにより特徴付けられるユーザー、及び、格付けパターンから推定されるk個の因子のベクトルにより特徴付けられる映画を含む。因子は潜在因子として言及されてよい。潜在因子の具体例は、重大さ(seriousness)、及びジェンダー・アピール(gender  appeal)等を含んでもよい。そのようなマトリクス・ファクトリゼーション法は、格付けに影響する1つより多い因子の影響を捕らえないかもしれない。例えば、そのようなマトリクス・ファクトリゼーション法は、ユーザーと映画、映画と役者、等々のジョイント・モデリングを提供しないかもしれない。
【００１８】
従来のマルチ・ビュー(multi-view)マトリクス・ファクトリゼーション法は、格付けに影響する複数の因子を考慮することを促す。マルチ・ビュー・マトリクス・ファクトリゼーションは、同じ行のエンティティではあるが異なる列のエンティティを共有する行列を使用する。例えば、第1行列は、d_1個の映画に対するn人のユーザーの格付けを含んでよい。第2行列は、d_2個のプロフィール特徴に対するn人のユーザーの分類を含んでよい、等々である。
【００１９】
従来の拡大されたマルチ・ビュー集団(collective)マトリクス・ファクトリゼーションは、マルチ・ビュー行列を補完する行列を含む。例えば、第1行列は、d_1個の映画に対するn人のユーザーの格付けを含んでよい。第2行列は、d_1個の映画に対するd_2個のプロパティの分類を含んでよい。第3行列は、n人のユーザーに対するd_2個のプロパティの分類を含んでよい。そのようなマトリクス・ファクトリゼーションは、それらの行列を、互いに直接的に関連するものとして取り扱っており、使用される行列の変動を記述するものとして潜在因子を取り扱っている。例えば、映画のジャンル及び上映時間が潜在因子である場合、集団マトリクス・ファクトリゼーションは、映画の推薦に使用される場合に、ジャンル及び上映時間の双方を等しい重要度として取り扱うかもしれない。
【００２０】
グループ・スパース埋め込み(group-sparse  embedding)による従来の集団マトリクス・ファクトリゼーションは、集団マトリクス・ファクトリゼーションの枠組みにおける因子に関し、グループ毎の希薄化(group-sparse  embedding)の制約を加えることで(グループ・スパース埋め込みと言及されてもよい)、行列の任意の部分集合に対して個別的な因子の利用を促す。集団マトリクス・ファクトリゼーションにおけるグループ・スパース埋め込みの具体例については、「Klami,  et  al,  Group-sparse  Embeddings  in  Collective  Matrix  Factorization,  International  Conference  on  Representational  Learning,  2014」に記載されており、その内容は本願のリファレンスに組み込まれる。そのようなマトリクス・ファクトリゼーションは、関連する行列のうちの不足した値を予測するかもしれないが、特定の関係に対する予測の改善のための個々の行列に対する予測された格付けのフィードバックを行わない。
【００２１】
本願で議論される実施形態は、特定のユーザーに対するレコメンデーション(又は推薦)を改善するために、集団マトリクス・ファクトリゼーションを拡張する。例えば、グループ・スパース埋め込みによる集団マトリクス・ファクトリゼーションで生成される不足した値(missing  value)は、ユーザー・プロファイルの要素を考慮するユーザー固有のアドバイス・レコメンデーションを個別化するために使用されてもよい。考察される要素は、年齢又はユーザーの年齢層、ユーザーの性別などを含んでもよい。一実施形態は、ユーザーに対するレコメンデーションを生成する場合における、レコメンデーション・エンジンの精度を改善する。従って、例えば、実施形態はレコメンデーション・エンジンの技術を改善する。
【００２２】
一実施形態では、拡張された集団マトリクス・ファクトリゼーションは、特定のユーザーの特徴に基づいて、特定のユーザーに対するアドバイス・レコメンデーションを生成するように構成されてよい。アドバイス・レコメンデーションは、将来の活動に関するガイダンスを含んでよい。アドバイス・レコメンデーションは、ユーザーがストレス、退屈、疲労などを体験している場合のような比較的ネガティブな感情又は認識状態(cognitive  state)にあるユーザーにとって、比較的有意義であるかもしれない。アドバイス・レコメンデーションは、クラウド・ソーシングによるアドバイス・レーティングに基づいていてもよい。例えば、参加者は、「｛状態｝である場合に行うこと(what  to  do  when  {state})」等のような形式の質問に答えてもよい。ここで、「｛状態｝」は、「ストレスを受けている」、「疲れている」、「時間に制約がある」、「退屈している」等又はそれらの任意の組み合わせのようなユーザーの状態を表現してよい。代替的又は追加的に、参加者は、そのような質問等に対する回答について、レーティングを提供するように求められてもよい。
【００２３】
実施形態はアドバイス・レコメンデーションに限定されない。例えば、実施形態は、製品及び/又は活動のレコメンデーションを生成するように構成されてもよく、そのレコメンデーションは、例えば、旅行先、イベント、映画、音楽、書籍、食べ物、ビール、ワイン、考え方(spirits)、ボード・ゲーム、ビデオ・ゲーム等又はこれらの任意の組み合わせに対するレコメンデーションである。代替的又は追加的に、実施形態は、複数の様々に重み付けされる因子により影響を受けるプロパティに対応するレコメンデーションを生成するために使用されてよい。例えば、実施形態は、複数の遺伝子の複数の状態により影響を受ける病気のプロパティ；政府の政策、市場価格などのような複数の因子の影響を受ける株価のプロパティ；及び/又は、文化、目標、教育、年齢、性別、地理的な場所、職業などにより影響を受ける個人及び/又はグループの社会的行動のプロパティ；等に対応するレコメンデーションを生成してもよい。
【００２４】
以下、添付図面を参照しながら実施形態を説明する。
【００２５】
図1は例示的なレコメンデーション・システム100を示す図である。システム100は複数のユーザーを含んでよい。例えば、システム100は、ユーザー102a、ユーザー102b及びユーザー102c(まとめて「ユーザー102」と言及される場合がある)、並びに、更なるユーザーを含んでもよい。各々のユーザーは端末に関連付けられてよい。例えば、ユーザー102は、それぞれ、端末104a、端末104b及び端末104c(まとめて「端末104」と言及される場合がある)に関連付けられてよい。
【００２６】
端末104は、ネットワーク106と共に及びそれを通じて通信すること、メッセージを出力すること、及び/又は、ユーザーから入力を受けることが可能であってよい。例えば、端末104はコンピューティング・デバイスを含んでもよく、コンピューティング・デバイスは、例えば、スマートウォッチ、フィットネス・トラッキング・デバイス、スマートグラス、スマートフォン、デスクトップ・コンピュータ、ラップトップ・コンピュータ、タブレット・コンピュータ、スマートTV等又はそれらの任意の組み合わせであってよい。ネットワーク106は、インターネット、無線アクセス・ネットワーク、ワイド・エリア・ネットワーク、ローカル・エリア・ネットワーク、パーソナル・エリア・ネットワーク等又はそれらの任意の組み合わせを含んでもよい。
【００２７】
システム100は、ネットワーク106を介して端末104と通信することが可能なレコメンデーション・エンジン108を含む。システム100はユーザー/オプション・データベース110を更に含み、そのデータベースは、レコメンデーション・エンジン108からデータを受信し及び/又はそこへデータを提供する。
【００２８】
図2は例示的なレーティング・マトリクス200を示す。マトリクス200は、概して図1のユーザー/オプション・データベース110に対応するデータベースに含まれていてもよい。マトリクス200は、概して図1のレコメンデーション・エンジン108に対応するレコメンデーション・エンジンにより、生成、追加及び/又は利用されてよい。一実施形態において、マトリクス200は、X_1のように表現され、次の数式により規定されてもよい。
【数２】
2017199355.tif 000004
ここで、i及びjはそれぞれ行列の行及び列のインデックスを表現する。
【００２９】
マトリクス200は、ユーザーのレーティング202を、ユーザー204及びオプション206に関連付ける。ユーザー204は、概して図1のユーザー102に対応する。代替的又は追加的に、ユーザー204は、公に利用可能なレーティング・システム、オンライン小売サイトのためのレーティング・システム、アンケート結果、及び/又は、その他のレーティング・データベース等のような様々なレーティング・システムのユーザーを含んでもよい。本実施形態及び他の実施形態において、マトリクス200は、マトリクス200を利用するシステムのコンフィギュレーションに基づいて他の情報を関連付けてもよい。例えば、マトリクス200の各行は異なるユーザーを表現し、マトリクスの各列は異なるオプションを表現してもよい。マトリクス200は、d_1人のユーザー及びd_2個のオプションに関連付けられるレーティング202を表現してもよい。一実施形態において、レーティング202はポアソン分布を反映していてもよい。
【００３０】
具体例では、マトリクスの第1行が第1ユーザー204aに関連し、マトリクス200の第1列が第1オプション206aに関連付けられる。従って、例えば、第1行及び第1列の交点に位置するレーティングは、第1ユーザー204aにとっての第1オプション206aのレーティング(例えば、「3」というレーティング)を、マトリクス200に含まれる形式で表現する。レーティングは、第1ユーザーから受信されてもよいし及び/又は集団マトリクス・ファクトリゼーションにより導出されてもよい。例えば、レーティングは、第1オプション206aについて第1ユーザー204aにより与えられたレーティングを反映していてもよい。マトリクス200はユーザー・ベクトルを含んでもよい。例えば、第1行は、第1ユーザー204aに関連付けられるユーザー・ベクトルに関連付けられてもよい。第1ユーザーに関するユーザー・ベクトルは、レーティングを、第1ユーザー204a及びオプション206に関連付ける。
【００３１】
本実施形態及び他の実施形態において、オプション206はアドバイス・オプションを表現してもよい。例えば、アドバイス・オプションは、例えば、「｛状態｝である場合に何をするか」のような形式の問い合わせ(又はクエリ)に対するユーザーの回答を含んでもよく、ここで、「｛状態｝」は、「ストレスを受けている」、「疲れている」、「時間が逼迫している」、「退屈している」等又はこれらの任意の組み合わせのようなユーザーの状態を表現してもよい。代替的又は追加的に、オプションは、旅行先、イベント、製品、映画、音楽、書籍、食べ物、ビール、ワイン、スピリッツ、ボード・ゲーム、ビデオ・ゲーム等又はこれらの任意の組み合わせを表現していてもよい。
【００３２】
図3は例示的な特徴マトリクス(characteristics  matrix)300を示す。マトリクス300は、概して図1のユーザー/オプション・データベース110に対応するデータベースに含まれていてもよい。マトリクス300は、概して図1のレコメンデーション・エンジン108に対応するレコメンデーション・エンジンにより、生成、追加及び/又は使用されてよい。一実施形態において、マトリクス300はX_2として表現され、以下の数式により規定されてもよい。
【数３】
2017199355.tif 000005
ここで、i及びjはそれぞれ行列の行及び列のインデックスを表現する。
【００３３】
マトリクス300は、レーティング302を、特徴(又は属性)304及びオプション306に関連付ける。レーティング302は、概して図2のユーザー204に対応するユーザーの特徴304毎の、オプションに対する平均レーティングを表現していてもよい。オプション306は、概して図1のオプション205に対応していてもよい。例えば、マトリクス300の各行は、概して図1のユーザー102に対応するユーザーに関連する様々な性別を表現し、マトリクス300の各列は様々なオプションを表現していてもよい。マトリクス300は、2種類の性別(すなわち、男性及び女性)及びd_2個のオプションに関連するレーティング302を表現してもよい。一実施形態において、レーティング302はガウシアン分布を反映していてもよい。
【００３４】
具体例では、マトリクスの第1行は男性の性別304に関連し、マトリクス300の第1列は第1オプション306aに関連付けられる。従って、例えば、第1行及び第1列の交点に位置するレーティングは、男性の性別に関連するユーザーに対する、第1オプション306aの平均レーティング(例えば、「3.5」というレーティング)を、マトリクス300に含まれる形式で表現する。レーティングは、ユーザーから受信されてもよいし及び/又は集団マトリクス・ファクトリゼーションにより導出されてもよい。例えば、レーティングは、第1オプション306aについて、男性304に関連付けられるユーザーが与えたレーティングの平均を反映していてもよい。
【００３５】
図4は別の例示的な特徴マトリクス300を示す。マトリクス400は、概して図1のユーザー/オプション・データベース110に対応するデータベースに含まれていてもよい。マトリクス400は、概して図1のレコメンデーション・エンジン108に対応するレコメンデーション・エンジンにより、生成、追加及び/又は使用されてよい。一実施形態において、マトリクス400はX_3として表現され、以下の数式により規定されてもよい。
【数４】
2017199355.tif 000006
ここで、i及びjはそれぞれ行列の行及び列のインデックスを表現する。
【００３６】
マトリクス400は、レーティング402を、特徴404及びオプション406に関連付ける。レーティング402は、概して図2のユーザー204に対応するユーザーの特徴404毎の、オプションに対する平均レーティングを表現していてもよい。オプション406は、概して図1のオプション206に対応していてもよい。例えば、マトリクス400の各行は、概して図1のユーザー102に対応するユーザーに関連する様々な年齢層を表現し、マトリクス400の各列は様々なオプションを表現していてもよい。マトリクス400は、d_3個の年齢層及びd_2個のオプションに関連するレーティング402を表現してもよい。一実施形態において、レーティング402はガウシアン分布を反映していてもよい。
【００３７】
具体例では、マトリクスの第1行は第1年齢層304a(例えば、18歳ないし24歳)に関連し、マトリクス400の第1列は第1オプション406aに関連付けられる。従って、例えば、第1行及び第1列の交点に位置するレーティングは、第1年齢層に関連するユーザーに対する、第1オプション406aの平均レーティング(例えば、「2.4」というレーティング)を、マトリクス400に含まれる形式で表現する。レーティングは、ユーザーから受信されてもよいし及び/又は集団マトリクス・ファクトリゼーションにより導出されてもよい。例えば、レーティングは、第1オプション406aについて、第1年齢層404aに関連付けられるユーザーが与えたレーティングの平均を反映していてもよい。
【００３８】
図2ないし4のマトリクス200，300及び400は、例示的なマトリクスであり、使用されてよいマトリクスの数及び/又は構成の限定ではない。例えば、ユーザーの他の特徴及び/又はオプションの特徴に対する特徴マトリクスのような他のマトリクスが、代替的又は追加的に使用されてもよい。
【００３９】
図5は、個別化(又はパーソナライズ)されたレコメンデーションを生成する方法例500のフローチャートを示す。一実施形態において、方法500は、図1のレコメンデーション・エンジン108により実行されてもよい。方法500はブロック502において始まり、グループ毎のスパース集団マトリクス・ファクトリゼーション(group-wise  sparse  collective  matrix  factorization：gCMF)のトレーニング及び検証を実行する。ユーザー・プロファイル・データ及びレーティング情報は、gCMFレコメンデーション・モジュールにより受信されてよい。例えば、ユーザー/オプション・データは、図1のユーザー/オプション・データベース110により提供されてよい。X_mにより表現される複数のリレーショナル・マトリクスが生成及び/又は入力されてよい。1つ以上のリレーショナル・マトリクスは、概して図2、3及び/又は4のマトリクス200，300及び/又は400のうちの1つ以上に対応していてもよい。
【００４０】
各々のX_mマトリクスは、m番目のマトリクスの行i及び列jの要素に対する以下の数式に従って、低ランク表現により近似されてよい。
【数５】
2017199355.tif 000007
ここで、kは因子に対応し、r_m及びc_mはそれぞれm番目のマトリクスの行及び列に対応し、b_i及びb_jはバイアス項を表現し、ε_ijは要素ごとの独立したノイズを表現する。ユーザー、オプション及び/又は特徴などのようなエンティティを含むエンティティ集合eに関連する低ランク・マトリクスは、U_eにより表現され、次の数式に従って規定されてもよい。
【数６】
2017199355.tif 000008
【００４１】
Yにより表現される単独のマトリクスは、何れのXにも対応しないブロックがブランクのまま残されてよい又は観察されなくてように、X_mマトリクスを含んでよい。マトリクスYはd個のエンティティにより構成され、dは次式に従って決定されてよい。
【数７】
2017199355.tif 000009
【００４２】
マトリクスYは、次式に従って、対称行列分解として定式化されてよい。
【数８】
2017199355.tif 000010
ここで、Uは様々なU_eマトリクス全ての列毎の連結(concatenation)であり、εは全体的なノイズ項である。
【００４３】
因子マトリクスU_eのk番目の列が、2つのエンティティ・タイプr_m及びc_mを除いてそれぞれについてヌルである場合、k番目の因子は、リレーション「m」についてプライベート因子(private  factor)であってよい。そのようなプライベート因子の自動生成を促すために、U_eの列に関するグループ・スパース前提(Group-sparse  priors)が課されてもよい。
【００４４】
モデルは、射影に関するガンマ前提(Gamma  priors)及びガウシアン尤度を指定することにより、説明されてもよく、次の数式が認められる。
【数９】
2017199355.tif 000011
ここで、eはエンティティiを含むエンティティ集合であってよい。
【００４５】
Uに対する前提は、各々の因子について、前提が有効であるマトリクスの集合を自動的に選択してもよい。α_ekにより表現される精度値は、エンティティ集合eの変分をモデル化することに必要とされない因子kについて学習されてもよい。
【００４６】
変分ベイズ近似が、モデル・パラメータを学習するために使用されてもよい。代替的又は追加的に、トレーニング及び検証(validation)の誤差が算出されてもよい。誤差が閾値の範囲内にある場合、方法500はブロック504に続く。誤差が閾値の範囲外にある場合、方法500は、誤差が閾値の範囲内に落ちるまで、gCMFトレーニング及び検証を続ける。
【００４７】
ブロック504において、本方法500は、エンティティ集合について関連ウェイト(relevance  weight)を算出することに続く。関連ウェイトは、考察対象のエンティティ集合に対するプライベート因子の精度値から算出されてもよい。一実施形態において、特定のエンティティpに関連する関連ウェイト(W_pにより表現される)は、次式により算出されてよい。
【数１０】
2017199355.tif 000012
ここで、α_pkは、プライベート因子kに対する特定のエンティティpに関連する精度を表現してもよい。α_pkは、特定のエンティティpに関連する数式Eq.12の精度値に対応していてもよい。代替的又は追加的に、μPは、特定のエンティティpに関連するスケーリング因子を表現してもよい。スケーリング因子μPは、トレーニング及び検証により決定されてもよい。
【００４８】
方法500はブロック506に続き、データ融合トレーニング及び検証を実行する。一実施形態において、各ユーザーに対して予想されるレーティングを有するレーティング・マトリクスのユーザー・ベクトルには、要素毎のマトリクス乗算により、考察対象のエンティティ集合に対する関連ウェイトと、エンティティ集合のうちの特定のエンティティに関連する特徴マトリクスのうちの特徴ベクトルとが乗算されてもよい。ユーザー・ベクトルは、概して図2のレーティング・マトリクス200に対応するレーティング・マトリクスの行ベクトルに概して対応していてもよい。特徴ベクトルは、概して図3及び4の特徴マトリクス300及び400に対応する特徴マトリクスの行ベクトルに概して対応していてもよい。具体例として、特徴マトリクスの一部分は、性別の特徴マトリクス等のうち、例えば「女性」のような特定の性別に関するベクトルを含んでいてもよい。
【００４９】
代替的又は追加的に、データ融合トレーニング及び検証の誤差が算出されてもよい。誤差が閾値の範囲内にある場合、方法500は終了してよい。誤差が閾値の範囲外にある場合、方法は、誤差が閾値の範囲内に落ちるまで、データ融合トレーニング及び検証を続けてもよい。
【００５０】
図6は、概して図5の方法500によるデータ融合に対応する例示的なデータ融合プロセス600のブロック図である。プロセス600は、グループ・スパース埋め込みによる集団マトリクス・ファクトリゼーションを含み、マトリクス(603)及び各エンティティ集合にわたるプライベート因子に対する精度値(610)を生成する。グループ・スパース埋め込みによる集団マトリクス・ファクトリゼーションは、概して図5の方法500による集団マトリクス・ファクトリゼーションに対応する。
【００５１】
マトリクス603は、X_1として表現されるレーティング・マトリクス604を含んでよい。レーティング・マトリクス604は概して図2のレーティング・マトリクス200に対応していてもよい。レーティング・マトリクス604は、ユーザー・レーティングをユーザー及びオプションに関連付けてもよい。代替的又は追加的に、マトリクス603は、X_2として表現される特徴マトリクス606を含んでもよい。特徴マトリクス606は、概して図3の特徴マトリクス300に対応していてもよい。特徴マトリクス606は、オプションに対するレーティングを、ユーザーの特徴(例えば、ユーザーの性別)に関連付けてもよい。代替的又は追加的に、マトリクス603は、X_3として表現される特徴マトリクス608を含んでもよい。特徴マトリクス608は、概して図4の特徴マトリクス400に対応していてもよい。特徴マトリクス608は、オプションに対するレーティングを、ユーザーの特徴(例えば、ユーザーの年齢層)に関連付けてもよい。代替的又は追加的に、他の特徴マトリクスが、オプションに対するレーティングを、年齢及び/又は性別以外のユーザーの特徴に関連付けてもよい。
【００５２】
各々のエンティティ集合610にわたるプライベート因子に対する精度値から、関連ウェイト611が生成されてもよい。生成されるウェイトは、性別に対する関連ウェイト612及び/又は年齢に対する関連ウェイト614を含んでもよい。
【００５３】
一実施形態において、W_gにより表現される性別の関連ウェイト612は、次式に従って算出されてもよい。
【数１１】
2017199355.tif 000013
ここで、α_gkは、プライベート因子kに対する性別gに関連する精度を表現してもよい。精度α_gkは、性別gに関連する数式12の精度値に対応していてもよい。代替的又は追加的に、μgは、性別gに関連するスケーリング因子を表現してもよい。スケーリング因子μgは、トレーニング及び検証により決定されてもよい。
【００５４】
代替的又は追加的に、年齢に関する関連ウェイト(W_aにより表現される)は、次式に従って算出されてもよい。
【数１２】
2017199355.tif 000014
【００５５】
ここで、α_akは、プライベート因子kに対する年齢aに関連する精度を表現してもよい。精度α_akは、年齢aに関連する数式12の精度値に対応していてもよい。代替的又は追加的に、μaは、年齢aに関連するスケーリング因子を表現してもよい。スケーリング因子μaは、トレーニング及び検証により決定されてもよい。性別及び/又は年齢以外の特徴に対するウェイトが、代替的又は追加的に、決定されてもよい。
【００５６】
データ融合プロセス600は、レーティング・マトリクス604のユーザー・ベクトルに、性別に関する関連ウェイト612と、性別ベクトル616とを乗算することを含んでよい。ユーザー・ベクトルは、質問しているユーザー(質問ユーザー又は対象ユーザー)に関連付けられてよい。性別ベクトル616はX_2[G,]により表現され、ここで、Gは、質問ユーザーの性別に関連する特徴マトリクス606の性別エンティティを表現してもよい。例えば、性別Gに関連して個別化されたレーティング・ベクトル620が、生成される。性別Gは、質問ユーザーの性別に関連付けられる。
【００５７】
ユーザー・ベクトル、性別に関する関連ウェイト612、及び、性別ベクトル616は、要素毎の乗算により乗算され、乗算は、「x」というボックス記号615により示されている。ユーザー・ベクトル、性別に関する関連ウェイト612、及び、性別ベクトル616の要素ごとの乗算は、性別に関連する個別化されたレーティング・ベクトルをもたらす結果となる。具体例として、性別Gに関連する個別化されたレーティング・ベクトルの第1の個別化されたレーティング620は、ユーザー・ベクトルの第1レーティングに、性別に関連する関連ウェイト612と、性別ベクトル616の第1レーティングとを乗算した積に等しい。
【００５８】
代替的又は追加的に、データ融合プロセス600は、レーティング・マトリクスのユーザー・ベクトル604に、年齢に関連する関連ウェイト614と、年齢ベクトル618とを乗算することを含んでよい。年齢ベクトル618はX_3[A,]により表現され、Aは、質問ユーザーの年齢に関連する特徴マトリクス608の年齢エンティティを表現する。年齢層Aは、質問ユーザーの年齢に関連付けられる。
【００５９】
具体例として、質問ユーザーが20歳の女性であったとすると、性別に関する特徴-重み付けマトリクスに、要素毎の乗算により、女性の性別に対応する特徴マトリクスのベクトル606が乗算され、且つ、年齢に関する特徴-重み付けマトリクスに、要素毎の乗算により、20歳に関連付けられる年齢層に対応する特徴マトリクスのベクトル608が乗算される。
【００６０】
言い換えれば、性別Gに関する個別化されたレーティング・ベクトルは、次式に従って決定されてよい。
【数１３】
2017199355.tif 000015
ここで、X_1[U,]はレーティング・ベクトルのユーザー・ベクトルを示し、Uは質問ユーザーを表現し、「*」は要素毎の乗算を示し、α_gkは、プライベート因子kに対する性別gに関する精度を表現する。精度α_gkは、性別gに関連する数式12の精度値に対応してもよい。代替的又は追加的に、μgは、性別gに関連するスケーリング因子を表現してもよい。
【００６１】
代替的又は追加的に、年齢Aに対する個別化されたレーティング・ベクトルは、次式に従って決定されてもよい。
【数１４】
2017199355.tif 000016
ここで、X_1[U,]はレーティング・ベクトルのユーザー・ベクトルを示し、Uは質問ユーザーを表現し、「*」は要素毎の乗算を示し、α_akは、プライベート因子kに対する年齢aに関する精度を表現する。精度α_akは、年齢aに関連する数式12の精度値に対応してもよい。代替的又は追加的に、μaは、年齢aに関連するスケーリング因子を表現してもよい。
【００６２】
代替的又は追加的に、年齢層A及び性別Gに関して個別化されたレーティング・ベクトル624が、生成されてよい。例えば、年齢A及び性別Gに対するユーザー・アドバイス・レーティングは、次式に従って決定されてもよい。
【数１５】
2017199355.tif 000017
ここで、平方根は要素毎の平方根であり、記号は数式Eq.16及び17に関連して定義されている。複数の特徴に対する他のユーザー・アドバイス・レーティングも、同様に決定されてよい。一実施形態において、個別化されたレーティング・ベクトルは、追加的及び/又は代替的な特徴を考慮してもよい。例えば、個別化されたレーティング・ベクトルは、n個の特徴に関連するn個の要素ごとに乗算された個別化されたレーティング・ベクトルの要素毎のn条根に等しくてもよい。一実施形態では、個別化されたレーティング・ベクトルの相対値を維持する他の数式が使用されてもよい。例えば、ルートの演算が省略されてもよく、及び/又は、X_1[U,]ユーザー・ベクトルが数式に一度だけ包含されてもよい。
【００６３】
従って、例えば、実施形態は、ユーザー固有のプロファイル情報を活用してアドバイス・レコメンデーションを改善する。例えば、アドバイス・レコメンデーションは、アドバイス・レコメンデーションを決定する際に、ユーザーの年齢、性別及び/又はその他の特徴を考慮に入れてもよい。実施形態は、他の情報を活用して、他の選択又は分析を行うために使用されてもよい。一実施形態は、医療及び/又は遺伝子分析を促進する。例えば、実施形態は、病気の予測における複数の遺伝子の寄与を分析することを促す。代替的又は追加的に、実施形態は金融取引分析を促進するかもしれない。例えば、実施形態は、株価予測のために、例えば、政府の方針、市場価格などのような複数の要因の相互依存性及び影響の理解を促進するかもしれない。代替的又は追加的に、実施形態は、社会的な行動分析を促進するかもしれない。例えば、実施形態は、文化、目標、教育などのような様々な要因の間の依存性を考慮して、グループ及び個人の行動的治療成績の予測を促すかもしれない。
【００６４】
本願で開示されるこれら及び他のプロセス及び方法に関し、プロセス及び方法で実行される機能は、異なる順序で実現されてもよい。更に、説明されるオペレーションは、具体例として提供されているに過ぎず、実施形態の本質から逸脱することなく、オペレーションのうちの何れかは、選択的なものであってもよく、より少数のオペレーションに統合されてもよく、或いは、追加的なオペレーションに拡張されてもよい。
【００６５】
本願で説明される実施形態は、本願で詳細に説明されるように様々なコンピュータ・ハードウェア又はソフトウェア・モジュールを含む特定用途又は汎用のコンピュータを利用することを含んでよい。
【００６６】
本願で説明される実施形態はコンピュータ読み取り可能な媒体を利用して実現されてもよく、その媒体は、そこに保存されるコンピュータ実行可能な命令又はデータ構造を搬送する又は有している。そのようなコンピュータ読み取り可能な媒体は、汎用又は特定用途のコンピュータによりアクセスされる利用可能な任意の媒体であってよい。限定ではない具体例として、そのようなコンピュータ読み取り可能な媒体は非一時的なコンピュータ読み取り可能な記憶媒体を含み、記憶媒体は、ランダム・アクセス・メモリ(RAM)、リード・オンリ・メモリ(ROM)、電気的に消去可能でプログラム可能なリード・オンリ・メモリ(EEPROM)、コンパクト・ディスク・リード・オンリ・メモリ(CD-ROM)又は他の光ディスク・ストレージ、磁気ディスク・ストレージ又は他の磁気ストレージ・デバイス、フラッシュ・メモリ・デバイス(例えば、ソリッド・ステート・メモリ・デバイス)、或いは、他の任意の記憶媒体を含んでもよく、その記憶媒体は、コンピュータ実行可能な命令又はデータ構造の形式で所望のプログラム・コードを搬送又は保存するために使用され、かつ、汎用又は専用のコンピュータによりアクセスされるものである。上記の例の組み合わせもコンピュータ読み取り可能な媒体の範囲内に含まれる。
【００６７】
コンピュータ実行可能な命令は、例えば、命令及びデータを含み、その命令及びデータは、(汎用コンピュータ、専用コンピュータ又は特定用途の処理装置)(例えば、1つ又は複数のプロセッサ)が、所定の機能又は一群の機能を実行することを引き起こす。例えば、非一時的なコンピュータ読み取り可能な媒体は、プロセッサにより実行可能なプログラミング・コードをそこにエンコードし、図1のレコメンデーション・エンジン108及びユーザー/オプション・データベース110、図5の方法500、及び/又は、図6のプロセス600を実現してもよい。本願で対象とする事項が、構造的な特徴及び/又は方法的な処理に特有の言葉で説明されてきたが、特許請求の範囲に規定される対象事項は、上述したような特定の特徴や処理に必ずしも限定される必要はないことが、理解されるべきである。むしろ、上記の特定の特徴及び処理は、請求項の内容を実現する一形態として開示されている。
【００６８】
一実施形態において、本願で説明される様々なコンポーネント、モジュール、エンジン及びサービスは、コンピューティング・システム上で動作するオブジェクト又はプロセス(例えば、個々のスレッド)として実現されてよい。本願で説明されるシステム及び方法のうちの何れかは、一般的に、(汎用ハードウェアに保存される及び/又はそれにより実行される)ソフトウェアで実現されるように説明されるが、具体的なハードウェア実現手段、或いは、ソフトウェア及び特定のハードウェア実現手段の組み合わせも可能であり、本願で想定されている。
【００６９】
本願で説明される全ての具体例及び条件付きの言葉は、技術促進に寄与する概念及び実施形態を読者が理解することを促すように、教育的な目的で使用されており、そのように具体的に記載された具体例及び条件に限定することなく、解釈されるべきである。実施形態が詳細に説明されてきたが、実施形態の目的から逸脱することなく、様々な変形、置換及び代替が可能である。
以上の実施の形態に関し、更に以下の付記を開示する。
（付記１）
質問ユーザーに関連する個別化されたレーティング・ベクトルを生成する工程と、前記個別化されたレーティング・ベクトルに少なくとも部分的に基づいて、前記質問ユーザーに対するレコメンデーションを生成する工程とを有する方法であって：
前記個別化されたレーティング・ベクトルは、個別化されたレーティングをオプションに関連付け、
前記個別化されたレーティング・ベクトルは、
ユーザー・レーティングを前記質問ユーザー及び前記オプションに関連付けるユーザー・ベクトルと；
前記質問ユーザーの特徴に関連する関連ウェイトと；
特徴レーティングをユーザー特徴及び前記オプションに関連付ける特徴ベクトルと；の要素毎の乗算により生成され、
前記ユーザー特徴は、前記質問ユーザーの特徴に少なくとも部分的に対応し；
前記レコメンデーションは、前記個別化されたレーティング・ベクトルのオプションのうちの少なくとも１つのオプションに関連している、方法。
（付記２）
前記ユーザー・ベクトルは、前記質問ユーザーに関連するレーティング・マトリクスの一部に対応し、前記レーティング・マトリクスは、ユーザー・レーティングを、前記個別化されたレーティング・マトリクスのオプションに関連付け、前記ユーザーは、前記質問ユーザーを含むユーザー・レーティングに関連付けられる、付記１に記載の方法。
（付記３）
前記個別化されたレーティング・ベクトルは、
【数１６】
2017199355.tif 000018
により表現され、「＊」は要素毎の乗算を表現し、ＸＥはレーティング・マトリクスを表現し、ＸＥ［Ｕ，］はユーザー・ベクトルを表現し、Ｕは前記質問ユーザーを表現し、（Σｋαｐｋ）−μｓは前記関連ウェイトを表現し、ｋはプライベート因子を表現し、αｐｋは前記プライベート因子に関連する対応する精度を表現し、μｓはスケーリング因子を表現し、ＸＣは特徴ベクトルを含む特徴マトリクスを表現し、前記特徴マトリクスは特徴レーティングをユーザー特徴及びオプションに関連付け、前記ユーザー特徴は複数のユーザー特徴に含まれるものであり、ＸＣ［Ｃ，］は前記特徴ベクトルを表現し、Ｃは前記ユーザー特徴を表現する、付記２に記載の方法。
（付記４）
値が不足した部分的なリレーショナル・マトリクスを構成する工程；
前記部分的なリレーショナル・マトリクスを集団的に分解する工程；及び
前記部分的なリレーショナル・マトリクスのうち不足した値に関する予測を含む完全なリレーショナル・マトリクスを生成する工程であって、前記完全なリレーショナル・マトリクスは、前記レーティング・マトリクス及び前記特徴マトリクスを含む、工程；
を更に有する付記３に記載の方法。
（付記５）
前記部分的なリレーショナル・マトリクスを構成する工程、前記部分的なリレーショナル・マトリクスを集団的に分解する工程、及び、前記完全なリレーショナル・マトリクスを生成する工程が、グループ・スパース埋め込みによる集団マトリクス・ファクトリゼーションに少なくとも部分的に基づいて実行される、付記４に記載の方法。
（付記６）
前記ユーザー特徴が前記ユーザーの年齢層を含み、前記ユーザー特徴が、前記質問ユーザーの年齢に対応する年齢層を含む、付記３に記載の方法。
（付記７）
前記ユーザー特徴が前記ユーザーの性別を含み、前記ユーザー特徴が、前記質問ユーザーの性別に対応する性別を含む、付記３に記載の方法。
（付記８）
前記個別化されたレーティング・ベクトルが第１の個別化されたレーティング・ベクトルを含み、前記関連ウェイトが第１関連ウェイトを含み、前記質問ユーザーの特徴が前記質問ユーザーの第１特徴を含み、前記特徴ベクトルが第１特徴ベクトルを含み、前記ユーザー特徴が第１ユーザー特徴を含み、
前記方法は、前記質問ユーザーに関連する第２の個別化されたレーティング・ベクトルを生成する工程を更に含み、前記第２の個別化されたレーティング・ベクトルは、個別化されたレーティングを第１の個別化されたレーティング・ベクトルのオプションに関連付け、
前記第２の個別化されたレーティング・ベクトルは、
前記ユーザー・ベクトルと；
前記質問ユーザーの第２特徴に関連する第２関連ウェイトと；
特徴レーティングを第２ユーザー特徴及び前記オプションに関連付ける第２特徴ベクトルと；の要素毎の乗算により生成され、
前記第２ユーザー特徴は前記質問ユーザーの第２特徴に少なくとも部分的に対応する、付記１に記載の方法。
（付記９）
前記第１の個別化されたレーティング・ベクトル及び前記第２の個別化されたレーティング・ベクトルの要素毎の乗算に少なくとも部分的に基づいて、第３の個別化されたレーティング・ベクトルに少なくとも部分的に基づいて、前記質問ユーザーに対する前記レコメンデーションを生成する、付記８に記載の方法。
（付記１０）
前記第３の個別化されたレーティング・ベクトルは、
【数１７】
2017199355.tif 000019
により表現され、「＊」は要素毎の乗算を表現し、ＸＥはレーティング・マトリクスを表現し、ＸＥ［Ｕ，］はユーザー・ベクトルを表現し、Ｕは前記質問ユーザーを表現し、（Σｋαｐ１ｋ）−μｓ１は前記第１関連ウェイトを表現し、ｋはプライベート因子を表現し、αｐ１ｋは前記プライベート因子に対する第１ユーザー特徴に関連する精度を表現し、μｓ１は前記第１特徴に関連する第１スケーリング因子を表現し、ＸＣ１は第１特徴ベクトルを含む第１特徴マトリクスを表現し、前記第１特徴マトリクスは、特徴レーティングを、第１ユーザー特徴と、前記第１の個別化されたレーティング・ベクトルのオプションとに関連付け、前記第１ユーザー特徴は前記第１ユーザー特徴を含み、ＸＣ１［Ｃ１，］は前記第１特徴ベクトルを表現し、Ｃ１は前記第１ユーザー特徴を表現し、
（Σｋαｐ２ｋ）−μｓ２は前記第２関連ウェイトを表現し、αｐ２ｋは前記プライベート因子に対する第２ユーザー特徴に関連する精度を表現し、μｓ２は前記第２特徴に関連する第２スケーリング因子を表現し、ＸＣ２は第２特徴ベクトルを含む第２特徴マトリクスを表現し、前記第２特徴マトリクスは、特徴レーティングを、第２ユーザー特徴と、前記第１の個別化されたレーティング・ベクトルのオプションとに関連付け、前記第２ユーザー特徴は前記第２ユーザー特徴を含み、ＸＣ２［Ｃ２，］は前記第２特徴ベクトルを表現し、Ｃ２は前記第２ユーザー特徴を表現する、付記９に記載の方法。
（付記１１）
前記第１ユーザー特徴は前記質問ユーザーの年齢に対応する年齢層を含み；及び
前記第２ユーザー特徴は前記質問ユーザーの性別に対応する性別を含む；
付記１０に記載の方法。
（付記１２）
値が不足した部分的なリレーショナル・マトリクスを構成する工程；
前記部分的なリレーショナル・マトリクスを集団的に分解する工程；及び
前記部分的なリレーショナル・マトリクスのうち不足した値に関する予測を含む完全なリレーショナル・マトリクスを生成する工程であって、前記完全なリレーショナル・マトリクスは、前記レーティング・マトリクス、前記第１特徴マトリクス及び前記第２特徴マトリクスを含む、工程；
を更に含む付記１０に記載の方法。
（付記１３）
前記部分的なリレーショナル・マトリクスを構成する工程、前記部分的なリレーショナル・マトリクスを集団的に分解する工程、及び、前記完全なリレーショナル・マトリクスを生成する工程が、グループ・スパース埋め込みによる集団マトリクス・ファクトリゼーションに少なくとも部分的に基づいて実行される、付記１２に記載の方法。
（付記１４）
オペレーションをプロセッサに実行させるプログラミング・コードをエンコードした非一時的なコンピュータ読み取り可能な媒体であって、前記オペレーションは、質問ユーザーに関連する個別化されたレーティング・ベクトルを生成する工程と、前記個別化されたレーティング・ベクトルに少なくとも部分的に基づいて、前記質問ユーザーに対するレコメンデーションを生成する工程とを有し、
前記個別化されたレーティング・ベクトルは、個別化されたレーティングをオプションに関連付け、
前記個別化されたレーティング・ベクトルは、
ユーザー・レーティングを前記質問ユーザー及び前記オプションに関連付けるユーザー・ベクトルと；
前記質問ユーザーの特徴に関連する関連ウェイトと；
特徴レーティングをユーザー特徴及び前記オプションに関連付ける特徴ベクトルと；の要素毎の乗算により生成され、
前記ユーザー特徴は、前記質問ユーザーの特徴に少なくとも部分的に対応し；
前記レコメンデーションは、前記個別化されたレーティング・ベクトルのオプションのうちの少なくとも１つのオプションに関連している、コンピュータ読み取り可能な媒体。
（付記１５）
前記個別化されたレーティング・ベクトルは第１の個別化されたレーティング・ベクトルを含み、前記関連ウェイトが第１関連ウェイトを含み、前記質問ユーザーの特徴が前記質問ユーザーの第１特徴を含み、前記特徴ベクトルが第１特徴ベクトルを含み、前記ユーザー特徴が第１ユーザー特徴を含み、
前記オペレーションは、前記質問ユーザーに関連する第２の個別化されたレーティング・ベクトルを生成する工程を更に含み、前記第２の個別化されたレーティング・ベクトルは、個別化されたレーティングを第１の個別化されたレーティング・ベクトルのオプションに関連付け、
前記第２の個別化されたレーティング・ベクトルは、
前記ユーザー・ベクトルと；
前記質問ユーザーの第２特徴に関連する第２関連ウェイトと；
特徴レーティングを第２ユーザー特徴及び前記オプションに関連付ける第２特徴ベクトルと；の要素毎の乗算により生成され、
前記第２ユーザー特徴は前記質問ユーザーの第２の特徴に少なくとも部分的に対応する、付記１４に記載のコンピュータ読み取り可能な媒体。
（付記１６）
前記第１の個別化されたレーティング・ベクトル及び前記第２の個別化されたレーティング・ベクトルの要素毎の乗算に少なくとも部分的に基づいて、第３の個別化されたレーティング・ベクトルに少なくとも部分的に基づいて、前記質問ユーザーに対する前記レコメンデーションを生成する、付記１５に記載のコンピュータ読み取り可能な媒体。
（付記１７）
前記第３の個別化されたレーティング・ベクトルは、
【数１８】
2017199355.tif 000020
により表現され、「＊」は要素毎の乗算を表現し、ＸＥはレーティング・マトリクスを表現し、ＸＥ［Ｕ，］はユーザー・ベクトルを表現し、Ｕは前記質問ユーザーを表現し、（Σｋαｐ１ｋ）−μｓ１は前記第１関連ウェイトを表現し、ｋはプライベート因子を表現し、αｐ１ｋは前記プライベート因子に対する第１ユーザー特徴に関連する精度を表現し、μｓ１は前記第１特徴に関連する第１スケーリング因子を表現し、ＸＣ１は第１特徴ベクトルを含む第１特徴マトリクスを表現し、前記第１特徴マトリクスは、特徴レーティングを、第１ユーザー特徴と、前記第１の個別化されたレーティング・ベクトルのオプションとに関連付け、前記第１ユーザー特徴は前記第１ユーザー特徴を含み、ＸＣ１［Ｃ１，］は前記第１特徴ベクトルを表現し、Ｃ１は前記第１ユーザー特徴を表現し、
（Σｋαｐ２ｋ）−μｓ２は前記第２関連ウェイトを表現し、αｐ２ｋは前記プライベート因子に対する第２ユーザー特徴に関連する精度を表現し、μｓ２は前記第２特徴に関連する第２スケーリング因子を表現し、ＸＣ２は第２特徴ベクトルを含む第２特徴マトリクスを表現し、前記第２特徴マトリクスは、特徴レーティングを、第２ユーザー特徴と、前記第１の個別化されたレーティング・ベクトルのオプションとに関連付け、前記第２ユーザー特徴は前記第２ユーザー特徴を含み、ＸＣ２［Ｃ２，］は前記第２特徴ベクトルを表現し、Ｃ２は前記第２ユーザー特徴を表現する、付記１６に記載のコンピュータ読み取り可能な媒体。
（付記１８）
前記第１ユーザー特徴は前記質問ユーザーの年齢に対応する年齢層を含み；及び
前記第２ユーザー特徴は前記質問ユーザーの性別に対応する性別を含む；
付記１７に記載のコンピュータ読み取り可能な媒体。
（付記１９）
値が不足した部分的なリレーショナル・マトリクスを構成する工程；
前記部分的なリレーショナル・マトリクスを集団的に分解する工程；及び
前記部分的なリレーショナル・マトリクスのうち不足した値に関する予測を含む完全なリレーショナル・マトリクスを生成する工程であって、前記完全なリレーショナル・マトリクスは、前記レーティング・マトリクス、前記第１特徴マトリクス及び前記第２特徴マトリクスを含む、工程；
を前記オペレーションが更に含む付記１７に記載のコンピュータ読み取り可能な媒体。
（付記２０）
前記部分的なリレーショナル・マトリクスを構成する工程、前記部分的なリレーショナル・マトリクスを集団的に分解する工程、及び、前記完全なリレーショナル・マトリクスを生成する工程が、グループ・スパース埋め込みによる集団マトリクス・ファクトリゼーションに少なくとも部分的に基づいて実行される、付記１９に記載のコンピュータ読み取り可能な媒体。
【符号の説明】
【００７０】
１０２ａ〜ｃ：ユーザー
１０４ａ〜ｃ：端末
１０６：ネットワーク
１０８：レコメンデーション・エンジン
１１０：ユーザー／オプション・データベース
【図１】
2017199355.tif 000024
【図２】
2017199355.tif 000025
【図３】
2017199355.tif 000026
【図４】
2017199355.tif 000027
【図５】
2017199355.tif 000028
【図６】
2017199355.tif 000029