(57)【要約】【課題】所望のカテゴリのバラつきでレコメンドを行う（或いは行わせる）こと。【解決手段】複数のレコメンド対象のそれぞれの特徴を示す複数の対象ベクトルと、前記複数のレコメンド対象のそれぞれに付与されるカテゴリの特徴を示す複数のカテゴリベクトルとを取得する取得部と、ユーザにより選択された選択レコメンド対象に付随してレコメンドされる付随レコメンド対象を選択する際に、前記選択レコメンド対象に付与されたカテゴリのカテゴリベクトルと類似する一以上のカテゴリベクトルを抽出し、前記抽出した一以上のカテゴリベクトルのそれぞれに対応したレコメンド対象が含まれるように、前記付随レコメンド対象を選択するレコメンド処理部と、を備える情報処理装置。【選択図】図１
2020129324.tif 000002
【特許請求の範囲】
【請求項１】
複数のレコメンド対象のそれぞれの特徴を示す複数の対象ベクトルと、前記複数のレコメンド対象のそれぞれに付与されるカテゴリの特徴を示す複数のカテゴリベクトルとを取得する取得部と、
ユーザにより選択された選択レコメンド対象に付随してレコメンドされる付随レコメンド対象を選択する際に、前記選択レコメンド対象に付与されたカテゴリのカテゴリベクトルと類似する所定数のカテゴリベクトルを抽出し、前記抽出した所定数のカテゴリベクトルを用いて前記付随レコメンド対象を選択するレコメンド処理部と、
を備える情報処理装置。
【請求項２】
前記レコメンド処理部は、前記抽出した所定数のカテゴリベクトルのそれぞれと前記対象ベクトルとを結合した所定数のシード結合ベクトルをキーとして、前記複数のレコメンド対象のカテゴリベクトルと対象ベクトルとが結合した結合ベクトルを集めたデータベースを参照して前記所定数のシード結合ベクトルのそれぞれに類似する一以上の結合ベクトルを抽出し、前記抽出した一以上の結合ベクトルに対応するレコメンド対象を、前記付随レコメンド対象として選択する、
請求項１記載の情報処理装置。
【請求項３】
前記レコメンド処理部は、前記抽出した所定数のカテゴリベクトルのそれぞれに対応する所定数のカテゴリのそれぞれに対応したレコメンド対象が含まれるように、前記付随レコメンド対象を選択する、
請求項１記載の情報処理装置。
【請求項４】
前記レコメンド処理部は、前記抽出した所定数のカテゴリベクトルのそれぞれについて、当該カテゴリベクトルが付与されたレコメンド対象の中から前記選択レコメンド対象の対象ベクトルと類似する対象ベクトルを有する一以上のレコメンド対象を抽出し、前記抽出した前記一以上のカテゴリベクトルごとの一以上のレコメンド対象を前記付随レコメンド対象として選択する、
請求項３記載の情報処理装置。
【請求項５】
前記レコメンド処理部は、カテゴリの識別情報と前記カテゴリベクトルとが対応付けられた情報を参照して、前記選択レコメンド対象に付与されたカテゴリのカテゴリベクトルと類似する一以上のカテゴリベクトルを抽出する、
請求項１から４のうちいずれか１項記載の情報処理装置。
【請求項６】
前記対象ベクトルおよび前記カテゴリベクトルは、ユーザの行動履歴に基づいて導出されたベクトルである、
請求項１から５のうちいずれか１項記載の情報処理装置。
【請求項７】
前記取得部は、ユーザの行動履歴に対してMeta-Prod 2 Vecアルゴリズムを適用し、前記対象ベクトルと前記カテゴリベクトルとを並行して学習することにより、前記対象ベクトルと前記カテゴリベクトルとを取得する、
請求項６記載の情報処理装置。
【請求項８】
前記取得部は、ユーザの行動履歴に対して、前記対象ベクトルと前記カテゴリベクトルとを別々に学習することにより、前記対象ベクトルと前記カテゴリベクトルとを取得する、
請求項６記載の情報処理装置。
【請求項９】
前記付随レコメンド対象は、画面をスクロールすることで視認可能な複数のレコメンド対象を並べて表示する形式でレコメンドされるものである、
請求項１から８のうちいずれか１項記載の情報処理装置。
【請求項１０】
前記レコメンド処理部により選択された前記付随レコメンド対象と、前記選択レコメンド対象とを含む画像を、ユーザの端末装置に提供する提供部を更に備える、
請求項１から９のうちいずれか１項記載の情報処理装置。
【請求項１１】
前記提供部は、前記ユーザの端末装置に提供する画面において、同じカテゴリのレコメンド対象が一団となるように前記画像を設定する、
請求項１０記載の情報処理装置。
【請求項１２】
前記提供部は、前記同じカテゴリのレコメンド対象に対して、カテゴリを示すラベルが付されるように前記画像を設定する、
請求項１１記載の情報処理装置。
【請求項１３】
コンピュータが、
複数のレコメンド対象のそれぞれの特徴を示す複数の対象ベクトルと、前記複数のレコメンド対象のそれぞれに付与されるカテゴリの特徴を示す複数のカテゴリベクトルとを取得し、
ユーザにより選択された選択レコメンド対象に付随してレコメンドされる付随レコメンド対象を選択する際に、前記選択レコメンド対象に付与されたカテゴリのカテゴリベクトルと類似する一以上のカテゴリベクトルを抽出し、前記抽出した一以上のカテゴリベクトルのそれぞれに対応したレコメンド対象が含まれるように、前記付随レコメンド対象を選択する、
情報処理方法。
【請求項１４】
コンピュータに、
複数のレコメンド対象のそれぞれの特徴を示す複数の対象ベクトルと、前記複数のレコメンド対象のそれぞれに付与されるカテゴリの特徴を示す複数のカテゴリベクトルとを取得させ、
ユーザにより選択された選択レコメンド対象に付随してレコメンドされる付随レコメンド対象を選択する際に、前記選択レコメンド対象に付与されたカテゴリのカテゴリベクトルと類似する一以上のカテゴリベクトルを抽出し、前記抽出した一以上のカテゴリベクトルのそれぞれに対応したレコメンド対象が含まれるように、前記付随レコメンド対象を選択させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【０００２】
従来、インターネットショッピングなどの電子商取引において、サイト運営者の側からユーザに商品をレコメンドすることが行われている。サイト運営者とは、販売代行業者であったり、販売業者自身であったりする。なお、何かをレコメンドするサービスとしては、電子商取引の他、住居情報提供サービス、婚活サービスなどのマッチングサービス、動画提供サービスなどが挙げられる。以下、電子商取引に着目して説明する。
【０００３】
電子商取引においてユーザが、ある商品を選択して詳細情報を閲覧する際に、同じ画面の中で別の商品が付随して提示（レコメンド）される場合がある。以下、この選択された商品を選択商品、付随してレコメンドされる商品を付随レコメンド商品と称する。サイト運営者の運営する装置（例えばショッピング管理サーバ）は、例えば、選択商品と類似する商品を、付随レコメンド商品として選択する。
【０００４】
商品間の類似度合いを人手で定義するのは非常に手間がかかるため、自動的に類似度合いを定義する仕組みについて研究が進められている。一例として、ショッピングサイトにおけるユーザの行動履歴を参照して、商品に対して商品ベクトルを定義し、商品ベクトル間の内積に基づいて商品間の類似度合いを決定する手法が考えられている。商品ベクトルは、例えば、共通する商品と一緒に（同時期に、あるいはセッション内で）選択された商品が類似度合いの高いものであるという考え方などに従って、Word 2 Vecに準拠した手法で定義される。具体的に、ユーザ１の閲覧履歴が「ウインナー／人参／アルミホイル／割箸」であり、ユーザ２の閲覧履歴が「ソーセージ／人参／アルミホイル／割箸」であった場合、共通する「人参／アルミホイル／割箸」と一緒に閲覧された「ウインナー」と「ソーセージ」が類似すると判断される。
【０００５】
更に、その発展形として、カテゴリを示す補助情報（メタ情報）を加味したMeta-Prod 2 Vecという技術が公開されている（非特許文献１参照）。レコメンドに適用する場合において、Meta-Prod 2 Vecは、既知情報として商品に付与されているカテゴリの情報を用いて、商品ベクトルとカテゴリベクトルを同時に学習していく手法である。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】" Meta-Prod2Vec - Product Embeddings Using Side-Information for Recommendation", Flavian Vasile, Elena Smirnova, and Alexis Conneau, 25 Jul 2016 < https://arxiv.org/pdf/1607.07326.pdf>.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、従来の手法によって、ユーザが選択した商品の商品ベクトルと近い商品ベクトルを有する商品を付随レコメンド商品として選択する場合、選択した商品と同じカテゴリの商品が集中的に選択されるかも知れないし、複数のカテゴリに分散して商品が選択されるかも知れなかった。従って、付随レコメンド商品のカテゴリのバラつきに関して運営者の側でコントロールすることができず、所望のカテゴリのバラつきで商品をレコメンドすることができない場合があった。
【０００８】
本発明は、このような事情を考慮してなされたものであり、所望のカテゴリのバラつきでレコメンドを行う（或いは行わせる）ことができる情報処理装置、情報処理方法、およびプログラムを適用することを目的の一つとする。
【課題を解決するための手段】
【０００９】
本発明の一態様は、複数のレコメンド対象のそれぞれの特徴を示す複数の対象ベクトルと、前記複数のレコメンド対象のそれぞれに付与されるカテゴリの特徴を示す複数のカテゴリベクトルとを取得する取得部と、ユーザにより選択された選択レコメンド対象に付随してレコメンドされる付随レコメンド対象を選択する際に、前記選択レコメンド対象に付与されたカテゴリのカテゴリベクトルと類似する一以上のカテゴリベクトルを抽出し、前記抽出した一以上のカテゴリベクトルのそれぞれに対応したレコメンド対象が含まれるように、前記付随レコメンド対象を選択するレコメンド処理部と、を備える情報処理装置である。
【発明の効果】
【００１０】
本発明の一態様によれば、所望のカテゴリのバラつきでレコメンドを行う（或いは行わせる）ことができる。
【図面の簡単な説明】
【００１１】
【図１】第１実施形態に係る情報処理装置を利用したショッピングサーバ１００の構成および使用環境の一例を示す図である。
【図２】検索入力画面ＩＭ１の一例を示す図である。
【図３】検索結果表示画面ＩＭ２の一例を示す図である。
【図４】商品販売画面ＩＭ３の一例を示す図である。
【図５】商品データ１５０の内容の一例を示す図である。
【図６】ＭＰ２Ｖにおける損失関数の項と、ＭＰ２Ｖを構成するネットワークとの関係を示す図である。
【図７】商品・カテゴリベクトルデータ１５６の内容の一例を示す図である。
【図８】レコメンド処理部１１２の処理の内容を模式的に示す図である。
【図９】商品販売画面ＩＭ４の一例を示す図である。
【図１０】第２実施形態に係るレコメンド処理部１１２Ａの処理の内容を模式的に示す図である。
【図１１】第３実施形態に係る情報処理装置を利用したショッピングサーバ１００Ａの構成および使用環境の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照し、本発明の情報処理装置、情報処理方法、およびプログラムの実施形態について説明する。情報処理装置は、一以上のプロセッサにより実現される。情報処理装置は、ユーザに何かをレコメンドするサービスにおいて、ユーザが選択したレコメンド対象に付随してレコメンドされる、付随レコメンド対象を選択する装置である。ユーザに何かをレコメンドするサービスとしては、前述したように、電子商取引、住居情報提供サービス、婚活サービスなどのマッチングサービス、動画提供サービスなどが挙げられる。以下、電子商取引を例にとって説明する。
【００１３】
電子商取引を支援する場合、レコメンド対象は商品またはサービス（以下の説明ではこれらを区別せず、単に商品と称する）であり、情報処理装置は、ユーザにより選択された選択商品に付随してレコメンドされる付随レコメンド商品を選択する。電子商取引は、ネットワークを介して行われるショッピングやオークション、フリーマーケットなどを含む。以下、レコメンド対象に対して導出される対象ベクトルの一例を、商品ベクトルと称する。また、選択レコメンド対象の一例を選択商品、付随レコメンド対象の一例を付随レコメンド商品と称する。
【００１４】
ショッピングを支援する情報処理装置は、ショッピングサイトを管理するショッピングサーバなどに包含される装置であってもよい。すなわち、情報処理装置は、仮想的な装置であってもよい。また、情報処理装置は、ショッピングサーバそのものであってもよい。以下では、情報処理装置がショッピングサーバの一部を構成するものとして説明する。ショッピングサーバは、ブラウザからのリクエストに応じてショッピングサイトを提供するものであってもよいし、スマートフォンなどにインストールされたアプリケーションプログラムからのリクエストに応じてショッピングサイトと同様のコンテンツを提供するものであってもよい。以下の説明では、情報処理装置は前者であるものとする。
【００１５】
＜第１実施形態＞
図１は、第１実施形態に係る情報処理装置を利用したショッピングサーバ１００の構成および使用環境の一例を示す図である。ショッピングサーバ１００は、ネットワークＮＷを介して、端末装置１０と通信する。ネットワークＮＷは、例えば、インターネット、ＷＡＮ（Wide Area Network）、ＬＡＮ（Local Area Network）、無線基地局、プロバイダ端末、専用回線などを含む。
【００１６】
端末装置１０は、例えば、パーソナルコンピュータやスマートフォンなどの携帯電話、タブレット端末などである。これらにおいて、ブラウザやアプリケーションプログラムなどのＵＡ（User Agent）２０が起動する。ＵＡ２０は、ショッピングサーバ１００から提供された販売画面を表示すると共に、端末装置１０の利用者によってなされた入力操作に応じたリクエストをショッピングサーバ１００に送信する。
【００１７】
ショッピングサーバ１００は、例えば、サイト提供部１０２と、ログ収集部１０４と、検索実行部１０６と、ランキング処理部１０８と、ベクトル導出部１１０と、レコメンド処理部１１２とを備える。レコメンド処理部１１２は、例えば、カテゴリベクトル検索部１１４と、商品ベクトル検索部１１６とを含む。これらの構成要素は、例えば、ＣＰＵ（Central Processing Unit）などの一以上のハードウェアプロセッサがプログラム（ソフトウェア）を実行することにより実現される。これらの構成要素のうち一部または全部は、ＬＳＩ（Large Scale Integration）やＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field-Programmable Gate Array）、ＧＰＵ（Graphics Processing Unit）などのハードウェア（回路部；circuitryを含む）によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予めＨＤＤ（Hard Disk Drive）やフラッシュメモリなどの記憶装置（非一過性の記憶媒体を備える記憶装置）に格納されていてもよいし、ＤＶＤやＣＤ−ＲＯＭなどの着脱可能な記憶媒体（非一過性の記憶媒体）に格納されており、記憶媒体がドライブ装置に装着されることでインストールされてもよい。
【００１８】
本実施形態において、少なくともベクトル導出部１１０とレコメンド処理部１１２とを含むものが、情報処理装置の一例である。
【００１９】
また、ショッピングサーバ１００は、ＨＤＤやフラッシュメモリ、ＲＡＭ（Random Access Memory）などの記憶装置に、商品データ１５０、ログデータ１５２、カテゴリベクトルＩｎｄｅｘ１５４、商品・カテゴリベクトルデータ１５６などのデータを格納している。この記憶装置は、ショッピングサーバ１００に付随するものであってもよいし、ショッピングサーバ１００がネットワークＮＷを介してアクセス可能なＮＡＳ（Network Attached Storage）であってもよい。
【００２０】
サイト提供部１０２は、ショッピングサイトとしての各種画面を端末装置１０に提供する。図２は、検索入力画面ＩＭ１の一例を示す図である。検索入力画面ＩＭ１には、商品を検索するためのクエリを入力するためのクエリ入力欄Ａ１、および、入力されたクエリで検索を実行させるための検索ボタンＢ１が設けられている。クエリ入力欄Ａ１にクエリが入力され、検索ボタンＢ１が操作されると、検索結果表示画面ＩＭ２に遷移する。クエリではなくカテゴリが選択された場合も、同様に検索結果表示画面ＩＭ２に遷移する。
【００２１】
図３は、検索結果表示画面ＩＭ２の一例を示す図である。検索結果表示画面ＩＭ２には、検索結果表示欄Ａ２が含まれる。検索結果表示欄Ａ２には、ランキング処理部１０８によって決定されたランキング順に、スクロールすることで視認可能な所定の数（或いは表示可能な限り全て）の商品の画像や説明（例えば、後述するタイトルの一部または全部）が、ポジション順に並べて表示される。このようなレコメンドの態様をストリーム形式のレコメンドと称する。ストリーム形式のレコメンドにおいて、ポジションは、１番上の位置を１、２番目の位置を２、…というように定義される。検索結果表示画面ＩＭ２において一つの商品の画像や説明が操作（選択）されると、商品販売画面ＩＭ３に遷移する。
【００２２】
図４は、商品販売画面ＩＭ３の一例を示す図である。商品販売画面ＩＭ３には、商品画像表示欄Ａ３−１、タイトル欄Ａ３−２、詳細説明欄Ａ３−３などが含まれる。タイトル欄Ａ３−２や詳細説明欄Ａ３−３には、選択された商品（選択商品）の製造元、商品の素材、使用、その他の内容がテキストとして掲載される。タイトル欄Ａ３−２に表示されるテキストを「タイトル」と称し、詳細説明欄Ａ３−３に表示されるテキストを「詳細説明」と称する。商品販売画面ＩＭ３に対する操作によって、購入者により商品が購入される。
【００２３】
商品販売画面ＩＭ３は、更に、付随レコメンド商品掲載欄Ａ３−４を含む。付随レコメンド商品掲載欄Ａ３−には、レコメンド処理部１１２により選択された付随レコメンド商品の画像や商品説明が掲載される。
【００２４】
以下、各部の機能について説明する。ログ収集部１０４は、利用者ごとのショッピングサイトの利用履歴を収集し、ログデータ１５２に登録する。
【００２５】
検索実行部１０６は、検索入力画面ＩＭ１に対してなされた検索指示に応じて、商品データ１５０を検索する。図５は、商品データ１５０の内容の一例を示す図である。商品データ１５０は、例えば、商品の識別情報である商品ＩＤに対して、カテゴリの識別情報であるカテゴリＩＤ、商品画像、タイトル、詳細説明、価格、その他のデータが対応付けられたものである。これらのうち、商品ＩＤは、不図示の出品受付部により付番された情報であり、その他の情報は、販売者により入力されたものである。
【００２６】
例えば、検索実行部１０６は、タイトルまたは詳細説明の中にクエリが含まれる商品データ１５０のレコード（商品ＩＤ）を抽出し、ランキング処理部１０８に渡す。
【００２７】
ランキング処理部１０８は、検索実行部１０６により抽出されたレコードに対応する商品群について、種々の手法によって導出されたスコアに基づいてランキング処理（順位付け）を行い、検索結果表示画面ＩＭ２の検索結果表示欄Ａ２に情報を表示する商品の順序を決定する。
【００２８】
ベクトル導出部１１０は、複数のユーザの行動履歴、より具体的にはショッピングサイトにおけるユーザの商品の閲覧行動および／または購入行動の履歴に基づいて、複数の商品のそれぞれの特徴を示す複数の商品ベクトルと、複数の商品のそれぞれに付与されるカテゴリの特徴を示すカテゴリベクトルとを導出する。本実施形態において、ベクトル導出部１１０は、自ら商品ベクトルとカテゴリベクトルとを導出することでこれらを「取得する」ものであり、「取得部」の一例である。
【００２９】
商品ベクトルは、ショッピングサイトにおけるユーザの１セッションの行動履歴の中で、例えば商品Ａと商品Ｂが共通して同じ商品と購入された、または商品Ａと商品Ｂのそれぞれに係る商品販売画面ＩＭ３が閲覧されたことが、共通する商品と共起している場合に、商品Ａの商品ベクトルと商品Ｂの商品ベクトルの距離が近くなる（内積が大きくなる）性質を有するものである。以下、「購入された」ことと「閲覧された」ことを総称して「選択された」と称する。セッションとは、種々に定義可能であるが、例えば、ショッピングサイトを開いてから閉じるまで、クッキーの有効期限内などと定義される。ここでの「タイミングが近い」とは、例えば、その事象が、商品の切り替わりをステップの区切りとした場合に連続するステップである、或いは所定ステップ数以内であることを意味する。この対象とするステップ数をウインドウサイズと称する。
【００３０】
カテゴリベクトルは、ショッピングサイトにおけるユーザの１セッションのユーザの行動履歴の中で、例えばカテゴリＣの商品とカテゴリＤの商品が選択されたタイミングが近い場合に、カテゴリＣのカテゴリベクトルとカテゴリＤのカテゴリベクトルの距離が近くなる（内積が大きくなる）性質を有するものである。ここでの「タイミングが近い」とは、例えば、その事象が、商品の切り替わりをステップの区切りとした場合に連続するステップである、或いは所定ステップ数以内であることを意味する。この対象とするステップ数をウインドウサイズと称する。
【００３１】
以下、説明を簡略化するために、商品ベクトルとカテゴリベクトルの双方について、ウインドウサイズは１であるものとする。
【００３２】
ベクトル導出部１１０は、例えば、Meta-Prod 2 Vecに基づいて、商品ベクトルとカテゴリベクトルとを、互いに影響させながら同時並行的に学習する。以下、Meta-Prod 2 VecのことをＭＰ２Ｖと略称する場合がある。ＭＰ２Ｖは、Prod 2 Vecを拡張したものである。Prod 2 Vecは、Word 2 Vecの考え方に従い、商品ベクトルのみを学習する手法である。以下、Prod 2 VecのことをＰ２Ｖと略称する場合がある。ＭＰ２Ｖにおける損失関数ＬＭＰ２Ｖは、式（１）で表される。
【００３３】
ＬＭＰ２Ｖ＝ＬＪ／Ｉ＋λ×（ＬＩ／Ｍ＋ＬＪ／Ｍ＋ＬＭ／Ｉ＋ＬＭ／Ｍ）  …（１）
【００３４】
式（１）において、ＬＪ／ＩはＰ２Ｖにおける損失関数であり、式（２）で表される。λは正則化パラメータである。ＬＩ／Ｍは、着目商品のカテゴリが与えられた場合の着目商品に関する観測された状態確率と、予想された状態確率との間の重み付き交差エントロピーである。ＬＪ／Ｍは、着目商品のカテゴリが与えられた場合の周辺商品に関する観測された状態確率と、予想された状態確率との間の重み付き交差エントロピーである。周辺商品とは、着目商品の前後に選択された商品である。ＬＭ／Ｉは、着目商品が与えられた場合の周辺商品のカテゴリの観測された状態確率と、予想された状態確率との間の重み付き交差エントロピーである。ＬＭ／Ｍは、着目商品のカテゴリが与えられた場合の周辺商品のカテゴリの観測された状態確率と、予想された状態確率との間の重み付き交差エントロピーである。なお、式（１）では同じλをＬＩ／Ｍ、ＬＪ／Ｍ、ＬＭ／Ｉおよび、ＬＭ／Ｍのそれぞれに乗算しているが、λを項ごとに異ならせてもよい。
【００３５】
【数１】
2020129324.tif 000003
【００３６】
図６は、ＭＰ２Ｖにおける損失関数の項と、ＭＰ２Ｖを構成するネットワークとの関係を示す図である。図中、Intputは、入力であり、Projectionは、後述する第１ネットワークと第２ネットワークを結合したものであり、Outputは、出力である。Ｐｉは、選択される商品のワンホットベクトルであり、Ｃｉは選択される商品に付与されたカテゴリのワンホットベクトルである。Ｐｉ−１は、Ｐｉで表される商品の前に選択される商品のワンホットベクトルであり、Ｃｉ−１はＣｉで表されるカテゴリが付与された商品の前に選択される商品に付与されたカテゴリのワンホットベクトルである。Ｐｉ＋１は、Ｐｉで表される商品の後に選択される商品のワンホットベクトルであり、Ｃｉ＋１はＣｉで表されるカテゴリが付与された商品の後に選択される商品に付与されたカテゴリのワンホットベクトルである。図中（１）はＬＪ／Ｉの対象となる事象を示し、（２）はＬＭ／Ｉの対象となる事象を示し、（３）はＬＪ／Ｍの対象となる事象を示し、（４）はＬＭ／Ｍの対象となる事象を示し、（５）はＬＩ／Ｍの対象となる事象を示す。
【００３７】
このような関係の中で、ベクトル導出部１１０は、式（１）で表される損失関数ＬＭＰ２Ｖが小さくなるように、第１ネットワークのパラメータと第２ネットワークのパラメータを学習する。第１ネットワークとは、商品を表すワンホットベクトルが入力されると周辺商品を表すワンホットベクトルが出力されるニューラルネットワークである。第２ネットワークとは、カテゴリを表すワンホットベクトルが入力されると周辺カテゴリを表すワンホットベクトルが出力されるニューラルネットワークである。周辺カテゴリとは、あるカテゴリの商品が選択された前後に、自身に属する商品が選択される可能性の高いカテゴリである。ベクトル導出部１１０は、第１ネットワークのパラメータに基づいて商品ベクトルを導出し、第２ネットワークのパラメータに基づいてカテゴリベクトルを導出する。すなわち、Projectionを構成するパラメータが、商品ベクトルとカテゴリベクトルを含むようになる。図６に示すように、商品ベクトルとカテゴリベクトルは、学習の過程で互いに影響を及ぼし合っており、カテゴリベクトルが近い商品の商品ベクトル同士は距離が近くなり、自身に対応する商品の商品ベクトルが近いカテゴリのカテゴリベクトル同士は距離が近くなるように学習されている。このように導出された商品ベクトルは、値段、ストア、商品性質などを反映したものとなる筈である。これらが近いほど、ユーザーが似たような選択履歴の中で選択する可能性が高くなると考えられるからである。
【００３８】
なお、ＭＰ２Ｖに基づいて商品ベクトルとカテゴリベクトルを導出する手法は、あくまで一例である。ベクトル導出部１１０は、例えば、商品ベクトルとカテゴリベクトルのそれぞれを、Ｐ２Ｖなどの手法に基づいて別々に導出してもよいし、その他の手法によって商品ベクトルとカテゴリベクトルを導出してもよい。
【００３９】
ベクトル導出部１１０は、カテゴリＩＤと、そのカテゴリＩＤを有するカテゴリのカテゴリベクトルとを互いに対応付けて、カテゴリベクトルＩｎｄｅｘとして記憶装置に記憶させる。また、ベクトル導出部１１０は、例えば、ある商品に対して導出された商品ベクトルと、その商品のカテゴリに対して導出されたカテゴリベクトルとを互いに対応付けて、商品・カテゴリベクトルデータ１５６として記憶装置に記憶させる。図７は、カテゴリベクトルＩｎｄｅｘ１５４と商品・カテゴリベクトルデータ１５６の内容の一例を示す図である。図示するように、カテゴリベクトルＩｎｄｅｘ１５４は、カテゴリＩＤ（図５参照）に対して、カテゴリベクトルが対応付けられたデータ構造を有する。商品・カテゴリベクトルデータ１５６は、商品ＩＤ（図５参照）に対して、カテゴリベクトルと商品ベクトルとが結合した結合ベクトルが対応付けられたデータ構造を有するデータベースである。なお、図１において商品データ１５０と商品・カテゴリベクトルデータ１５６とが分かれているのは、あくまで便宜的な表現であり、カテゴリベクトルと商品ベクトルは、商品データ１５０に追加登録されてもよい。
【００４０】
ベクトル導出部１１０の処理は、例えばバッチ処理として、一日に一回程度の頻度で行われてよい。
【００４１】
レコメンド処理部１１２は、以下に説明する手法によって、選択商品に対して付随的にレコメンドする付随レコメンド商品を選択する。レコメンド処理部１１２は、選択商品に付与されたカテゴリのカテゴリベクトルと類似する複数のカテゴリベクトルを抽出し、抽出した複数のカテゴリベクトルのそれぞれに対応したレコメンド対象が少なくとも一つ含まれるように、付随レコメンド商品を選択する。より具体的には、レコメンド処理部１１２は、抽出した一以上のカテゴリベクトルのそれぞれについて、当該カテゴリベクトルが付与された商品の中から選択商品の商品ベクトルと類似する商品ベクトルを有する商品を抽出し、抽出した商品を付随レコメンド商品として選択する。
【００４２】
図８は、レコメンド処理部１１２の処理の内容を模式的に示す図である。例えば、レコメンド処理部１１２は、選択商品の商品ＩＤをサイト提供部１０２から取得すると、商品ＩＤをキーにして商品データ１５０を検索し、カテゴリＩＤを取得する。なお、商品ＩＤとカテゴリＩＤがセットとしてサイト提供部１０２からレコメンド処理部１１２に渡されてもよく、その場合、係る処理は省略可能である。
【００４３】
次に、カテゴリベクトル検索部１１４が、選択商品のカテゴリＩＤをキーにしてカテゴリベクトルＩｎｄｅｘ１５４を検索し、選択商品のカテゴリベクトルＶｃを取得すると共に、選択商品のカテゴリベクトルＶｃを含めて、選択商品のカテゴリベクトルＶｃに類似する（例えば、ベクトル間の距離が近い）順に上位ｎ個のカテゴリベクトルに対応するｎ個のカテゴリＩＤを抽出する。
【００４４】
カテゴリベクトルＩｎｄｅｘ１５４を備えることにより、、選択商品のカテゴリベクトルＶｃに類似するカテゴリベクトルを抽出する処理を高速化することができる。仮にカテゴリベクトルＶｃをキーにして商品・カテゴリベクトルデータ１５６を直接検索する場合、選択商品のカテゴリベクトルＶｃに類似するカテゴリベクトルを抽出するのに商品ＩＤの数だけ処理を行う必要があるが、カテゴリベクトルＩｎｄｅｘ１５４を参照すれば、カテゴリＩＤの数だけ処理を行えば済む。通常、カテゴリＩＤの数は商品ＩＤの数に比して小さいからである。
【００４５】
次に、商品ベクトル検索部１１６が、選択商品の商品ベクトルＶｐを商品・カテゴリベクトルデータ１５６から取得すると共に、上位ｎ個のカテゴリＩＤのそれぞれに該当するデータごとに、選択商品の商品ベクトルＶｐをキーにして検索を行い、選択商品の商品ベクトルＶｐに類似する（例えば、ベクトル間の距離が近い）順に上位ｋ個の商品ＩＤを抽出する。このようにして抽出された商品ＩＤ（例えばｎ×ｋ個の商品ＩＤ）が、付随レコメンド商品の商品ＩＤとなる。これによって、情報処理装置は、ｎやｋを調整することで、所望のカテゴリのバラつきでレコメンドを行うことができる。
【００４６】
なお、商品ベクトル検索部１１６は、カテゴリごとの抽出を行うのに加えて、カテゴリ不問で選択商品の商品ベクトルＶｐに類似する商品ＩＤを抽出し、これを最上位の付随レコメンド商品群としてもよい。また、商品ベクトル検索部１１６は、上位ｎ個のカテゴリベクトルのそれぞれに対して同じｋ個の商品ＩＤを抽出するのに代えて、選択商品のカテゴリベクトルＶｃに類似する度合いが高い（距離が近い）ほど、多くの商品ＩＤを抽出するようにしてもよい。
【００４７】
サイト提供部１０２は、レコメンド処理部１１２により選択された付随レコメンド商品と、選択商品とを含む画像（例えば、図４に示す商品販売画面ＩＭ３）を、ユーザの端末装置１０に提供する。これによって、ユーザは、自身が選択した商品のみならず、選択した商品のカテゴリと関連性の高い商品のレコメンドを受けることができ、購入活動の幅を広げることができる。
【００４８】
この際に、サイト提供部１０２は、同じカテゴリのレコメンド対象が一団となるように画面を設定してもよい。図９は、このように設定された商品販売画面ＩＭ４の一例を示す図である。商品販売画面ＩＭ４には、選択商品の画像や説明が表示される商品画像表示欄Ａ４−１、付随レコメンド商品がカテゴリごとにまとめて表示される付随レコメンド商品掲載欄Ａ４−２−１、Ａ４−２−２、Ａ４−２−３、…が含まれる。また、各付随レコメンド商品掲載欄には、カテゴリを示すラベルＬＢが付与されてもよい。こうすれば、ユーザは興味のあるカテゴリに絞って閲覧・購入のための操作を行うことができる。なお、付随レコメンド商品掲載欄は、横方向または縦方向にスクロール可能であってよい。
【００４９】
以上説明した第１実施形態の情報処理装置によれば、複数の商品のそれぞれの特徴を示す複数の商品ベクトルと、複数の商品のそれぞれに付与されるカテゴリの特徴を示す複数のカテゴリベクトルとを取得する取得部（ベクトル導出部１１０）と、ユーザにより選択された選択商品に付随してレコメンドされる付随レコメンド商品を選択する際に、選択商品に付与されたカテゴリのカテゴリベクトルと類似する一以上のカテゴリベクトルを抽出し、抽出した一以上のカテゴリベクトルのそれぞれに対応した商品が含まれるように、付随レコメンド商品を選択するレコメンド処理部１１２とを備えることにより、所望のカテゴリのバラつきでレコメンドを行う（或いは行わせる）ことができる。
【００５０】
また、第１実施形態の情報処理装置が行う処理は、ストリーム形式のレコメンドと相性が良く、これを処理対象とすることで、適度なカテゴリのバラつきでレコメンドを行う（或いは行わせる）ことができる。後述する第２〜第４実施形態についても同様である。
【００５１】
＜第２実施形態＞
以下、第２実施形態について説明する。第２実施形態では、レコメンド処理部１１２の機能が第１実施形態と異なる。以下、構成について図示しないが、第２実施形態に係るものを、それぞれレコメンド処理部１１２Ａ、カテゴリベクトル検索部１１４Ａ、商品ベクトル検索部１１６Ａと称する。
【００５２】
レコメンド処理部１１２Ａは、選択商品に付与されたカテゴリのカテゴリベクトルと類似する複数の（ｎ個の）カテゴリベクトルを抽出し、抽出したｎ個のカテゴリベクトルのそれぞれを選択商品の商品ベクトルと結合したｎ個の結合ベクトルを用いて商品・カテゴリベクトルデータ１５６を検索することで、付随レコメンド商品を選択する。
【００５３】
図１０は、第２実施形態に係るレコメンド処理部１１２Ａの処理の内容を模式的に示す図である。例えば、レコメンド処理部１１２Ａは、選択商品の商品ＩＤをサイト提供部１０２から取得すると、商品ＩＤをキーにして商品データ１５０を検索し、カテゴリＩＤを取得する。なお、商品ＩＤとカテゴリＩＤがセットとしてサイト提供部１０２からレコメンド処理部１１２に渡されてもよく、その場合、係る処理は省略可能である。
【００５４】
次に、カテゴリベクトル検索部１１４Ａが、選択商品のカテゴリＩＤをキーにしてカテゴリベクトルＩｎｄｅｘ１５４を検索し、選択商品のカテゴリベクトルＶｃを取得すると共に、選択商品のカテゴリベクトルＶｃを含めて、選択商品のカテゴリベクトルＶｃに類似する（例えば、ベクトル間の距離が近い）順に上位ｎ個のカテゴリベクトルを抽出する。
【００５５】
次に、商品ベクトル検索部１１６Ａが、選択商品の商品ベクトルＶｐを商品・カテゴリベクトルデータ１５６から取得すると共に、上位ｎ個のカテゴリベクトルＶｃ１〜Ｖｃｎのそれぞれと選択商品の商品ベクトルＶｐとを結合したｎ個の結合ベクトル（Ｖｃ１，Ｖｐ）、（Ｖｃ２，Ｖｐ）、…、（Ｖｃｎ，Ｖｐ）（以下、シード結合ベクトルと称する）をキーにして商品・カテゴリベクトルデータ１５６を検索する。これによって、シード結合ベクトルごとに、シード結合ベクトルに類似する（例えば、ベクトル間の距離が近い）順に上位ｋ個の結合ベクトルを商品・カテゴリベクトルデータ１５６から抽出し、抽出した結合ベクトルに対応する商品ＩＤを取得する。このようにして取得された商品ＩＤ（例えばｎ×ｋ個の商品ＩＤ）が、付随レコメンド商品の商品ＩＤとなる。これによって、情報処理装置は、ｎやｋを調整することで、所望のカテゴリのバラつきでレコメンドを行うことができる。
【００５６】
なお、第２実施形態の手法では、必ずしもカテゴリごとにｋ個の付随レコメンド商品が選択される訳ではない。例えば、シード結合ベクトルのうちカテゴリベクトルの部分との類似性は低いが、商品ベクトルの部分との類似性が非常に高い商品は、第１実施形態の手法では選択されないが、第２実施形態の手法では選択される可能があるからである。しかしながら、結合ベクトルのうち一定部分を占めるカテゴリベクトルは、付随レコメンド商品の選択に際して、ある程度の影響力を発揮することが期待される。また、その影響力が十分でない場合、カテゴリベクトルの部分のノルムを商品ベクトル部分のノルムよりも大きくするなどして調整可能である。従って、第２実施形態の手法によっても所望のカテゴリのバラつきでレコメンドを行うことができる。
【００５７】
また、マイナーなカテゴリ（該当する商品が少ないカテゴリ）のカテゴリベクトルが上位ｎ個のカテゴリベクトルとして抽出された場合、第１実施形態の手法では、そのカテゴリについてｋ個の付随レコメンド商品が選択されない場合があるのに対し、第２実施形態の手法では、シード結合ベクトルに類似する結合ベクトルは商品の数だけ候補が存在するのであるから、殆どの場合は抽出可能となる。従って、特段の補充処理をすることなく、高確率でｎ×ｋ個の商品ＩＤを自動的に決定することができる。また、予めカテゴリの数が分からないときにも適用が容易である。なお、必ずカテゴリごとにｋ個の付随レコメンド商品を選択したい場合、図１０に示す処理の後、カテゴリごとに商品数を集計し、カテゴリごとの商品数を揃えるための調整を行ってもよい。
【００５８】
以上説明した第２実施形態によれば、レコメンド処理部１１２Ａが、抽出した所定数のカテゴリベクトルのそれぞれと商品ベクトルとを結合した所定数のシード結合ベクトルをキーとして、複数のレコメンド対象のカテゴリベクトルと対象ベクトルとが結合した結合ベクトルを集めた商品・カテゴリベクトルデータ１５６を参照して、所定数のシード結合ベクトルのそれぞれに類似する一以上の結合ベクトルを抽出し、抽出した一以上の結合ベクトルに対応する商品を、付随レコメンド商品として選択するため、第１実施形態と同様、所望のカテゴリのバラつきでレコメンドを行う（或いは行わせる）ことができる。また、第１実施形態に比して、商品の構成数が少ないカテゴリが選択された場合でも、当初予定されたｎ×ｋ個の付随レコメンド商品を自動的に選択することができる。
【００５９】
＜第３実施形態＞
以下、第３実施形態について説明する。第３実施形態において「取得部」は、自ら商品ベクトルおよびカテゴリベクトルを導出することで取得するのではなく、他装置から商品ベクトルとカテゴリベクトルとのうち少なくとも一方を取得する。
【００６０】
図１１は、第３実施形態に係る情報処理装置を利用したショッピングサーバ１００Ｂの構成および使用環境の一例を示す図である。ショッピングサーバ１００と比較すると、ショッピングサーバ１００Ｂは、ベクトル導出部１１０に代えて取得部１１１を備える。取得部１１１は、ベクトル導出装置２００から商品ＩＤに対応付けられた商品ベクトルおよびカテゴリベクトルを取得し、カテゴリベクトルＩｎｄｅｘ１５４、および商品・カテゴリベクトルデータ１５６の形式で記憶装置に記憶させる。
【００６１】
ベクトル導出装置２００は、例えば、ネットワークＮＷに接続されており、所望のタイミングで商品データ１５０とログデータ１５２をショッピングサーバ１００Ａから取得し、第１実施形態におけるベクトル導出部１１０と同様の処理を行って商品ベクトルおよびカテゴリベクトルを導出する。なお、ベクトル導出装置２００は、ログデータ１５２を自身で収集するものであってもよい。
【００６２】
以上説明した第３実施形態の情報処理装置によれば、複数の商品のそれぞれの特徴を示す複数の商品ベクトルと、複数の商品のそれぞれに付与されるカテゴリの特徴を示す複数のカテゴリベクトルとを取得する取得部１１１と、ユーザにより選択された選択商品に付随してレコメンドされる付随レコメンド商品を選択する際に、選択商品に付与されたカテゴリのカテゴリベクトルと類似する一以上のカテゴリベクトルを抽出し、抽出した一以上のカテゴリベクトルのそれぞれに対応した商品が含まれるように、付随レコメンド商品を選択するレコメンド処理部１１２とを備えることにより、所望のカテゴリのバラつきでレコメンドを行う（或いは行わせる）ことができる。
【００６３】
＜第４実施形態＞
第４実施形態は、第２実施形態の情報処理装置を、第３実施形態のように、他装置からベクトルを取得するようにした形態である。
【００６４】
上記各実施形態において、レコメンド対象は電子商取引における「商品」であるものとしたが、これに限られない。レコメンド対象は、例えば、賃貸物件、土地、家屋などの住居情報であってもよい。この場合、カテゴリは、例えば地域や家屋タイプなどであり、住居情報ベクトルとカテゴリベクトルを用いて、付随レコメンド対象としての住居情報が選択される。
【００６５】
また、レコメンド対象は、マッチングサービスなどにおける「人」であってもよい。この場合、カテゴリは、例えば職業であり、人ベクトル（ユーザベクトル）とカテゴリベクトルを用いて、付随レコメンド対象としての人が選択される。
【００６６】
また、レコメンド対象は、動画提供サービスなどにおける「コンテンツ」であってもよい。この場合、カテゴリは、例えば動画内容の種別であり、コンテンツベクトルとカテゴリベクトルを用いて、付随レコメンド対象としてのコンテンツが選択される。
【００６７】
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【符号の説明】
【００６８】
１００  ショッピングサーバ
１０２  サイト提供部
１０４  ログ収集部
１０６  検索実行部
１０８  ランキング処理部
１１０  ベクトル導出部
１１１  取得部
１１２  レコメンド処理部
１１４  カテゴリベクトル検索部
１１６  商品ベクトル検索部
１５０  商品データ
１５２  ログデータ
１５４  カテゴリベクトルＩｎｄｅｘ
１５６  商品・カテゴリベクトルデータ
【図１】
2020129324.tif 000004
【図２】
2020129324.tif 000005
【図３】
2020129324.tif 000006
【図４】
2020129324.tif 000007
【図５】
2020129324.tif 000008
【図６】
2020129324.tif 000009
【図７】
2020129324.tif 000010
【図８】
2020129324.tif 000011
【図９】
2020129324.tif 000012
【図１０】
2020129324.tif 000013
【図１１】
2020129324.tif 000014