(57)【要約】【課題】処理負荷を低減させながら、ユーザにとって興味関心の高い情報を特定することができる情報処理装置、情報処理方法、およびプログラムを提供する。【解決手段】情報処理装置は、端末装置を使用するユーザのログ情報に関連するワードがベクトルに変換されたワードベクトルに基づいて、前記ユーザを分散表現したユーザベクトルを生成する生成部と、前記端末装置に配信する複数のコンテンツの候補がベクトルで表された複数のコンテンツベクトルのそれぞれと、前記生成部により生成されたユーザベクトルとを比較して、前記複数のコンテンツベクトルの中から一以上のコンテンツベクトルを選択する選択部と、を備える。【選択図】図３
2018088051.tif 000002
【特許請求の範囲】
【請求項１】
端末装置を使用するユーザのログ情報に関連するワードがベクトルに変換されたワードベクトルに基づいて、前記ユーザを分散表現したユーザベクトルを生成する生成部と、
前記端末装置に配信する複数のコンテンツの候補がベクトルで表された複数のコンテンツベクトルのそれぞれと、前記生成部により生成されたユーザベクトルとを比較して、前記複数のコンテンツベクトルの中から一以上のコンテンツベクトルを選択する選択部と、
を備える情報処理装置。
【請求項２】
前記ワードベクトルと、前記コンテンツベクトルとは、同じ変換手法で生成される、
請求項１に記載の情報処理装置。
【請求項３】
前記コンテンツベクトルは、前記コンテンツに含まれるワードをベクトルに変換したものである、
請求項１または２に記載の情報処理装置。
【請求項４】
前記コンテンツベクトルは、前記コンテンツが検索された際に入力されたクエリをベクトルに変換したものである、
請求項１から３のうちいずれか１項記載の情報処理装置。
【請求項５】
前記コンテンツベクトルは、コンテンツが選択された際に操作された領域内に含まれるワードをベクトルに変換したものである、
請求項１から４のうちいずれか１項記載の情報処理装置。
【請求項６】
前記生成部は、前記ログ情報として記録された回数に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から５のうちいずれか１項に記載の情報処理装置。
【請求項７】
前記生成部は、前記ログ情報として記録された時刻に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から６のうちいずれか１項に記載の情報処理装置。
【請求項８】
前記生成部は、前記ログ情報がクエリである場合、同時に入力または選択されたクエリの数に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から７のうちいずれか１項に記載の情報処理装置。
【請求項９】
前記生成部は、前記ログ情報に複数のクエリが含まれる場合、クエリの類似性に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から８のうちいずれか１項に記載の情報処理装置。
【請求項１０】
前記生成部は、前記ログ情報に関連するワードを形態素解析により形態素ごとに分割し、前記分割した形態素を表すワードの希少性に応じて前記ワードを評価した値に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から９のうちいずれか１項に記載の情報処理装置。
【請求項１１】
前記選択部は、前記コンテンツベクトルと前記ユーザベクトルとの類似度に基づいて、前記一以上のコンテンツベクトルを選択する、
請求項１から１０のうちいずれか１項に記載の情報処理装置。
【請求項１２】
前記選択部は、複数の前記ユーザ間における前記ワードの注目度合に基づいて、前記一以上のコンテンツベクトルを選択する、
請求項１から１１のうちいずれか１項に記載の情報処理装置。
【請求項１３】
コンピュータが、
端末装置を使用するユーザのログ情報に関連するワードがベクトルに変換されたワードベクトルに基づいて、前記ユーザを分散表現したユーザベクトルを生成し、
前記端末装置に配信する複数のコンテンツの候補がベクトルで表された複数のコンテンツベクトルのそれぞれと、前記生成したユーザベクトルとを比較して、前記複数のコンテンツベクトルの中から一以上のコンテンツベクトルを選択する、
情報処理方法。
【請求項１４】
コンピュータに、
端末装置を使用するユーザのログ情報に関連するワードがベクトルに変換されたワードベクトルに基づいて、前記ユーザを分散表現したユーザベクトルを生成させ、
前記端末装置に配信する複数のコンテンツの候補がベクトルで表された複数のコンテンツベクトルのそれぞれと、前記生成させたユーザベクトルとを比較させて、前記複数のコンテンツベクトルの中から一以上のコンテンツベクトルを選択させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【０００２】
従来、ユーザが閲覧したコンテンツに基づいて配信対象コンテンツを予測してレコメンド情報として配信する技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２６２３８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術では、ユーザが閲覧したコンテンツに含まれる単語同士が共起するような関係性については考慮されていないため、ユーザにとってより興味関心の高いコンテンツをレコメンドするためには、より多くのコンテンツの閲覧履歴が必要であった。この結果、処理の対象とする情報が増加し、処理が煩雑となって処理負荷が増大する傾向にあった。
【０００５】
本発明は、上記の課題に鑑みてなされたものであって、処理負荷を低減させながら、ユーザにとって興味関心の高い情報を特定することができる情報処理装置、情報処理方法、およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
本発明の一態様は、端末装置を使用するユーザのログ情報に関連するワードがベクトルに変換されたワードベクトルに基づいて、前記ユーザを分散表現したユーザベクトルを生成する生成部と、前記端末装置に配信する複数のコンテンツの候補がベクトルで表された複数のコンテンツベクトルのそれぞれと、前記生成部により生成されたユーザベクトルとを比較して、前記複数のコンテンツベクトルの中から一以上のコンテンツベクトルを選択する選択部と、を備える情報処理装置である。
【発明の効果】
【０００７】
本発明の一態様によれば、処理負荷を低減させながら、ユーザにとって興味関心の高い情報を特定することができる情報処理装置、情報処理方法、およびプログラムを提供することができる。
【図面の簡単な説明】
【０００８】
【図１】第１実施形態における情報処理装置１００を含む情報処理システム１の一例を示す図である。
【図２】第１実施形態における情報処理システム１の一連の処理の一例を示すシーケンス図である。
【図３】第１実施形態における情報処理装置１００の一例を示す図である。
【図４】ログ情報関連ワード１３１の一例を示す図である。
【図５】制御部１１０により実行される処理の一例を示すフローチャートである。
【図６】コーパス１３２の一例を示す図である。
【図７】ワード‐ベクトル変換情報１３３の一例を示す図である。
【図８】ユーザベクトル情報１３４の一例を示す図である。
【図９】配信候補ワードの配信優先度を決定する処理を模式的に示す図である。
【図１０】配信優先度情報１３５の一例を示す図である。
【図１１】コンテンツに対応付けられたメタ情報の一例を示す図である。
【図１２】興味関心の傾向が似ているユーザ同士を分類した図である。
【図１３】レコメンドワードの適切可否が選択される様子を模式的に示す図である。
【図１４】ユーザベクトルのグループごとにネガティブフィードバック情報を反映させる様子を模式的に示す図である。
【図１５】第５実施形態における情報処理装置１００Ｄの一例を示す図である。
【図１６】画像ベクトルの生成方法を説明するための図である。
【図１７】画像ベクトル情報１３６の一例を示す図である。
【図１８】画像の配信優先度を決定する処理を模式的に示す図である。
【図１９】実施形態のワード‐ベクトル変換装置３０および情報処理装置１００、１００Ｄのハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明を適用した情報処理装置、情報処理方法、およびプログラムを、図面を参照して説明する。
【００１０】
［概要］
情報処理装置は、一以上のプロセッサによって実現される。情報処理装置は、端末装置を使用するユーザのログ情報に関連するワードがベクトルに変換されたワードベクトルに基づいて、ユーザを分散表現したユーザベクトルを生成する。そして、情報処理装置は、端末装置に配信する複数のコンテンツの候補がベクトルで表された複数のコンテンツベクトルのそれぞれと、生成したユーザベクトルとを比較して、複数のコンテンツベクトルの中から一以上のコンテンツベクトルを選択する。これによって、処理負荷を低減させながら、ユーザにとって興味関心の高い情報を特定することができる。
【００１１】
本実施形態におけるログ情報とは、ユーザが特定のワード（単語や文章（複合語））に興味を示したうえで、そのワードが入力または選択された、ということがわかる履歴情報である。例えば、ログ情報には、検索時に入力または選択されたクエリの履歴（いわゆる検索ログ）や、ユーザによりハイパーリンクが選択されることで、または直接入力されることで選択されたＵＲＬ（Uniform Resource Locator）などの参照子の履歴、アクセス先のウェブページのＩＰアドレスなどが含まれる。クエリが「選択された」とは、検索サイトやこれに相当するアプリケーションなどの検索窓に入力されたクエリに応じてサジェストされた複数のサブクエリのうち、いずれかが選択されたことをいう。この場合、選択されたサブクエリがワードとなる。
【００１２】
＜第１実施形態＞
［全体構成］
図１は、第１実施形態における情報処理装置１００を含む情報処理システム１の一例を示す図である。第１実施形態における情報処理システム１は、例えば、一以上の端末装置１０と、サービス提供装置２０と、ワード‐ベクトル変換装置３０と、情報処理装置１００とを備える。これらの装置は、ネットワークＮＷを介して接続される。なお、情報処理システム１に含まれる複数の装置の一部または全部は、一つの情報処理装置１００内に集約されていてもよい。
【００１３】
図１に示す各装置は、ネットワークＮＷを介して種々の情報を送受信する。ネットワークＮＷは、例えば、無線基地局、Ｗｉ‐Ｆｉアクセスポイント、通信回線、プロバイダ、インターネットなどを含む。なお、図１に示す各装置の全ての組み合わせが相互に通信可能である必要はなく、ネットワークＮＷは、一部にローカルなネットワークを含んでもよい。
【００１４】
端末装置１０は、ユーザによって使用される装置である。端末装置１０は、例えば、スマートフォンなどの携帯電話、タブレット端末、パーソナルコンピュータなどのコンピュータ装置である。例えば、端末装置１０は、ユーザによる操作を受け付けて、所定のウェブブラウザを介して、サービス提供装置２０が提供するウェブサイトにアクセスしてもよいし、予めインストールされたアプリケーションを介してサービス提供装置２０と通信を行い、アプリケーション上で表示或いは再生するコンテンツ（例えば画像や動画、テキストなど）を取得してもよい。このアプリケーションは、例えば、ショッピングアプリなどの商品やサービスを購入可能なアプリケーションであってもよいし、ＳＮＳ（Social Networking Service）、メールサービス、天気予報などの情報提供サービスといった各種サービスを享受可能なアプリケーションであってもよい。
【００１５】
サービス提供装置２０は、インターネット上において、検索サイト等のウェブサイトを提供するウェブサーバ装置であってよいし、アプリケーションが起動された端末装置１０と通信を行って、各種情報の受け渡しを行うアプリケーションサーバ装置であってもよい。アプリケーションサーバ装置が提供する情報に基づいて端末装置１０のアプリケーションプログラムが生成する画面では、ウェブサーバ装置が提供するウェブサイトと同様のサービスが提供される。
【００１６】
例えば、サービス提供装置２０は、ＳＮＳにおいて、現在インターネット上で注目を集めているワードをレコメンドワードとして、端末装置１０にプッシュ通知などを利用して配信する。
【００１７】
また、サービス提供装置２０は、例えば、提供するサービス内で入力または選択されたクエリ、およびそのクエリが入力または選択された時刻を含むログをユーザ毎に蓄積する。また、サービス提供装置２０は、ウェブページなどにおいて、ハイパーリンクの貼られた領域がユーザによって選択された場合、この領域に含まれるワードをログとして蓄積してもよい。また、サービス提供装置２０は、ユーザによってＵＲＬなどで指示されたウェブページなどにタイトルが付されている場合、そのタイトルをログに付随する情報（ログに関連するワード）として蓄積してもよい。「ユーザ毎」とは、例えば、端末装置１０毎であってもよいし、一つの端末装置１０におけるＯＳ（Operating System）単位でのアカウント毎であってもよいし、ウェブブラウザまたはアプリケーション単位でのアカウント毎であってもよい。なお、サービス提供装置２０は、自らが提供するサービスのログを蓄積する代わりに、或いは加えて、他のサービス提供装置（不図示）により提供されるサービスのログを取得して蓄積してもよい。サービス提供装置２０は、ユーザ毎に蓄積したログを含むログ情報を、情報処理装置１００に送信する。
【００１８】
ワード‐ベクトル変換装置３０は、情報処理装置１００から受信したコーパスに含まれるワードを、例えば分散表現としてのワードベクトルに変換する。例えば、ワード‐ベクトル変換装置３０は、ｗｏｒｄ２ｖｅｃと称されているツール（プログラム）を利用して、コーパスに含まれる複数のワードのそれぞれをワードベクトルに変換する。ｗｏｒｄ２ｖｅｃとは、ニューラルネットワークと呼ばれるモデルを利用したツールであり、コーパスに含まれるワードを、そのワードの特徴を示す特徴ベクトル（ワードベクトル）に変換して出力するものである。
【００１９】
情報処理装置１００は、サービス提供装置２０により送信されたログ情報からコーパスを生成し、このコーパスをワード‐ベクトル変換装置３０に送信する。また、情報処理装置１００は、ワード‐ベクトル変換装置３０から、コーパスに含まれるワードのそれぞれがベクトルに変換されたワードベクトルを受信し、このワードベクトルに基づいて、コーパスに含まれるワードを入力または選択したユーザを分散表現したユーザベクトルを生成する。そして、情報処理装置１００は、生成したユーザベクトルと、コンテンツベクトル（後述）とを比較して、その比較結果に基づく情報をサービス提供装置２０に送信する。
【００２０】
図２は、第１実施形態における情報処理システム１の一連の処理の一例を示すシーケンス図である。まず、サービス提供装置２０は、ログ情報やそれに付随する情報を情報処理装置１００に送信する（Ｓ１００）。
【００２１】
次に、情報処理装置１００は、ログ情報などに基づいてコーパスを生成し（Ｓ１０２）、このコーパスをワード‐ベクトル変換装置３０に送信する（Ｓ１０４）。なお、コーパスの生成は、サービス提供装置２０により行われてもよい。この場合、サービス提供装置２０は、生成したコーパスをワード‐ベクトル変換装置３０に送信する。
【００２２】
次に、ワード‐ベクトル変換装置３０は、コーパスに含まれるワードをワードベクトルに変換し（Ｓ１０６）、変換したワードベクトルと、変換元のワードとの対応関係を示すワード‐ベクトル変換情報を、情報処理装置１００に送信する（Ｓ１０８）。
【００２３】
次に、情報処理装置１００は、ワード‐ベクトル変換情報に含まれるワードベクトルに基づいて、コーパスに含まれるワードを入力または選択したユーザを分散表現したユーザベクトルを生成する（Ｓ１１０）。
【００２４】
次に、サービス提供装置２０は、端末装置１０への配信候補となるワードを示す配信候補ワード情報を、情報処理装置１００に送信する（Ｓ１１２）。例えば、サービス提供装置２０は、提供するサービス内で使用されたワードのうち、ある観測期間において入力や選択の頻度が高かったワードを、配信候補ワードとして決定する。また、サービス提供装置２０は、優先的にユーザに周知したいワードを配信候補ワードとして決定してもよい。なお、サービス提供装置２０は、Ｓ１００の処理の前や、Ｓ１００の処理と同時または直後に、配信候補ワード情報を送信してもよい。
【００２５】
次に、情報処理装置１００は、配信候補ワード情報を参照して、配信候補ワードに対応するワードベクトルをワード‐ベクトル変換情報から選択し（Ｓ１１４）、この選択したワードベクトルと、ユーザベクトルとを比較し（Ｓ１１６）、その比較結果に基づく情報をサービス提供装置２０に送信する（Ｓ１１８）。配信候補ワードに対応するワードベクトルは、「コンテンツベクトル」の一例である。
【００２６】
これを受けて、サービス提供装置２０は、配信候補ワードの中からレコメンドワードを決定し、このレコメンドワードを端末装置１０に送信する（Ｓ１２０）。これによって、端末装置１０には、レコメンドワードが提示された画面が表示される（Ｓ１２２）。
【００２７】
［情報処理装置の構成］
以下、図を参照して情報処理装置１００の構成について説明する。図３は、第１実施形態における情報処理装置１００の一例を示す図である。図示のように、情報処理装置１００は、例えば、通信部１０２と、制御部１１０と、記憶部１３０とを備える。
【００２８】
通信部１０２は、例えば、ＮＩＣ（Network Interface Card）等の通信インターフェースやＤＭＡ（Direct Memory Access）コントローラを含む。通信部１０２は、ネットワークＮＷを介して、サービス提供装置２０、またはワード‐ベクトル変換装置３０と通信する。例えば、通信部１０２は、サービス提供装置２０からログ情報や、そのログ情報に付随する情報を受信し、これらを記憶部１３０にログ情報関連ワード１３１として記憶させる。ログ情報関連ワード１３１は、サービス提供装置２０によって蓄積されたログ情報から、直接的にワードを認識できない情報（ＵＲＬなど）を除いたものである。
【００２９】
また、通信部１０２は、ワード‐ベクトル変換装置３０により送信されたワード‐ベクトル変換情報を受信し、これをワード‐ベクトル変換情報１３３として記憶部１３０に記憶させる。
【００３０】
図４は、ログ情報関連ワード１３１の一例を示す図である。ログ情報関連ワード１３１は、ユーザの識別情報（図中ユーザＩＤ）に対して、サービス提供装置２０から取得したログ情報に関連するワード（ログ情報に含まれるワードやそのログ情報に付随するワード）と、そのワードが入力または選択された時刻とが対応付けられた情報である。
【００３１】
制御部１１０は、例えば、コーパス生成部１１２と、ユーザベクトル生成部１１４と、選択決定部１１６とを備える。選択決定部１１６は、「選択部」の一例である。
【００３２】
これらの構成要素は、例えば、ＣＰＵ（Central Processing Unit）などのプロセッサが記憶部１３０に格納されたプログラムを実行することにより実現される。また、制御部１１０の構成要素の一部または全部は、ＬＳＩ（Large Scale Integration）、ＡＳＩＣ（Application Specific Integrated Circuit）、またはＦＰＧＡ（Field-Programmable Gate Array）などのハードウェア（回路部；circuitry）により実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。
【００３３】
記憶部１３０は、例えば、ＨＤＤ（Hard Disc Drive）、フラッシュメモリ、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）などにより実現される。記憶部１３０は、ファームウェアやアプリケーションプログラムなどの各種プログラムや上述したログ情報関連ワード１３１、コーパス１３２、ワード‐ベクトル変換情報１３３、ユーザベクトル情報１３４、配信優先度情報１３５などを記憶する。これらの情報については後述する。
【００３４】
以下、フローチャートに即して、制御部１１０による一連の処理について説明する。図５は、制御部１１０により実行される処理の一例を示すフローチャートである。例えば、本フローチャートの処理は、所定の周期で繰り返し行われる。
【００３５】
まず、コーパス生成部１１２は、通信部１０２によりサービス提供装置２０からログ情報関連ワード１３１が受信されるまで待機し（Ｓ２００）、通信部１０２によりログ情報関連ワード１３１が受信されると、このログ情報関連ワード１３１を参照して、コーパス１３２を生成する（Ｓ２０２）。
【００３６】
図６は、コーパス１３２の一例を示す図である。例えば、コーパス生成部１１２は、ログ情報関連ワード１３１の時刻を参照して各セッションの期間を導出し、各ユーザについて、セッション毎にワードを集約することで、一つのコーパス１３２を生成する。
【００３７】
例えば、セッションは、検索サイトなどのウェブサイトを介してサービスが提供される場合、クッキー等の状態管理機能の有効期間である。例えば、検索サイト内のあるウェブページにアクセスしてから所定時間経過（タイムアウト）するまでの期間が一つのセッションとして扱われる。また、セッションは、検索サイト内のあるウェブページにアクセスしてから、当該検索サイト内の他のウェブページ、または他のウェブサイト内のウェブページに切り替わるまでの期間であってもよい。また、セッションは、検索サイト内のあるウェブページにアクセスしてから、当該ウェブページを表示するウェブブラウザを閉じるまでの期間であってもよい。また、アプリケーションを介してサービスが提供される場合、セッションは、例えば、上述したクッキー等の状態管理機能の有効期間であってもよいし、ＯＡｕｔｈ等のプロトコルに基づく有効期間であってもよい。
【００３８】
そして、コーパス生成部１１２は、ユーザの各セッションにおいて入力または選択されたワードを集約したコーパス１３２を、通信部１０２を用いてワード‐ベクトル変換装置３０に送信する（Ｓ２０４）。
【００３９】
これを受けて、ワード‐ベクトル変換装置３０は、コーパス１３２に含まれるワードをワードベクトルに変換して、ワードとワードベクトルとの組み合わせ（ペア）を複数含むワード‐ベクトル変換情報１３３を、情報処理装置１００に送信する。
【００４０】
図７は、ワード‐ベクトル変換情報１３３の一例を示す図である。図示のように、ワード‐ベクトル変換情報１３３は、コーパス１３２に含まれる各ワード（図中Ｑ）に対して、そのワードから変換されたワードベクトル（図中ｖｅｃ（Ｑ））と、そのワードが入力または選択された時刻とが対応付けられた情報である。
【００４１】
次に、ユーザベクトル生成部１１４は、通信部１０２によりワード‐ベクトル変換装置３０からワード‐ベクトル変換情報１３３が受信されるまで待機し（Ｓ２０６）、通信部１０２によりワード‐ベクトル変換情報１３３が受信されると、このワード‐ベクトル変換情報１３３に含まれるワードベクトルに基づいて、ユーザベクトルを生成する（Ｓ２０８）。
【００４２】
例えば、ユーザベクトル生成部１１４は、以下の数式（１）に基づいて、ユーザベクトルを生成する。数式（１）に示すように、ユーザベクトルは、ワード‐ベクトル変換情報１３３に含まれる複数のワードベクトルｖｅｃ（Ｑ１）からｖｅｃ（Ｑｎ）の加重和で表すことができる。ｗは、ワードベクトルの重みを表している。また、ｎは任意の自然数を表している。
【００４３】
【数１】
2018088051.tif 000003
【００４４】
例えば、あるユーザＡが、一セッション中に、「野球」、「サッカー」、「テニス」の合計３つのワードを入力した場合、ユーザベクトル生成部１１４は、ワード‐ベクトル変換情報１３３に含まれる複数のワードベクトルから、これらの３つのワードに対応するワードベクトルを選択し、このワードベクトルを用いてユーザＡのユーザベクトルを生成する。例えば、ユーザＡのユーザベクトルｖｅｃ（ＵＳＥＲＡ）は、以下の数式（２）のように表すことができる。
【００４５】
【数２】
2018088051.tif 000004
【００４６】
ここで、ユーザベクトル生成部１１４は、ログ情報関連ワード１３１を参照して、各ワードベクトルの重みｗを、ある集計期間（例えば、一セッション）中において、各ワードベクトルの元となったワードが入力または選択された回数に基づいて決定してよい。例えば、一セッション中に「野球」というワードが１０回入力された場合、ｗ１は、１０となる。
【００４７】
また、ユーザベクトル生成部１１４は、ログ情報関連ワード１３１を参照して、各ワードベクトルの重みｗを、例えば、ワードベクトルの元となったワードの入力または選択時刻に基づく指標（以下、フレッシュネスと称する）に基づいて決定してもよい。例えば、ある集計期間（セッション期間）を一か月とした場合、昨日入力または選択されたワードと、一か月前に入力または選択されたワードとでは、昨日の時点のワードの方が、ユーザベクトル生成時の時点ではよりユーザの興味関心が高いと判断することができる。従って、ワードの入力または選択時刻からの経過時間が長くなるほどフレッシュネスが低下するため、ユーザベクトル生成部１１４は、そのワードベクトルの重みｗをより小さくする。一方、ワードの入力または選択時刻からの経過時間が短くなるほどフレッシュネスが向上するため、ユーザベクトル生成部１１４は、そのワードベクトルの重みｗをより大きくする。
【００４８】
また、ユーザベクトル生成部１１４は、各ワードベクトルの重みｗを、検索のために入力されたクエリや、サジェストされたサブクエリの中から選択されたサブクエリの概念の広さの度合に基づいて決定してもよい。例えば、ユーザベクトル生成部１１４は、一検索あたりに同時に入力されるクエリの数が多いほど、そのクエリの概念は狭いものと評価し、それらのクエリベクトルの重みｗを大きくする。例えば、「野球＿ホームラン」よりも、「野球＿ホームラン＿○○選手＿成績」といったクエリの入力の方が、そのクエリの概念は狭くなるものの、ユーザが積極的に物事を検索していることからユーザの興味がより高いものであると判断することができる。従って、ユーザベクトル生成部１１４は、一検索あたりに同時に入力されるクエリの数が多くなるほど、そのクエリに対応するワードベクトルの重みｗをより大きくしてよい。
【００４９】
また、例えば、ユーザベクトル生成部１１４は、ｗｏｒｄ２ｖｅｃを利用する際に、ワードベクトルの元となったワード同士の類似性を評価することで、そのワードベクトルの重みｗを決定してもよい。ワード同士の類似性とは、各ワードのワードベクトルを所定の特徴空間上に配置したときの、そのワードベクトル同士の距離を表している。所定の特徴空間とは、例えば、ＧＢＤＴ（Gradient Boosting Decision Tree）やＳＶＭ（Support Vector Machine）などの機械学習モデルを用いて機械学習が行われる際に、各ワードベクトルのそれぞれを次元とした特徴空間である。特徴空間上のワードベクトルの距離の大きさに応じて、そのワードベクトルの元となったワードの共起性が評価される。
【００５０】
例えば、ワードベクトル同士の距離が短いほど、その元となったワードの類似性は高くなる（共起性が高い）。例えば、ユーザベクトル生成部１１４は、複数のワードベクトルのうち、あるワードベクトルに着目すると、この着目したワードベクトルに対して最も近い所定数のワードベクトルを選択し、この所定数のそれぞれのワードベクトルと、着目ワードベクトルとの間の距離を導出する。そして、ユーザベクトル生成部１１４は、着目ワードベクトルとの距離が長くなるほど、選択した所定数のワードベクトルの重みｗを大きくする。なお、ベクトル間の距離は、後述するコサイン類似度として求められてよい。
【００５１】
このようにしてユーザベクトルを生成すると、ユーザベクトル生成部１１４は、ユーザベクトルとしてワードベクトルにより分散表現したユーザと、そのユーザベクトルとの対応関係を示すユーザベクトル情報１３４を記憶部１３０に記憶させる。
【００５２】
図８は、ユーザベクトル情報１３４の一例を示す図である。図示のように、ユーザベクトル情報１３４は、ユーザの識別情報（図中ユーザＩＤ）に対して、ユーザベクトルが対応付けられており、更にそのユーザベクトルに分散表現として用いたワードベクトルが対応付けられた情報である。
【００５３】
次に、選択決定部１１６は、通信部１０２によりサービス提供装置２０から配信候補ワード情報が受信されたか否かを判定し（Ｓ２１０）、通信部１０２により配信候補ワード情報が受信されると、受信されたワード‐ベクトル変換情報１３３を参照して、配信候補ワード情報が示す配信候補ワードに対応するワードベクトルを抽出する（Ｓ２１２）。例えば、配信候補ワードが「オリンピック」である場合、選択決定部１１６は、「オリンピック」のワードベクトルをワード‐ベクトル変換情報１３３から抽出する。これによって、配信候補ワードのワードベクトルと、ユーザベクトルに用いたワードベクトルは、同じ変換手法を用いて生成されたことになる。言い換えれば、配信候補ワードのワードベクトルと、ユーザベクトルに用いたワードベクトルは、同じコーパス１３２を用いて変換されたワードベクトルであると見做すことができる。
【００５４】
次に、選択決定部１１６は、抽出したワードベクトルと、ユーザベクトル情報１３４に含まれる各ユーザベクトルとを比較して、これらのベクトルの類似度を導出する（Ｓ２１４）。例えば、選択決定部１１６は、ユーザベクトルおよび抽出したワードベクトルのノルムと、これらのベクトルの内積とを用いて、コサイン類似度を導出する。以下の数式（３）は、コサイン類似度の導出式を表す。式中ｘ、ｙのいずれか一方はユーザベクトルを表し、他方はワードベクトルを表している。
【００５５】
【数３】
2018088051.tif 000005
【００５６】
そして、選択決定部１１６は、導出した類似度に基づいて、ユーザごとに配信候補ワードを配信する場合の優先度を決定する（Ｓ２１６）。
【００５７】
図９は、配信候補ワードの配信優先度を決定する処理を模式的に示す図である。例えば、配信候補ワードがＱＸ、ＱＹ、ＱＺであった場合、選択決定部１１６は、それらのワードベクトルｖｅｃ（ＱＸ）、ｖｅｃ（ＱＹ）、ｖｅｃ（ＱＺ）と、各ユーザのユーザベクトルとの類似度を導出する。図示のように、配信対象として、ユーザＡとユーザＢが存在する場合、選択決定部１１６は、ユーザＡのユーザベクトルｖｅｃ（ＵＳＥＲＡ）およびユーザＢのユーザベクトルｖｅｃ（ＵＳＥＲＢ）のそれぞれと、ワードベクトルｖｅｃ（ＱＸ）、ｖｅｃ（ＱＹ）、ｖｅｃ（ＱＺ）との類似度を導出する。例えば、選択決定部１１６は、対象とするワードとの類似度が高いユーザほど、そのワードの配信優先度を高くしてもよいし、対象とするワードとの類似度が閾値以上となるワード全てを、ユーザに配信するように決定してもよい。すなわち、選択決定部１１６は、類似度が閾値以上であるワードについて優先度を一律に設定してもよい。
【００５８】
例えば、選択決定部１１６は、ユーザごとに決定した配信候補ワードの配信優先度を示す情報を、配信優先度情報１３５として記憶部１３０に記憶させる。
【００５９】
図１０は、配信優先度情報１３５の一例を示す図である。図示のように、配信優先度情報１３５は、ユーザベクトルに対して、配信候補ワードのワードベクトルと、そのワードベクトルとの類似度と、その類似度に基づく配信優先順位とが対応付けられた情報である。
【００６０】
次に、選択決定部１１６は、通信部１０２に、配信優先度情報１３５をサービス提供装置２０に送信させる（Ｓ２１８）。これを受けて、サービス提供装置２０は、配信優先度情報１３５を参照して、配信候補ワードの中から、配信優先度に応じてユーザごとに配信するレコメンドワードを決定し、決定したレコメンドワードの情報をプッシュ通知などで端末装置１０に送信する。これによって、本フローチャートの処理が終了する。
【００６１】
このようにユーザを分散表現した場合、例えば、ユーザを局所表現した場合と比べて、処理負荷を低減させながら、ユーザにとって興味関心の高い情報を特定することができる。例えば、ユーザを局所表現した場合、「野球＿○○選手」のように、複数のクエリが検索窓などに一度に入力されると、クエリごとのコーパスを保有していない場合、クエリ同士の類似度を導出できない。そのため、例えば、ユーザの興味が、概念的に一番下の階層（最下位層）のクエリにある場合や最下位層の一つ上の階層にある場合といったように、各階層に跨って混在している場合、各階層のクエリごとに、そのクエリとベクトルが対応付けられた情報（本実施形態におけるワード‐ベクトル変換情報１３３に相当する情報）を用意しておき、ユーザごとに、これらの情報との全パターンの類似度を求める必要がある。
【００６２】
これに対して、本実施形態では、ユーザをワードベクトルにより分散表現するため、コーパス内に特定のワードが存在しない場合でも、存在しないワードのワードベクトルとの類似度を導出することができる。これによって、配信候補ワードを入力または選択したことがないユーザに対して、その配信候補ワードを配信することができる。例えば、「野球」というワードを入力または選択したユーザに対して、その「野球」の下位概念にあたる「□□野球チーム＿優勝」といったワードを配信することができる。また、本実施形態では、分散表現によって複数のワードベクトルを要素としてもつベクトルとして、ユーザベクトルを表しているため、比較対象のユーザが変更された場合であっても、数式（１）における各ワードベクトルの重みｗを変更することで、類似度を求めることができるため、処理が簡素化され、情報処理システム１の負荷が軽減される。
【００６３】
以上説明した第１実施形態によれば、端末装置１０を使用するユーザのログ情報に関連するワードがベクトルに変換されたワードベクトルに基づいて、ユーザを分散表現したユーザベクトルを生成し、ユーザが使用する端末装置１０に配信する複数のコンテンツの候補（配信候補ワード）がベクトルで表された複数のコンテンツベクトルのそれぞれと、生成したユーザベクトルとを比較して、複数のコンテンツベクトルの中から一以上のコンテンツベクトルを選択する。これによって、処理負荷を低減させながら、ユーザにとって興味関心の高い情報（ワード）を特定することができる。
【００６４】
例えば、急上昇ワードのような検索頻度の高い配信候補のワードのうち、ユーザの興味関心の高いワードを優先的にユーザに配信することができるため、ＳＮＳなどにおいて、よりユーザの利便性を向上させることができる。
【００６５】
また、本実施形態の技術を広告配信に適用した場合、ユーザ毎に興味関心の高い広告ワードを配信することができるため、不特定多数のユーザに広告を配信するよりも、費用対効果を向上させることができる。
【００６６】
＜第１実施形態の変形例＞
以下、第１実施形態の変形例について説明する。上述した実施形態では、ログ情報に関連するワードは、検索サイトやこれに相当するアプリケーションなどの検索窓に入力されたクエリ、クエリが入力されたことでサジェストされた複数のサブクエリのうち、ユーザにより選択されたサブクエリ、ウェブサイト上などに提示されたＵＲＬのうち、ユーザにより選択されたＵＲＬを表すワード、ハイパーリンクの貼られた領域内のワード、ＵＲＬなどで参照されるウェブページのタイトルといった各種ワードを含むものとして説明したがこれに限られない。例えば、ログ情報に関連するワードには、検索の対象となるコンテンツに対応付けられたメタ情報に含まれる語句などが含まれてもよい。
【００６７】
図１１は、コンテンツに対応付けられたメタ情報の一例を示す図である。図示のように、画像データである場合、メタ情報は、そのデータのタイトルやタグ名などである。また、コンテンツが音楽などの音声データの場合、メタ情報は、そのデータのタイトルや歌詞、アーティスト名などである。また、コンテンツが映画などの動画データの場合、メタ情報は、そのデータのタイトルやキャプション（字幕）などである。また、コンテンツが新聞などの記事を示すテキストデータの場合、メタ情報は、そのデータを表す代表的なワード（テーマ）のことである。
【００６８】
例えば、記事を示すテキストデータのメタ情報をログ情報に関連するワードとして用いる場合、ユーザベクトル生成部１１４は、記事全体のテキストを形態素解析により形態素ごとに分割し、分割した複数の形態素のそれぞれを表すワードの希少性に応じて各ワードを評価し、ワード毎の希少性を評価した評価値に基づいて、ユーザベクトルを生成する。より具体的には、ユーザベクトル生成部１１４は、分割した複数の形態素のそれぞれを表すワードを、ＴＦ（Term Frequency）‐ＩＤＦ（Inverse Document Frequency）などで重み付けることにより、複数のワードの中から、その記事が何のテーマについて記載されたものであるのかを表すワードを抽出する。例えば、ユーザベクトル生成部１１４は、最も重みｗの大きいワードを、記事全体を表す代表的なテーマのワードとして選択してもよいし、全ワードの平均の重みｗに最も近いワードを、記事全体を表す代表的なテーマのワードとして選択してもよい。このとき、例えば、「野球」をテーマとした記事の場合、その記事には、野球の開催地や開催時刻などの情報が含まれる場合がある。ここで、単に記事を形態素に分割し、それぞれの形態素を表すワードを分散表現によりユーザに対応付ける場合、特定の場所や特定の時刻といったユーザの関心の低い情報が、ユーザベクトルとしてユーザに対応付けらえてしまう場合がある。これに対して、分割した形態素を表すワードをＴＦ‐ＩＤＦなどで重み付け、記事全体を表す代表的なテーマのワードを抽出することで、ユーザの関心の低い情報を予め除いてユーザを分散表現することができる。
【００６９】
また、選択決定部１１６は、導出した類似度に基づいて、ユーザごとに配信候補ワードの配信優先度を決定するのに代えて、例えば、バズ度に基づいて配信候補ワードの中から、ユーザに配信するワードを決定してもよい。バズ度とは、複数のユーザ間においてワードがどの程度注目されているのかを表す指標値であり、例えば、インターネット上での口コミ数などに基づく指標値である。例えば、選択決定部１１６は、ログ情報関連ワード１３１を参照して、ある期間におけるワードの出現回数を導出し、ワードごとにバズ度を導出する。例えば、短時間に頻出するワードほど、そのバズ度は高くなる。そして、選択決定部１１６は、配信候補ワードのうち、ユーザベクトルとの類似度が高く、且つバズ度の高いワードほど、優先して配信するワードとして決定する。なお、選択決定部１１６は、ユーザベクトルとの類似度に関わらず、配信候補ワードのうち、バズ度の高いワードを優先して配信するワードとして決定してもよい。
【００７０】
＜第２実施形態＞
以下、第２実施形態について説明する。第２実施形態における情報処理システム１Ａでは、ある配信対象のユーザに、ユーザベクトルとの類似度の高い配信候補ワードをレコメンドワードとして配信する際に、この配信対象のユーザと興味関心の傾向が似ている類似ユーザに、合わせてワードを配信する点で上述した第１実施形態と相違する。以下、第１実施形態との相違点を中心に説明し、第１実施形態と共通する点については説明を省略する。なお、第２実施形態の説明において、第１実施形態と同じ部分については同一符号を付して説明する。
【００７１】
図１２は、興味関心の傾向が似ているユーザ同士を分類した図である。例えば、選択決定部１１６は、ｋ−ｍｅａｎｓ法などのクラスタリング手法を用いて、ユーザベクトル生成部１１４により生成されたユーザベクトル同士をグループ化する。図示のように、選択決定部１１６は、グループＡに属するユーザに配信するレコメンドワードとして決定した配信候補ワードを、グループＡに属する他のユーザへのレコメンドワードとして決定してよい。
【００７２】
以上説明した第２実施形態によれば、ログ情報関連ワード１３１に含まれる情報量が乏しいユーザでも興味関心の高い情報を特定し、特定した情報を配信することができる。
【００７３】
＜第３実施形態＞
以下、第３実施形態について説明する。第３実施形態における情報処理システム１Ｂでは、レコメンドワードが端末装置１０に配信された結果、ユーザによって、そのレコメンドワードが適切かそうでないかが分類される点で上述した第１および第２実施形態と相違する。以下、第１および第２実施形態との相違点を中心に説明し、第１および第２実施形態と共通する点については説明を省略する。なお、第３実施形態の説明において、第１および第２実施形態と同じ部分については同一符号を付して説明する。
【００７４】
図１３は、レコメンドワードの適切可否が選択される様子を模式的に示す図である。図中（ａ）に示すように、サービス提供装置２０により端末装置１０に対してレコメンドワードが配信された場合、このレコメンドワードは、ユーザによって興味関心がないと判断され、その表示がブロックされる場合がある。この場合、図中（ｂ）に示すように、端末装置１０から、サービス提供装置２０を介して、或いは直接に情報処理装置１００に対して、表示がブロックされたレコメンドワードの情報（以下、ネガティブフィードバック情報と称する）が通知される。なお、レコメンドワードがプッシュ通知などによって端末装置１０に配信されてから、所定時間経過しても端末装置１０に対して何らかの操作が無かった場合、端末装置１０から情報処理装置１００に対してネガティブフィードバック情報が通知されてもよい。
【００７５】
第３実施形態におけるユーザベクトル生成部１１４は、通信部１０２によりネガティブフィードバック情報が受信されると、ユーザベクトルを再生成する。例えば、ユーザベクトル生成部１１４は、ネガティブフィードバック情報によって示されるネガティブフィードバック情報の発信元の端末装置１０のユーザのユーザベクトルにおいて、ネガティブフィードバック情報によって示されるワードベクトルの重みｗを小さくする（例えばゼロに近似できる程度に小さくする）ことによって、ユーザベクトルを再生成する。これによって、ユーザベクトルにおいて、相対的に他のワードベクトルの重みｗの寄与度が増すため、レコメンドワードとして配信予定のワードとの類似度が変化する。この結果、例えば、図中（ｃ）のように、ブロックされなかったレコメンドワード（例えば図中「日本シリーズ」）と同じような概念のワード（例えば図中「優勝予想」や「○○選手」といった語句）がレコメンドワードとして配信されやすくなる。
【００７６】
以上説明した第３実施形態によれば、配信されたレコメンドワードに対するユーザの意向をユーザベクトルにフィードバックさせることによって、よりユーザの興味関心に適合したレコメンドワードを配信することができる。
【００７７】
＜第４実施形態＞
以下、第４実施形態について説明する。第４実施形態における情報処理システム１Ｃでは、クラスタリング処理の結果、同じグループに属するユーザによってブロックされたレコメンドワードを、同じグループの他のユーザについても配信しにくくするようにする点で上述した第１から第３実施形態と相違する。以下、第１から第３実施形態との相違点を中心に説明し、第１から第３実施形態と共通する点については説明を省略する。なお、第４実施形態の説明において、第１から第３実施形態と同じ部分については同一符号を付して説明する。
【００７８】
図１４は、ユーザベクトルのグループごとにネガティブフィードバック情報を反映させる様子を模式的に示す図である。図示の例では、グループＡにユーザベクトルが属するユーザと、グループＢにユーザベクトルが属するユーザの双方に対して、ワードＡ、ワードＢ、ワードＣをレコメンドワードとして配信している。例えば、図中（ａ）の状況において、グループＡにユーザベクトルが属する、あるユーザによって、配信されたレコメンドワードのうち、ワードＡがブロックされている。また、グループＢにユーザベクトルが属する、あるユーザによって、配信されたレコメンドワードのうち、ワードＢがブロックされている。
【００７９】
この場合、第４実施形態におけるユーザベクトル生成部１１４は、ブロックされたワードＡに対応するワードベクトルの重みｗを低下させる処理を、ブロックを行ったユーザのユーザベクトルと、ブロックを行ったユーザが属するグループＡ内の他のユーザのユーザベクトルについて行う。また、ユーザベクトル生成部１１４は、ブロックされたワードＢに対応するワードベクトルの重みｗを低下させる処理を、ブロックを行ったユーザのユーザベクトルと、ブロックを行ったユーザが属するグループＢ内の他のユーザのユーザベクトルについて行う。これによって、同じような興味関心の傾向を有するグループに属するユーザについて、一括してユーザベクトルを再生成することができる。この結果、グループＡに属するユーザについては、ワードＡがレコメンドワードとして配信されにくくなり、グループＢに属するユーザについては、ワードＢがレコメンドワードとして配信されにくくなる。
【００８０】
以上説明した第４実施形態によれば、配信されたレコメンドワードに対する、あるユーザの意向を、同じような興味関心の傾向を有するグループに属する他のユーザについてもフィードバックさせることによって、グループ毎に、よりユーザの興味関心に適合したレコメンドワードを配信することができる。
【００８１】
＜第５実施形態＞
以下、第５実施形態について説明する。第５実施形態における情報処理システム１Ｄでは、レコメンドされるコンテンツがワードである代わりに、画像データや音声データ、動画データといった情報である点で上述した第１から第４実施形態と相違する。第５実施形態では、一例としてコンテンツが画像ベクトルである例について説明する。以下、第１から第４実施形態との相違点を中心に説明し、第１から第４実施形態と共通する点については説明を省略する。なお、第５実施形態の説明において、第１から第４実施形態と同じ部分については同一符号を付して説明する。
【００８２】
図１５は、第５実施形態における情報処理装置１００Ｄの一例を示す図である。図示のように、情報処理装置１００Ｄは、例えば、通信部１０２と、制御部１１０Ｄと、記憶部１３０Ｄとを備える。第５実施形態における制御部１１０Ｄは、上述したコーパス生成部１１２、ユーザベクトル生成部１１４、および選択決定部１１６に加えて、更に画像ベクトル生成部１１８を備える。
【００８３】
第５実施形態における記憶部１３０Ｄは、上述したログ情報関連ワード１３１、コーパス１３２、ワード‐ベクトル変換情報１３３、ユーザベクトル情報１３４、および配信優先度情報１３５に加えて、更に画像ベクトル情報１３６を記憶する。
【００８４】
画像ベクトル生成部１１８は、ワード‐ベクトル変換装置３０により生成されたワード‐ベクトル変換情報１３３に含まれるワードベクトルに基づいて、画像を分散表現した画像ベクトルを生成する。この画像は、例えば、ユーザに配信する複数の画像の候補である。複数の画像の候補については、配信候補となるワードと同様に、サービス提供装置２０により決定されてよい。配信候補の画像を画像ベクトルに分散表現する際に、ワード‐ベクトル変換情報１３３に含まれるワードベクトルを用いているため、画像ベクトルに用いたワードベクトルと、ユーザベクトルに用いたワードベクトルとは、同じコーパス１３２を用いて変換されたワードベクトルであると見做すことができる。
【００８５】
例えば、画像ベクトル生成部１１８は、配信候補となる画像が検索されたときに入力または選択されたワードのワードベクトルを、ワード‐ベクトル変換情報１３３から抽出し、抽出したワードベクトルに所定の評価値に基づく重みｗを付与する。
【００８６】
所定の評価値とは、例えば、あるセッション中において、各ワードに関する、配信候補となる画像が選択されたことへの寄与の度合を示す指標値である。具体的には、評価値は、例えば、セッション中において、ある着目するワードが入力されることに応じた対象の画像の選択回数を、全てのワードが入力されることに応じた対象の画像の選択回数で除算した値である。
【００８７】
そして、画像ベクトル生成部１１８は、重みｗを付与したワードベクトルの加重和を、画像ベクトルとして生成する。例えば、画像ベクトル生成部１１８は、以下の数式（４）に基づいて、画像ベクトルを生成する。式中ｖｅｃ（ＩＭＧ）は、画像ベクトルを表している。
【００８８】
【数４】
2018088051.tif 000006
【００８９】
図１６は、画像ベクトルの生成方法を説明するための図である。例えば、一セッション中に、Ｑ１からＱ３のそれぞれのクエリが画像検索サイトに入力されて、各ワードが入力される度に画像ＩＭａと画像ＩＭｂが提示されたとする。このとき、図示のように、画像ＩＭａのクリック回数が、「人工衛星」というワードが入力されたときには５０回、「地球」というワードが入力されたときには１０回、「宇宙」というワードが入力されたときには１回であった場合、画像ベクトルは、以下の数式（５）のように表される。
【００９０】
【数５】
2018088051.tif 000007
【００９１】
数式中、ｖｅｃ（ＩＭａ）は、画像ＩＭａの画像ベクトルを表している。また、ｖｅｃ（人工衛星）は、ワードＱ１のワードベクトルを表し、ｖｅｃ（地球）は、ワードＱ２のワードベクトルを表し、ｖｅｃ（宇宙）は、ワードＱ３のワードベクトルを表している。数式（５）に示すように、画像ベクトルは、重みが付与された複数のワードベクトルを加算した多次元ベクトルである。また、式中ｗ１は、ワードＱ１が入力されたことに応じた画像ＩＭａのクリック回数（上述した例では５０）を表し、ｗ２は、ワードＱ２が入力されたことに応じた画像ＩＭａのクリック回数（上述した例では１０）を表し、ｗ３は、ワードＱ３が入力されたことに応じた画像ＩＭａのクリック回数（上述した例では１）を表している。数式（５）に示すように、各ワードＱのワードベクトルｖｅｃ（Ｑ）は、全てのワードベクトルに対して乗算されるクリック回数の総和で除算されている。すなわち、数式（５）は、ワードベクトルに対して上述した評価値を重みとして付与（乗算）し、加重和を求めた式である。
【００９２】
なお、上述した数式（５）は、画像ＩＭａの画像ベクトルの導出式を表すものであるが、他の画像についても同様に画像ベクトルを導出してよい。この際、各ワードベクトルに乗算するｗ１からｗ３の値は、適宜変更するものとする。例えば、画像ＩＭｂの画像ベクトルｖｅｃ（ＩＭｂ）の導出時には、ｗ１からｗ３に対して、各ワードが入力されたときの画像ＩＭｂのクリック回数が代入される。また、上述した例では、ワードが３種類の場合について説明したがこれに限られず、１、２種類、あるいは４種類以上であってもよい。この場合、数式（５）の右辺の分子におけるワードベクトルの数を変更してよい。
【００９３】
このようにして画像ベクトルを生成すると、画像ベクトル生成部１１８は、ワードベクトルにより分散表現した画像と、その画像の画像ベクトルとの対応関係を示す画像ベクトル情報１３６を記憶部１３０に記憶させる。
【００９４】
図１７は、画像ベクトル情報１３６の一例を示す図である。図示のように、画像ベクトル情報１３６は、画像データの識別情報（図中画像ＩＤ）に対して、画像ベクトルが対応付けられており、更にその画像ベクトルに分散表現として用いたワードベクトルが対応付けられた情報である。
【００９５】
第５実施形態における選択決定部１１６は、画像ベクトル生成部１１８により生成された画像ベクトルと、ユーザベクトル情報１３４に含まれる各ユーザベクトルとを比較して、これらのベクトルの類似度を導出する。例えば、選択決定部１１６は、ユーザベクトルおよび画像ベクトルのノルムと、これらのベクトルの内積とを用いて、コサイン類似度を導出する。
【００９６】
そして、選択決定部１１６は、導出した類似度に基づいて、ユーザごとに画像ベクトルの元となった画像を配信する場合の優先度を決定する。
【００９７】
図１８は、画像の配信優先度を決定する処理を模式的に示す図である。例えば、配信対象の画像がＩＭ１、ＩＭ２、ＩＭ３であった場合、選択決定部１１６は、それらの画像ベクトルｖｅｃ（ＩＭ１）、ｖｅｃ（ＩＭ２）、ｖｅｃ（ＩＭ３）と、各ユーザのユーザベクトルとの類似度を導出する。例えば、選択決定部１１６は、類似度の高い画像ほど、そのユーザに配信する優先度を高くしてもよいし、ある閾値以上の類似度の画像全てをユーザに配信するように決定してもよい。
【００９８】
以上説明した第５実施形態によれば、ユーザに配信する複数の画像の候補を、ユーザベクトル生成時のワードベクトルにより分散表現した画像ベクトルに変換するため、ユーザベクトルと画像ベクトルとを同じ次元で比較することができる。これにより、ユーザベクトルと画像ベクトルとの類似度を求めることができ、処理負荷を低減させながら、ユーザにとって興味関心の高い画像を特定することができる。
【００９９】
なお、上述した第５実施形態では、コンテンツが画像データである場合について説明したがこれに限られない。例えば、情報処理装置１００Ｄは、コンテンツが音声データや動画データである場合についても同様に、そのコンテンツを分散表現したベクトルを生成し、ユーザベクトルとの類似度を求めてもよい。
【０１００】
＜ハードウェア構成＞
上述した実施形態の情報処理システムに含まれる複数の装置のうち、少なくともワード‐ベクトル変換装置３０および情報処理装置１００、１００Ｄは、例えば、図１９に示すようなハードウェア構成により実現される。図１９は、実施形態のワード‐ベクトル変換装置３０および情報処理装置１００、１００Ｄのハードウェア構成の一例を示す図である。
【０１０１】
ワード‐ベクトル変換装置３０は、ＮＩＣ３０−１、ＣＰＵ３０−２、ＲＡＭ３０−３、ＲＯＭ３０−４、フラッシュメモリやＨＤＤなどの二次記憶装置３０−５、およびドライブ装置３０−６が、内部バスあるいは専用通信線によって相互に接続された構成となっている。ドライブ装置３０−６には、光ディスクなどの可搬型記憶媒体が装着される。二次記憶装置３０−５、またはドライブ装置３０−６に装着された可搬型記憶媒体に格納されたプログラムがＤＭＡコントローラ（不図示）などによってＲＡＭ３０−３に展開され、ＣＰＵ３０−２によって実行される。ＣＰＵ３０−２が参照するプログラムは、ネットワークＮＷを介して他の装置からダウンロードされてもよい。
【０１０２】
情報処理装置１００、１００Ｄは、ＮＩＣ１００−１、ＣＰＵ１００−２、ＲＡＭ１００−３、ＲＯＭ１００−４、フラッシュメモリやＨＤＤなどの二次記憶装置１００−５、およびドライブ装置１００−６が、内部バスあるいは専用通信線によって相互に接続された構成となっている。ドライブ装置１００−６には、光ディスクなどの可搬型記憶媒体が装着される。二次記憶装置１００−５、またはドライブ装置１００−６に装着された可搬型記憶媒体に格納されたプログラムがＤＭＡコントローラ（不図示）などによってＲＡＭ１００−３に展開され、ＣＰＵ１００−２によって実行されることで、制御部１１０が実現される。制御部１１０が参照するプログラムは、ネットワークＮＷを介して他の装置からダウンロードされてもよい。
【０１０３】
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何ら限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【符号の説明】
【０１０４】
１…情報処理システム、１０…端末装置、２０…サービス提供装置、３０…ワード‐ベクトル変換装置、１００…情報処理装置、１０２…通信部、１１０…制御部、１１２…コーパス生成部、１１４…ユーザベクトル生成部、１１６…選択決定部、１３０…記憶部、１３１…ログ情報関連ワード、１３２…コーパス、１３３…ワード‐ベクトル変換情報、１３４…ユーザベクトル情報、１３５…配信優先度情報、ＮＷ…ネットワーク
【図１】
2018088051.tif 000008
【図２】
2018088051.tif 000009
【図３】
2018088051.tif 000010
【図４】
2018088051.tif 000011
【図５】
2018088051.tif 000012
【図６】
2018088051.tif 000013
【図７】
2018088051.tif 000014
【図８】
2018088051.tif 000015
【図９】
2018088051.tif 000016
【図１０】
2018088051.tif 000017
【図１１】
2018088051.tif 000018
【図１２】
2018088051.tif 000019
【図１３】
2018088051.tif 000020
【図１４】
2018088051.tif 000021
【図１５】
2018088051.tif 000022
【図１６】
2018088051.tif 000023
【図１７】
2018088051.tif 000024
【図１８】
2018088051.tif 000025
【図１９】
2018088051.tif 000026
【手続補正書】
【提出日】平成29年6月15日(2017.6.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
端末装置を使用するユーザのログ情報に関連するワードがベクトルに変換されたワードベクトルを基底とし、前記ユーザを前記ワードベクトルにより分散表現したユーザベクトルを生成する生成部と、
前記端末装置に配信する複数のコンテンツの候補がベクトルで表された複数のコンテンツベクトルのそれぞれと、前記生成部により生成されたユーザベクトルとを比較して、前記複数のコンテンツベクトルの中から一以上のコンテンツベクトルを選択する選択部と、
を備える情報処理装置。
【請求項２】
前記ワードベクトルと、前記コンテンツベクトルとは、同じ変換手法で生成される、
請求項１に記載の情報処理装置。
【請求項３】
前記コンテンツベクトルは、前記コンテンツに含まれるワードをベクトルに変換したものである、
請求項１または２に記載の情報処理装置。
【請求項４】
前記コンテンツベクトルは、前記コンテンツが検索された際に入力されたクエリをベクトルに変換したものである、
請求項１から３のうちいずれか１項記載の情報処理装置。
【請求項５】
前記コンテンツベクトルは、コンテンツが選択された際に操作された領域内に含まれるワードをベクトルに変換したものである、
請求項１から４のうちいずれか１項記載の情報処理装置。
【請求項６】
前記生成部は、前記ワードベクトルの元となったワードが前記ログ情報として記録された回数に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から５のうちいずれか１項に記載の情報処理装置。
【請求項７】
前記生成部は、前記ワードベクトルの元となったワードが前記ログ情報として記録された時刻に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から６のうちいずれか１項に記載の情報処理装置。
【請求項８】
前記生成部は、前記ログ情報がクエリである場合、同時に入力または選択されたクエリの数に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から７のうちいずれか１項に記載の情報処理装置。
【請求項９】
前記生成部は、前記ログ情報に複数のクエリが含まれる場合、クエリの類似性に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から８のうちいずれか１項に記載の情報処理装置。
【請求項１０】
前記生成部は、前記ログ情報に関連するワードを形態素解析により形態素ごとに分割し、前記分割した形態素を表すワードの希少性に応じて前記ワードを評価した値に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から９のうちいずれか１項に記載の情報処理装置。
【請求項１１】
前記選択部は、前記コンテンツベクトルと前記ユーザベクトルとの類似度に基づいて、前記一以上のコンテンツベクトルを選択する、
請求項１から１０のうちいずれか１項に記載の情報処理装置。
【請求項１２】
前記選択部は、更に、複数の前記ユーザ間における前記ログ情報に関連するワードの注目度合に基づいて、前記一以上のコンテンツベクトルを選択する、
請求項１から１１のうちいずれか１項に記載の情報処理装置。
【請求項１３】
コンピュータが、
端末装置を使用するユーザのログ情報に関連するワードがベクトルに変換されたワードベクトルを基底とし、前記ユーザを前記ワードベクトルにより分散表現したユーザベクトルを生成し、
前記端末装置に配信する複数のコンテンツの候補がベクトルで表された複数のコンテンツベクトルのそれぞれと、前記生成したユーザベクトルとを比較して、前記複数のコンテンツベクトルの中から一以上のコンテンツベクトルを選択する、
情報処理方法。
【請求項１４】
コンピュータに、
端末装置を使用するユーザのログ情報に関連するワードがベクトルに変換されたワードベクトルを基底とし、前記ユーザを前記ワードベクトルにより分散表現したユーザベクトルを生成させ、
前記端末装置に配信する複数のコンテンツの候補がベクトルで表された複数のコンテンツベクトルのそれぞれと、前記生成させたユーザベクトルとを比較させて、前記複数のコンテンツベクトルの中から一以上のコンテンツベクトルを選択させる、
プログラム。
【手続補正書】
【提出日】平成29年10月30日(2017.10.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
端末装置を使用するユーザのログ情報に関連するワードが予め与えられたテキスト情報内におけるワード同士の共起性に基づいてベクトルに変換されたワードベクトルの線形和を、前記ユーザを前記ワードベクトルにより分散表現したユーザベクトルとして生成する生成部と、
前記端末装置に配信する複数のコンテンツの候補がベクトルで表された複数のコンテンツベクトルのそれぞれと、前記生成部により生成されたユーザベクトルとを比較して、前記複数のコンテンツベクトルの中から一以上のコンテンツベクトルを選択する選択部と、
を備える情報処理装置。
【請求項２】
前記ワードベクトルと、前記コンテンツベクトルとは、同じ変換手法で生成される、
請求項１に記載の情報処理装置。
【請求項３】
前記コンテンツベクトルは、前記コンテンツに含まれるワードをベクトルに変換したものである、
請求項１または２に記載の情報処理装置。
【請求項４】
前記コンテンツベクトルは、前記コンテンツが検索された際に入力されたクエリをベクトルに変換したものである、
請求項１から３のうちいずれか１項記載の情報処理装置。
【請求項５】
前記コンテンツベクトルは、コンテンツが選択された際に操作された領域内に含まれるワードをベクトルに変換したものである、
請求項１から４のうちいずれか１項記載の情報処理装置。
【請求項６】
前記生成部は、前記ワードベクトルの元となったワードが前記ログ情報として記録された回数に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から５のうちいずれか１項に記載の情報処理装置。
【請求項７】
前記生成部は、前記ワードベクトルの元となったワードが前記ログ情報として記録された時刻に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から６のうちいずれか１項に記載の情報処理装置。
【請求項８】
前記生成部は、前記ログ情報がクエリである場合、同時に入力または選択されたクエリの数に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から７のうちいずれか１項に記載の情報処理装置。
【請求項９】
前記生成部は、前記ログ情報に複数のクエリが含まれる場合、クエリの類似性に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から８のうちいずれか１項に記載の情報処理装置。
【請求項１０】
前記生成部は、前記ログ情報に関連するワードを形態素解析により形態素ごとに分割し、前記分割した形態素を表すワードの希少性に応じて前記ワードを評価した値に基づいて、前記ワードベクトルを重み付けして加重和を求めることで、前記ユーザベクトルを生成する、
請求項１から９のうちいずれか１項に記載の情報処理装置。
【請求項１１】
前記選択部は、前記コンテンツベクトルと前記ユーザベクトルとの類似度に基づいて、前記一以上のコンテンツベクトルを選択する、
請求項１から１０のうちいずれか１項に記載の情報処理装置。
【請求項１２】
前記選択部は、更に、複数の前記ユーザ間における前記ログ情報に関連するワードの注目度合に基づいて、前記一以上のコンテンツベクトルを選択する、
請求項１から１１のうちいずれか１項に記載の情報処理装置。
【請求項１３】
コンピュータが、
端末装置を使用するユーザのログ情報に関連するワードが予め与えられたテキスト情報内におけるワード同士の共起性に基づいてベクトルに変換されたワードベクトルの線形和を、前記ユーザを前記ワードベクトルにより分散表現したユーザベクトルとして生成し、
前記端末装置に配信する複数のコンテンツの候補がベクトルで表された複数のコンテンツベクトルのそれぞれと、前記生成したユーザベクトルとを比較して、前記複数のコンテンツベクトルの中から一以上のコンテンツベクトルを選択する、
情報処理方法。
【請求項１４】
コンピュータに、
端末装置を使用するユーザのログ情報に関連するワードが予め与えられたテキスト情報内におけるワード同士の共起性に基づいてベクトルに変換されたワードベクトルの線形和を、前記ユーザを前記ワードベクトルにより分散表現したユーザベクトルとして生成させ、
前記端末装置に配信する複数のコンテンツの候補がベクトルで表された複数のコンテンツベクトルのそれぞれと、前記生成させたユーザベクトルとを比較させて、前記複数のコンテンツベクトルの中から一以上のコンテンツベクトルを選択させる、
プログラム。