(57)【特許請求の範囲】
【請求項１】
類似性の判定対象を示す複数の第１クエリと、前記類似性の判定基準を示す複数の第２クエリとを受け付ける受付部と、
前記第２クエリごとに、各第１クエリが示す判定対象を示す対象情報が当該第１クエリとして入力された際の検索意図と、当該第２クエリが示す判定基準を示す基準情報が当該第２クエリとして入力された際の検索意図との類似性を示すスコアに基づいて、前記判定対象と前記判定基準との類似性を示す類似情報を生成する生成部と、
前記生成部によって生成された類似情報を出力する出力部と、
を備え、
前記受付部は、
取引対象を示す複数の第１クエリを受け付け、
前記生成部は、
前記類似情報として、前記取引対象に関する情報に応じて異なる色によって、前記スコアの大きさを示す領域が色分けされたグラフに関する情報を生成する
ことを特徴とする情報処理装置。
【請求項２】
前記生成部は、
前記対象情報である文字情報に対応する分散表現と前記基準情報である文字情報に対応する分散表現との類似度である前記スコアに基づいて、前記類似情報を生成する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記生成部は、
前記類似情報として、前記スコアの大きさを視認可能にしたグラフに関する情報を生成する
前記出力部は、
前記第２クエリごとに、前記生成部によって生成されたグラフに関する情報を出力する
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記受付部は、
取引対象を示す複数の第１クエリを受け付け、
前記生成部は、
前記類似情報として、前記取引対象の属性に応じて異なる色によって、前記スコアの大きさを示す領域が色分けされたグラフに関する情報を生成する
ことを特徴とする請求項１〜３のいずれか一つに記載の情報処理装置。
【請求項５】
前記受付部は、
取引対象を示す複数の第１クエリを受け付け、
前記生成部は、
前記類似情報として、前記取引対象を取り扱う事業者に応じて異なる色によって、前記スコアの大きさを示す領域が色分けされたグラフに関する情報を生成する
ことを特徴とする請求項１〜４のいずれか一つに記載の情報処理装置。
【請求項６】
前記生成部は、
前記第２クエリごとに、前記類似情報と当該第２クエリとが対応付けて表示されるコンテンツを生成する
ことを特徴とする請求項１〜５のいずれか一つに記載の情報処理装置。
【請求項７】
コンピュータが実行する情報処理方法であって、
類似性の判定対象を示す複数の第１クエリと、前記類似性の判定基準を示す複数の第２クエリとを受け付ける受付工程と、
前記第２クエリごとに、各第１クエリが示す判定対象を示す対象情報が当該第１クエリとして入力された際の検索意図と、当該第２クエリが示す判定基準を示す基準情報が当該第２クエリとして入力された際の検索意図との類似性を示すスコアに基づいて、前記判定対象と前記判定基準との類似性を示す類似情報を生成する生成工程と、
前記生成工程によって生成された類似情報を出力する出力工程と、
を含み、
前記受付工程は、
取引対象を示す複数の第１クエリを受け付け、
前記生成工程は、
前記類似情報として、前記取引対象に関する情報に応じて異なる色によって、前記スコアの大きさを示す領域が色分けされたグラフに関する情報を生成する
ことを特徴とする情報処理方法。
【請求項８】
類似性の判定対象を示す複数の第１クエリと、前記類似性の判定基準を示す複数の第２クエリとを受け付ける受付手順と、
前記第２クエリごとに、各第１クエリが示す判定対象を示す対象情報が当該第１クエリとして入力された際の検索意図と、当該第２クエリが示す判定基準を示す基準情報が当該第２クエリとして入力された際の検索意図との類似性を示すスコアに基づいて、前記判定対象と前記判定基準との類似性を示す類似情報を生成する生成手順と、
前記生成手順によって生成された類似情報を出力する出力手順と、
をコンピュータに実行させ、
前記受付手順は、
取引対象を示す複数の第１クエリを受け付け、
前記生成手順は、
前記類似情報として、前記取引対象に関する情報に応じて異なる色によって、前記スコアの大きさを示す領域が色分けされたグラフに関する情報を生成する
ことを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【０００２】
近年、インターネットの飛躍的な普及に伴い、例えば、インターネット上の種々の情報を用いた分析に関する技術が提供されている。例えば、ユーザが入力した検索クエリに基づいて、所定の事業者が提供する対象に対するニーズに関する情報を抽出する技術が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１９−３２７７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の従来技術では、有用な情報を得ることができるとは限らない。例えば、上記の従来技術では、所定の事業者が提供する対象に対するニーズに関する情報を抽出しているに過ぎないので、所定の事業者が提供する対象に対する潜在的なニーズに関する情報を抽出できるとは言えない。
【０００５】
本願は、上記に鑑みてなされたものであって、有用な情報を提供することができる情報処理装置、情報処理方法及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本願に係る情報処理装置は、類似性の判定対象を示す複数の第１クエリと、前記類似性の判定基準を示す複数の第２クエリとを受け付ける受付部と、前記第２クエリごとに、各第１クエリが示す判定対象と、当該第２クエリが示す判定基準との類似性を示す類似情報を生成する生成部と、前記生成部によって生成された類似情報を出力する出力部と、を有することを特徴とする。
【発明の効果】
【０００７】
実施形態の一態様によれば、有用な情報を得ることができるといった効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施形態に係る情報処理の一例を示す図である。
【図２】図２は、実施形態に係る情報処理システムの構成例を示す図である。
【図３】図３は、実施形態に係る情報処理装置の構成例を示す図である。
【図４】図４は、実施形態に係るクエリ情報記憶部の一例を示す図である。
【図５】図５は、実施形態に係るベクトル情報記憶部の一例を示す図である。
【図６】図６は、実施形態に係る類似度情報記憶部の一例を示す図である。
【図７】図７は、実施形態に係るモデル情報記憶部の一例を示す図である。
【図８】図８は、実施形態に係る端末装置の構成例を示す図である。
【図９】図９は、実施形態に係る情報処理手順を示すフローチャートである。
【図１０】図１０は、実施形態に係る第１モデルの生成処理の一例を示す図である。
【図１１】図１１は、実施形態に係る第１モデルの生成処理の一例を示す図である。
【図１２】図１２は、実施形態に係る生成装置の構成例を示す図である。
【図１３】図１３は、実施形態に係るクエリ情報記憶部の一例を示す図である。
【図１４】図１４は、実施形態に係るベクトル情報記憶部の一例を示す図である。
【図１５】図１５は、実施形態に係るモデル情報記憶部の一例を示す図である。
【図１６】図１６は、実施形態に係る第１モデルの一例を示す図である。
【図１７】図１７は、実施形態に係る第１モデルの生成処理手順を示すフローチャートである。
【図１８】図１８は、プログラムを実行するコンピュータのハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下に、本願に係る情報処理装置、情報処理方法及び情報処理プログラムを実施するための形態（以下、「実施形態」と呼ぶ）について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略する。
【００１０】
〔１．情報処理の一例〕
まず、図１を用いて、実施形態に係る情報処理の一例について説明する。図１は、実施形態に係る情報処理の一例を示す図である。実施形態に係る情報処理は、図１に示す情報処理装置１００によって行われる。図１に示す情報処理装置１００は、クライアント（企業等）に対して、クエリの分析サービスを提供するサーバ装置である。ここで、「クエリ」とは、データベースに対する問い合わせや要求を行うためにユーザによって用いられる語句（文字情報）を指す。例えば、「クエリ」には、ユーザによって検索に用いられる語句である検索クエリが含まれる。なお、本願発明における「クエリ」には、ユーザによってどのように用いられたかとは関係のない単なるキーワードやフレーズといった語句が含まれてもよいものとする。
【００１１】
図１の説明に先立って、図２を用いて、実施形態に係る情報処理システムの構成について説明する。図２は、実施形態に係る情報処理システムの構成例を示す図である。図２に示すように、情報処理システム１には、端末装置１０と、検索サーバ２０と、生成装置５０と、情報処理装置１００とが含まれる。端末装置１０と、検索サーバ２０と、生成装置５０と、情報処理装置１００とは所定のネットワークＮを介して、有線または無線により通信可能に接続される。なお、図２に示す情報処理システム１には、任意の数の端末装置１０と任意の数の検索サーバ２０と任意の数の生成装置５０と任意の数の情報処理装置１００とが含まれてもよい。
【００１２】
端末装置１０は、クライアント（企業等）の担当者である利用者によって使用される情報処理装置である。端末装置１０は、例えば、スマートフォンや、タブレット型端末や、ノート型ＰＣ（Personal  Computer）や、携帯電話機や、ＰＤＡ（Personal  Digital  Assistant）等により実現される。図１に示す例では、端末装置１０はノート型ＰＣである。なお、以下では、端末装置１０を利用者と同一視する場合がある。すなわち、以下では、利用者を端末装置１０と読み替えることもできる。
【００１３】
端末装置１０は、クライアント（企業等）の担当者である利用者Ｕ１１の操作に従って、類似性の判定対象を示す複数の第１クエリと、類似性の判定基準を示す複数の第２クエリとを情報処理装置１００に送信する。また、端末装置１０は、類似性の判定基準を示す第２クエリごとに、各第１クエリが示す判定対象と、第２クエリが示す判定基準との類似度の大きさを視認可能にした棒グラフに関する情報を情報処理装置１００から受信する。端末装置１０は、受信した棒グラフに関する情報を端末装置１０の画面に表示する。
【００１４】
検索サーバ２０は、検索サービスを提供するサーバ装置である。例えば、検索サーバ２０が提供する検索サービスは、あらゆる情報を検索可能な総合検索サービスである。検索サーバ２０は、利用者によって入力された検索クエリに関する情報を記憶する。具体的には、検索サーバ２０は、利用者の検索履歴に関する情報を記憶する。また、検索サーバ２０は、生成装置５０の要求に応じて、利用者によって入力された検索クエリに関する情報を生成装置５０に送信する。
【００１５】
生成装置５０は、第１モデルＭ１を生成するサーバ装置である。生成装置５０は、後述する処理を実行することにより、第１モデルＭ１を生成する。第１モデルＭ１は、文字情報を入力すると、文字情報（例えば、検索クエリ）の分散表現を出力するモデルである。なお、分散表現は、ベクトルでもよい。ここで、第１モデルＭ１から出力される文字情報の分散表現には、その文字情報が検索クエリとして入力された際の利用者の検索意図を示す特徴情報が含まれている。すなわち、第１モデルＭ１から出力される所定の文字情報の分散表現と他の文字情報の分散表現が類似することは、所定の文字情報が検索クエリとして入力された際の利用者の検索意図と他の文字情報が検索クエリとして入力された際の利用者の検索意図とが類似することを意味する。なお、生成装置５０による第１モデルの生成処理の詳細については後述する。
【００１６】
情報処理装置１００は、企業等であるクライアントに対して、クライアントが市場分析を所望する分析対象を示すキーワード（文字情報）に関する一般利用者の検索動向を分析するクエリの分析サービスを提供するサーバ装置である。図１に示す例では、情報処理装置１００は、類似性の判定対象を示す複数の第１クエリと、類似性の判定基準を示す複数の第２クエリとを端末装置１０から受け付ける。また、情報処理装置１００は、類似性の判定基準を示す第２クエリごとに、各第１クエリが示す判定対象と、第２クエリが示す判定基準との類似度の大きさを視認可能にした棒グラフに関する情報を生成する。そして、情報処理装置１００は、生成した棒グラフに関する情報を端末装置１０に送信する。
【００１７】
一般的に、クエリの分析サービスでは、企業等であるクライアントから、クライアントが市場分析を所望する分析対象を示すキーワード（文字情報）を受け付ける。そして、クエリの分析サービスは、膨大なクエリのデータベースの中から、指定されたキーワードと類似するクエリに関する情報を抽出し、抽出したクエリに関する情報をクライアントに対して提供する。例えば、クエリの分析サービスは、指定されたキーワードとクエリとの類似性を数値によって把握するため、クエリに対応する文字列やクライアントによって指定されたキーワードを分散表現に変換する。そして、クエリの分析サービスは、指定されたキーワードを変換した分散表現とクエリに対応する文字列を変換した分散表現との類似度を算出することで、指定されたキーワードと類似するクエリに関する情報を抽出する。
【００１８】
ここで、クエリの分析サービスが保有するデータベースには、膨大な数のクエリが存在するため、クエリに対応する文字列を変換した分散表現の数も膨大な数になる。また、一般的に、文字列を変換した分散表現は、高次元のベクトル（例えば、何百次元や何千次元のベクトル）であることが一般的である。すなわち、クエリの分析サービスを提供する装置が指定されたキーワードと類似するクエリの分析結果に関する情報を単に抽出して提供するだけでは、分析結果に関する情報の提供を受けたクライアントが有用な情報を得ることは難しい。例えば、クライアントに対して提供される情報が、多数の高次元の分散表現を分散表現空間にマッピングした状態で提供された場合や、分散表現間の類似度を示す膨大な数のデータを羅列した状態で提供された場合には、情報量が多く、クライアントが分析結果を一見して把握することは難しい。そのため、提供された情報からクライアントが有用な情報を得ることは難しい。
【００１９】
そこで、本願発明に係る情報処理装置１００は、類似性の判定対象を示す複数の第１クエリと、類似性の判定基準を示す複数の第２クエリとを受け付ける。また、情報処理装置１００は、類似性の判定基準を示す第２クエリごとに、各第１クエリが示す判定対象と、第２クエリが示す判定基準との類似性を示す類似情報を生成する。そして、情報処理装置１００は、生成した類似情報を出力する。これにより、本願発明に係る情報処理装置１００は、多数の高次元の分散表現同士の類似度に関する分析結果を一見して把握しやすい状態で提供可能にする。したがって、本願発明に係る情報処理装置１００は、有用な情報を得ることができる。
【００２０】
ここから、図１を用いて、情報処理の流れについて説明する。図１では、情報処理装置１００は、端末装置１０の要求に応じて、コンテンツＣ１の部分コンテンツＣ１１を端末装置１０に送信する。具体的には、情報処理装置１００は、複数の第１クエリを入力可能な入力フィールドＦ１１と、複数の第２クエリを入力可能な入力フィールドＦ１２と、入力フィールドに入力されたクエリを情報処理装置１００に送信する送信ボタンＢ１１とを含む部分コンテンツＣ１１を端末装置１０に送信する。
【００２１】
端末装置１０は、コンテンツＣ１の部分コンテンツＣ１１を情報処理装置１００から受信する。端末装置１０は、部分コンテンツＣ１１を受信すると、受信した部分コンテンツＣ１１を端末装置１０の画面に表示する。
【００２２】
端末装置１０の利用者Ｕ１１は、端末装置１０の画面に表示された部分コンテンツＣ１１に含まれる入力フィールドＦ１１に類似性の判定対象を示す複数の第１クエリを入力する操作を行う。図１に示す例では、利用者Ｕ１１は、９つの第１クエリＱ１-１〜Ｑ１-９を入力フィールドＦ１１に入力する操作を行う。具体的には、利用者Ｕ１１は、区切り文字で区切られた各文字列をそれぞれ一つの第１クエリとして入力フィールドＦ１１に入力する操作を行う。例えば、自動車メーカー＃１の担当者である利用者Ｕ１１は、自社（自動車メーカー＃１）の商品である３種類の自動車の名称を示す３つの第１クエリ「車種Ｔ１１」(第１クエリＱ１-１)、第１クエリ「車種Ｔ１２」(第１クエリＱ１-２)、第１クエリ「車種Ｔ１３」(第１クエリＱ１-３)を入力フィールドＦ１１に入力する操作を行う。また、利用者Ｕ１１は、競合他社である自動車メーカー＃２の商品である３種類の自動車の名称を示す３つの第１クエリ「車種Ｔ２１」(第１クエリＱ１-４)、第１クエリ「車種Ｔ２２」(第１クエリＱ１-５)、第１クエリ「車種Ｔ２３」(第１クエリＱ１-６)を入力フィールドＦ１１に入力する操作を行う。また、利用者Ｕ１１は、競合他社である自動車メーカー＃３の商品である３種類の自動車の名称を示す３つの第１クエリ「車種Ｔ３１」(第１クエリＱ１-７)、第１クエリ「車種Ｔ３２」(第１クエリＱ１-８)、「車種Ｔ３３」(第１クエリＱ１-９)を入力フィールドＦ１１に入力する操作を行う操作を行う。
【００２３】
また、端末装置１０の利用者Ｕ１１は、端末装置１０の画面に表示された部分コンテンツＣ１１に含まれる入力フィールドＦ１２に類似性の判定基準を示す複数の第２クエリを入力する操作を行う。利用者Ｕ１１は、第１クエリを分析する際の分析の軸としたいキーワードを第２クエリとして入力する操作を行う。図１に示す例では、利用者Ｕ１１は、３つの第１クエリＱ２-１〜Ｑ２-３を入力フィールドＦ１２に入力する操作を行う。具体的には、利用者Ｕ１１は、区切り文字で区切られた各文字列をそれぞれ一つの第２クエリとして入力フィールドＦ１２に入力する操作を行う。例えば、利用者Ｕ１１は、競合他社の商品と比べて、自社の商品が市場のどの分野で消費者に対する強み（又は弱み）があるかを把握するためのキーワードを第２クエリとして入力する。例えば、利用者Ｕ１１は、３つの第２クエリ「キャンプ」(第２クエリＱ２-１)、第２クエリ「ＳＮＳ＃１」(第２クエリＱ２-２)、第２クエリ「夜景」(第２クエリＱ２-３)を入力フィールドＦ１２に入力する操作を行う。
【００２４】
続いて、端末装置１０の利用者Ｕ１１は、端末装置１０の画面に表示された部分コンテンツＣ１１に含まれる送信ボタンＢ１１を選択する操作を行う。端末装置１０は、利用者Ｕ１１の操作に従って送信ボタンＢ１１が選択されると、入力フィールドＦ１１に入力された９つの第１クエリＱ１-１〜Ｑ１-９と、入力フィールドＦ１２に入力された３つの第２クエリＱ２-１〜Ｑ２-３を情報処理装置１００に送信する。
【００２５】
情報処理装置１００は、９つの第１クエリＱ１-１〜Ｑ１-９と３つの第２クエリＱ２-１〜Ｑ２-３を利用者Ｕ１１から受け付ける。具体的には、情報処理装置１００は、９つの第１クエリＱ１-１〜Ｑ１-９と３つの第２クエリＱ２-１〜Ｑ２-３を端末装置１０から受信する。
【００２６】
情報処理装置１００は、第１クエリＱ１-１〜Ｑ１-９と第２クエリＱ２-１〜Ｑ２-３を受け付けると、第２クエリごとに、各第１クエリが示す判定対象と、第２クエリが示す判定基準との類似度を算出する。具体的には、第１クエリＱ１-１〜Ｑ１-９と第２クエリＱ２-１〜Ｑ２-３を受け付けると、第１モデルＭ１を用いて生成された各第１クエリＱ１-１〜Ｑ１-９の分散表現ＱＶ１-１〜ＱＶ１-９（図５参照）と、各第２クエリＱ２-１〜Ｑ２-３の分散表現ＱＶ２-１〜ＱＶ２-３（図５参照）とを取得する。
【００２７】
続いて、情報処理装置１００は、分散表現ＱＶ１-１〜ＱＶ１-９との分散表現ＱＶ２-１〜ＱＶ２-３とを取得すると、第２クエリの分散表現ごとに、各第１クエリの分散表現と、第２クエリの分散表現との類似度を算出する。例えば、情報処理装置１００は、各第１クエリの分散表現と、第２クエリの分散表現とのコサイン類似度を算出する。なお、情報処理装置１００は、コサイン類似度に限らず、ベクトル間の距離尺度として適用可能な指標であれば、どのような指標に基づいて分散表現の間の類似度を算出してもよい。例えば、情報処理装置１００は、分散表現同士のユークリッド距離や双曲空間等の非ユークリッド空間中での距離、マンハッタン距離、マハラノビス距離等といった所定の距離関数の値を算出してもよい。
【００２８】
例えば、情報処理装置１００は、第２クエリＱ２-１「キャンプ」の分散表現ＱＶ２-１と、各第１クエリＱ１-１「車種Ｔ１１」〜Ｑ１-９「車種Ｔ３３」の分散表現ＱＶ１-１〜ＱＶ１-９との類似度ＳＣ１-１〜ＳＣ１-９（図６参照）を算出する。
【００２９】
例えば、情報処理装置１００は、第２クエリＱ２-１「キャンプ」の分散表現ＱＶ２-１と第１クエリＱ１-１「車種Ｔ１１」の分散表現ＱＶ１-１との類似度ＳＣ１-１を算出する。続いて、情報処理装置１００は、第２クエリＱ２-１「キャンプ」の分散表現ＱＶ２-１と第１クエリＱ１-２「車種Ｔ１２」の分散表現ＱＶ１-２との類似度ＳＣ１-２を算出する。続いて、情報処理装置１００は、第２クエリＱ２-１「キャンプ」の分散表現ＱＶ２-１と第１クエリＱ１-３「車種Ｔ１３」の分散表現とＱＶ１-３の類似度ＳＣ１-３を算出する。同様にして、情報処理装置１００は、第２クエリＱ２-１「キャンプ」の分散表現ＱＶ２-１と、各第１クエリＱ１-４「車種Ｔ２１」〜Ｑ１-９「車種Ｔ３３」の分散表現ＱＶ１-４〜ＱＶ１-９との類似度ＳＣ１-４〜ＳＣ１-９を算出する。
【００３０】
続いて、情報処理装置１００は、第２クエリＱ２-１の分散表現ＱＶ２-１と、各第１クエリＱ１-１〜Ｑ１-９の分散表現ＱＶ１-１〜ＱＶ１-９との類似度ＳＣ１-１〜ＳＣ１-９を算出すると、算出した類似度ＳＣ１-１〜ＳＣ１-９の大きさを視認可能にした棒グラフＧ２１に関する情報を生成する。具体的には、情報処理装置１００は、図１の部分コンテンツＣ２１の表示領域Ｆ２１に示す情報を生成する。より具体的には、情報処理装置１００は、第２クエリ第２クエリＱ２-１を示す文字列である「キャンプ」が棒グラフＧ２１の上方に配置して表示される情報を生成する。また、情報処理装置１００は、算出した類似度ＳＣ１-１〜ＳＣ１-９の大きさを各棒グラフの長さで示す棒グラフＧ２１に関する情報を生成する。
【００３１】
また、情報処理装置１００は、第１クエリが示す車種の自動車を取り扱う自動車メーカーに応じて異なる色によって、類似度の大きさを示す領域が色分けされたグラフを生成する。図１では、塗りつぶしのパターンの違いによって、色の違いを表現する。例えば、情報処理装置１００は、自動車メーカー＃１の商品名を示す第１クエリＱ１-１〜Ｑ１-３に対応する類似度ＳＣ１-１〜ＳＣ１-３の大きさを示す棒グラフの領域を赤色で塗りつぶした棒グラフＧ２１に関する情報を生成する。また、情報処理装置１００は、自動車メーカー＃２の商品名を示す第１クエリＱ１-４〜Ｑ１-６に対応する類似度ＳＣ１-４〜ＳＣ１-６の大きさを示す棒グラフの領域を青色で塗りつぶした棒グラフＧ２１に関する情報を生成する。また、情報処理装置１００は、自動車メーカー＃３の商品名を示す第１クエリＱ１-７〜Ｑ１-９に対応する類似度ＳＣ１-７〜ＳＣ１-９の大きさを示す棒グラフの領域を黄色で塗りつぶした棒グラフＧ２１に関する情報を生成する。
【００３２】
また、情報処理装置１００は、第２クエリＱ２-２「ＳＮＳ＃１」の分散表現ＱＶ２-２と、各第１クエリＱ１-１「車種Ｔ１１」〜Ｑ１-９「車種Ｔ３３」の分散表現ＱＶ１-１〜ＱＶ１-９との類似度ＳＣ２-１〜ＳＣ２-９（図６参照）を算出する。例えば、情報処理装置１００は、第２クエリＱ２-２「ＳＮＳ＃１」の分散表現ＱＶ２-２と第１クエリＱ１-１「車種Ｔ１１」の分散表現ＱＶ１-１との類似度ＳＣ２-１を算出する。続いて、情報処理装置１００は、第２クエリＱ２-２「ＳＮＳ＃１」の分散表現ＱＶ２-２と第１クエリＱ１-２「車種Ｔ１２」の分散表現ＱＶ１-２との類似度ＳＣ２-２を算出する。続いて、情報処理装置１００は、第２クエリＱ２-２「ＳＮＳ＃１」の分散表現ＱＶ２-２と第１クエリＱ１-３「車種Ｔ１３」の分散表現ＱＶ１-３との類似度ＳＣ２-３を算出する。同様にして、情報処理装置１００は、第２クエリＱ２-２「ＳＮＳ＃１」の分散表現ＱＶ２-２と、各第１クエリＱ１-４「車種Ｔ２１」〜Ｑ１-９「車種Ｔ３３」の分散表現とＱＶ１-４〜ＱＶ１-９の類似度ＳＣ２-４〜ＳＣ２-９を算出する。
【００３３】
続いて、情報処理装置１００は、第２クエリＱ２-２の分散表現ＱＶ２-２と、各第１クエリＱ１-１〜Ｑ１-９の分散表現ＱＶ１-１〜ＱＶ１-９との類似度ＳＣ２-１〜ＳＣ２-９を算出すると、算出した類似度ＳＣ２-１〜ＳＣ２-９の大きさを視認可能にした棒グラフＧ２２に関する情報を生成する。具体的には、情報処理装置１００は、図１の部分コンテンツＣ２１の表示領域Ｆ２２に示す情報を生成する。より具体的には、情報処理装置１００は、第２クエリ第２クエリＱ２-２を示す文字列である「ＳＮＳ＃１」が棒グラフＧ２２の上方に配置して表示される情報を生成する。また、情報処理装置１００は、算出した類似度ＳＣ２-１〜ＳＣ２-９の大きさを各棒グラフの長さで示す棒グラフＧ２２に関する情報を生成する。
【００３４】
また、情報処理装置１００は、自動車メーカー＃１の商品名を示す第１クエリＱ１-１〜Ｑ１-３に対応する類似度ＳＣ２-１〜ＳＣ２-３の大きさを示す棒グラフの領域を赤色で塗りつぶした棒グラフＧ２２に関する情報を生成する。また、情報処理装置１００は、自動車メーカー＃２の商品名を示す第１クエリＱ１-４〜Ｑ１-６に対応する類似度ＳＣ２-４〜ＳＣ２-６の大きさを示す棒グラフの領域を青色で塗りつぶした棒グラフＧ２２に関する情報を生成する。また、情報処理装置１００は、自動車メーカー＃３の商品名を示す第１クエリＱ１-７〜Ｑ１-９に対応する類似度ＳＣ２-７〜ＳＣ２-９の大きさを示す棒グラフの領域を黄色で塗りつぶした棒グラフＧ２２に関する情報を生成する。
【００３５】
また、情報処理装置１００は、第２クエリＱ２-３「夜景」の分散表現ＱＶ２-３と、各第１クエリＱ１-１「車種Ｔ１１」〜Ｑ１-９「車種Ｔ３３」の分散表現ＱＶ１-１〜ＱＶ１-９との類似度ＳＣ３-１〜ＳＣ３-９（図６参照）を算出する。より具体的には、情報処理装置１００は、第２クエリＱ２-３「夜景」の分散表現ＱＶ２-３と第１クエリＱ１-１「車種Ｔ１１」の分散表現ＱＶ１-１との類似度ＳＣ３-１を算出する。続いて、情報処理装置１００は、第２クエリＱ２-３「夜景」の分散表現ＱＶ２-３と第１クエリＱ１-２「車種Ｔ１２」の分散表現ＱＶ１-２との類似度ＳＣ３-２を算出する。続いて、情報処理装置１００は、第２クエリＱ２-３「夜景」の分散表現ＱＶ２-３と第１クエリＱ１-３「車種Ｔ１３」の分散表現ＱＶ１-３との類似度ＳＣ３-３を算出する。同様にして、情報処理装置１００は、第２クエリＱ２-３「夜景」の分散表現ＱＶ２-３と、各第１クエリＱ１-４「車種Ｔ２１」〜Ｑ１-９「車種Ｔ３３」の分散表現ＱＶ１-４〜ＱＶ１-９との類似度ＳＣ３-４〜ＳＣ３-９を算出する。
【００３６】
続いて、情報処理装置１００は、第２クエリＱ２-３の分散表現ＱＶ２-３と、各第１クエリＱ１-１〜Ｑ１-９の分散表現ＱＶ１-１〜ＱＶ１-９との類似度ＳＣ３-１〜ＳＣ３-９を算出すると、算出した類似度ＳＣ３-１〜ＳＣ３-９の大きさを視認可能にした棒グラフＧ２３に関する情報を生成する。具体的には、情報処理装置１００は、図１の部分コンテンツＣ２１の表示領域Ｆ２３に示す情報を生成する。より具体的には、情報処理装置１００は、第２クエリ第２クエリＱ２-３を示す文字列である「夜景」が棒グラフＧ２３の上方に配置して表示される情報を生成する。また、情報処理装置１００は、算出した類似度ＳＣ３-１〜ＳＣ３-９の大きさを各棒グラフの長さで示す棒グラフＧ２３に関する情報を生成する。
【００３７】
また、情報処理装置１００は、自動車メーカー＃１の商品名を示す第１クエリＱ１-１〜Ｑ１-３に対応する類似度ＳＣ３-１〜ＳＣ３-３の大きさを示す棒グラフの領域を赤色で塗りつぶした棒グラフＧ２３に関する情報を生成する。また、情報処理装置１００は、自動車メーカー＃２の商品名を示す第１クエリＱ１-４〜Ｑ１-６に対応する類似度ＳＣ３-４〜ＳＣ３-６の大きさを示す棒グラフの領域を青色で塗りつぶした棒グラフＧ２３に関する情報を生成する。また、情報処理装置１００は、自動車メーカー＃３の商品名を示す第１クエリＱ１-７〜Ｑ１-９に対応する類似度ＳＣ３-７〜ＳＣ３-９の大きさを示す棒グラフの領域を黄色で塗りつぶした棒グラフＧ２３に関する情報を生成する。
【００３８】
続いて、情報処理装置１００は、３つの棒グラフＧ２１〜Ｇ２３に関する情報を生成すると、生成した３つの棒グラフＧ２１〜Ｇ２３に関する情報を端末装置１０に送信する。端末装置１０は、３つの棒グラフＧ２１〜Ｇ２３に関する情報を取得すると、コンテンツＣ１の部分コンテンツＣ１２に含まれる表示領域Ｆ２１〜Ｆ２３のそれぞれに棒グラフＧ２１〜Ｇ２３に関する情報が表示されるように表示部１３の表示を制御する。
【００３９】
上述したように、情報処理装置１００は、類似性の判定対象を示す複数の第１クエリと、類似性の判定基準を示す複数の第２クエリとを受け付ける。また、情報処理装置１００は、第２クエリごとに、各第１クエリが示す判定対象と、第２クエリが示す判定基準との類似性を示す類似情報を生成する。そして、情報処理装置１００は、生成した類似情報を出力する。これにより、情報処理装置１００は、多数の高次元の分散表現同士の類似度に関する分析結果を一見して把握しやすい状態で提供可能にする。したがって、情報処理装置１００は、有用な情報を得ることができる。
【００４０】
〔２．情報処理装置の構成〕
次に、図３を用いて、実施形態に係る情報処理装置１００の構成について説明する。図３は、実施形態に係る情報処理装置１００の構成例を示す図である。図３に示すように、情報処理装置１００は、通信部１１０と、記憶部１２０と、制御部１３０とを有する。なお、情報処理装置１００は、情報処理装置１００の管理者等から各種操作を受け付ける入力部（例えば、キーボードやマウス等）や、各種情報を表示させるための表示部（例えば、液晶ディスプレイ等）を有してもよい。
【００４１】
（通信部１１０）
通信部１１０は、例えば、ＮＩＣ（Network  Interface  Card）等によって実現される。そして、通信部１１０は、ネットワークと有線または無線で接続され、例えば、端末装置１０と検索サーバ２０と生成装置５０との間で情報の送受信を行う。
【００４２】
（記憶部１２０）
記憶部１２０は、例えば、ＲＡＭ（Random  Access  Memory)、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部１２０は、図３に示すように、クエリ情報記憶部１２１とベクトル情報記憶部１２２と類似度情報記憶部１２３とモデル情報記憶部１２４を有する。
【００４３】
（クエリ情報記憶部１２１）
クエリ情報記憶部１２１は、ユーザから受け付けたクエリに関する各種の情報を記憶する。図４に、実施形態に係るクエリ情報記憶部の一例を示す。図４に示す例では、クエリ情報記憶部１２１は、「ユーザＩＤ」、「日時」、「種別」、「クエリ」、「クエリＩＤ」といった項目を有する。
【００４４】
「ユーザＩＤ」は、ユーザを識別するための識別情報を示す。「日時」は、ユーザからクエリを受け付けた日時を示す。「種別」は、ユーザから受け付けたクエリの種別を示す。具体的には、種別「１」は、ユーザから受け付けたクエリが第１クエリであることを示す。また、日時を示す。「種別」は、ユーザから受け付けたクエリの種別を示す。具体的には、種別「２」は、ユーザから受け付けたクエリが第２クエリであることを示す。「クエリ」は、ユーザから受け付けたクエリを示す。具体的には、「クエリＩＤ」は、ユーザから受け付けたクエリを識別するための識別情報を示す。
【００４５】
図４の１レコード目に示す例では、クエリＩＤ「Ｑ１-１」で識別されるクエリ（クエリＱ１-１）は、図１に示す第１クエリ「車種Ｔ１１」に対応する。また、図４の１０レコード目に示す例では、クエリＩＤ「Ｑ２-１」で識別されるクエリ（クエリＱ２-１）は、図１に示す第２クエリ「キャンプ」に対応する。
【００４６】
（ベクトル情報記憶部１２２）
ベクトル情報記憶部１２２は、クエリの分散表現であるベクトルに関する各種の情報を記憶する。図５に、実施形態に係るベクトル情報記憶部の一例を示す。図５に示す例では、ベクトル情報記憶部１２２は、「ベクトルＩＤ」、「クエリＩＤ」、「ベクトル情報」といった項目を有する。
【００４７】
「ベクトルＩＤ」は、クエリの分散表現であるベクトルを識別するための識別情報を示す。「クエリＩＤ」は、ベクトルに対応するクエリを識別するための識別情報を示す。「ベクトル情報」は、クエリの分散表現であるＮ次元（例えば、１２８次元）のベクトルを示す。
【００４８】
図５の１レコード目に示す例では、ベクトルＩＤ「ＱＶ１-１」で識別されるベクトル（ベクトルＱＶ１-１）は、図１に示したクエリＱ１-１分散表現であるベクトルＱＶ１-１に対応する。また、クエリＩＤ「Ｑ１-１」で識別されるクエリ（クエリＱ１-１）は、ベクトルＱＶ１-１に対応するクエリがクエリＱ１-１であることを示す。また、ベクトル情報「ＱＶＤＴ１-１」は、クエリＱ１-１の分散表現であるＮ次元のベクトルを示す。
【００４９】
（類似度情報記憶部１２３）
類似度情報記憶部１２３は、第１クエリに対応する分散表現と第２クエリに対応する分散表現との類似度に関する各種の情報を記憶する。図６に、実施形態に係る類似度情報記憶部の一例を示す。図６に示す例では、類似度情報記憶部１２３は、ユーザから複数の第１クエリと複数の第２クエリとを受け付ける毎に生成される類似度情報毎にデータが格納される複数のデータテーブルから成る。図６に示す類似度情報記憶部１２３は、図１に示す第１クエリＱ１-１〜Ｑ１-９に対応する分散表現と第２クエリＱ２-１〜Ｑ２-３に対応する分散表現との類似度に関するデータテーブル１２３-１を有する。
【００５０】
データテーブル１２３-１は、図１に示す第１クエリＱ１-１〜Ｑ１-９に対応する分散表現と第２クエリＱ２-１〜Ｑ２-３に対応する分散表現との類似度をデータテーブルの各セルに格納する。図６に示す「ＳＣ１-１」は、図１に示す第１クエリＱ１-１に対応する分散表現ＱＶ１-１と第２クエリＱ２-１に対応する分散表現ＱＶ２-１との類似度を示す。なお、図６に示す例では、類似度を「ＳＣ１-１」のような概念で表すが、実際には、類似度を示す数値（例えば、「０．８８８…」や「０．５」といった数値）がデータテーブルの各セルに格納される。
【００５１】
（モデル情報記憶部１２４）
モデル情報記憶部１２４は、生成装置５０によって生成された学習モデルに関する各種の情報を記憶する。図７に、実施形態に係るモデル情報記憶部の一例を示す。図７に示す例では、モデル情報記憶部１２４は、「モデルＩＤ」、「モデルデータ」といった項目を有する。
【００５２】
「モデルＩＤ」は、生成装置５０によって生成された学習モデルを識別するための識別情報を示す。「モデルデータ」は、生成装置５０によって生成された学習モデルのモデルデータを示す。例えば、「モデルデータ」には、クエリを分散表現に変換するためのデータが格納される。
【００５３】
図７の１レコード目に示す例では、モデルＩＤ「Ｍ１」で識別される学習モデルは、図１に示した第１モデルＭ１に対応する。また、モデルデータ「ＭＤＴ１」は、生成装置５０によって生成された第１モデルＭ１のモデルデータ（モデルデータＭＤＴ１）を示す。
【００５４】
モデルデータＭＤＴ１は、クエリが入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第１要素と、第１要素と第１要素の重みとに基づいて値が算出される第２要素と、を含み、入力層に入力されたクエリに応じて、入力層に入力されたクエリの分散表現を出力層から出力するよう、生成装置５０を機能させてもよい。
【００５５】
ここで、モデルデータＭＤＴ１が「y=a1*x1+a2*x2+・・・+ai*xi」で示す回帰モデルで実現されるとする。この場合、モデルデータＭＤＴ１が含む第１要素は、x1やx2等といった入力データ（xi）に対応する。また、第１要素の重みは、xiに対応する係数aiに対応する。ここで、回帰モデルは、入力層と出力層とを有する単純パーセプトロンと見做すことができる。各モデルを単純パーセプトロンと見做した場合、第１要素は、入力層が有するいずれかのノードに対応し、第２要素は、出力層が有するノードと見做すことができる。
【００５６】
また、モデルデータＭＤＴ１がＤＮＮ（Deep  Neural  Network）等、１つまたは複数の中間層を有するニューラルネットワークで実現されるとする。この場合、モデルデータＭＤＴ１が含む第１要素は、入力層または中間層が有するいずれかのノードに対応する。また、第２要素は、第１要素と対応するノードから値が伝達されるノードである次段のノードに対応する。また、第１要素の重みは、第１要素と対応するノードから第２要素と対応するノードに伝達される値に対して考慮される重みである接続係数に対応する。
【００５７】
生成装置５０は、上述した回帰モデルやニューラルネットワーク等、任意の構造を有するモデルを用いて、分散表現の算出を行う。具体的には、モデルデータＭＤＴ１は、クエリが入力された場合に、分散表現を出力するように係数が設定される。生成装置５０は、このようなモデルデータＭＤＴ１を用いて、分散表現を算出する。
【００５８】
なお、上記例では、モデルデータＭＤＴ１が、クエリが入力された場合に、クエリの分散表現を出力するモデル（以下、モデルＸ１という。）である例を示した。しかし、実施形態に係るモデルデータＭＤＴ１は、モデルＸ１にデータの入出力を繰り返すことで得られる結果に基づいて生成されるモデルであってもよい。例えば、モデルデータＭＤＴ１は、クエリを入力とした際に、モデルＸ１が出力した分散表現を入力して学習されたモデル（以下、モデルＹ１という。）であってもよい。または、モデルデータＭＤＴ１は、クエリを入力とし、モデルＹ１の出力値を出力とするよう学習されたモデルであってもよい。
【００５９】
また、生成装置５０がＧＡＮ（Generative  Adversarial  Networks）を用いた推定処理を行う場合、モデルデータＭＤＴ１は、ＧＡＮの一部を構成するモデルであってもよい。
【００６０】
（制御部１３０）
図３の説明に戻って、制御部１３０は、コントローラ（controller）であり、例えば、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等によって、情報処理装置１００内部の記憶装置に記憶されている各種プログラム（情報処理プログラムの一例に相当）がＲＡＭを作業領域として実行されることにより実現される。また、制御部１３０は、コントローラであり、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路により実現される。
【００６１】
図３に示すように、制御部１３０は、受付部１３１と、取得部１３２と、生成部１３３と、出力部１３４とを有し、以下に説明する情報処理の作用を実現または実行する。なお、制御部１３０の内部構成は、図３に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
【００６２】
（受付部１３１）
受付部１３１は、端末装置１０からコンテンツＣ１の配信要求を受け付ける。受付部１３１は、端末装置１０からコンテンツＣ１の部分コンテンツＣ１１の配信要求を受け付ける。具体的には、受付部１３１は、複数の第１クエリを入力可能な入力フィールドＦ１１と、複数の第２クエリを入力可能な入力フィールドＦ１２と、入力フィールドに入力されたクエリを情報処理装置１００に送信する送信ボタンＢ１１とを含む部分コンテンツＣ１１の配信要求を受け付ける。
【００６３】
続いて、受付部１３１は、コンテンツＣ１の配信要求を受け付けると、端末装置１０にコンテンツＣ１を配信する。受付部１３１は、コンテンツＣ１の部分コンテンツＣ１１の配信要求を受け付けると、端末装置１０にコンテンツＣ１の部分コンテンツＣ１１を配信する。具体的には、受付部１３１は、複数の第１クエリを入力可能な入力フィールドＦ１１と、複数の第２クエリを入力可能な入力フィールドＦ１２と、入力フィールドに入力されたクエリを情報処理装置１００に送信する送信ボタンＢ１１とを含む部分コンテンツＣ１１を端末装置１０に配信する。
【００６４】
また、受付部１３１は、類似性の判定対象を示す複数の第１クエリと、類似性の判定基準を示す複数の第２クエリとを受け付ける。具体的には、受付部１３１は、複数の第１クエリと複数の第２クエリとを端末装置１０から受信する。続いて、受付部１３１は、複数の第１クエリと複数の第２クエリとを受信すると、受信した複数の第１クエリと複数の第２クエリとをクエリ情報記憶部１２１に格納する。例えば、受付部１３１は、第１クエリを受け付けると、受け付けた第１クエリをそのクエリが第１クエリであることを示す種別「１」と対応付けてクエリ情報記憶部１２１に格納する。また、受付部１３１は、第２クエリを受け付けると、受け付けた第２クエリをそのクエリが第２クエリであることを示す種別「２」と対応付けてクエリ情報記憶部１２１に格納する。
【００６５】
また、受付部１３１は、取引対象を示す複数の第１クエリを受け付ける。ここで、「取引対象」とは、商取引の対象となる物品（商品）又は商取引の対象となる役務（サービス）を指す。図１に示す例では、受付部１３１は、自動車メーカー＃１の商品である３種類の自動車の名称を示す３つの第１クエリ「車種Ｔ１１」(第１クエリＱ１-１)、第１クエリ「車種Ｔ１２」(第１クエリＱ１-２)、第１クエリ「車種Ｔ１３」(第１クエリＱ１-３)を受け付ける。また、受付部１３１は、自動車メーカー＃１と競合する自動車メーカー＃２の商品である３種類の自動車の名称を示す３つの第１クエリ「車種Ｔ２１」(第１クエリＱ１-４)、第１クエリ「車種Ｔ２２」(第１クエリＱ１-５)、第１クエリ「車種Ｔ２３」(第１クエリＱ１-６)を受け付ける。また、受付部１３１は、自動車メーカー＃１と競合する自動車メーカー＃３の商品である３種類の自動車の名称を示す３つの第１クエリ「車種Ｔ３１」(第１クエリＱ１-７)、第１クエリ「車種Ｔ３２」(第１クエリＱ１-８)、「車種Ｔ３３」(第１クエリＱ１-９)を受け付ける。
【００６６】
また、受付部１３１は、利用者にとって第１クエリを分析する際の分析の軸としたいキーワードを第２クエリとして受け付ける。図１に示す例では、受付部１３１は、利用者が担当する企業で取り扱う商品が市場のどの分野で消費者に対する強み（又は弱み）があるかを把握するためのキーワードを第２クエリとして受け付ける。例えば、受付部１３１は、利用者が分析の軸としたいキーワードである３つの第２クエリ「キャンプ」(第２クエリＱ２-１)、第２クエリ「ＳＮＳ＃１」(第２クエリＱ２-２)、「夜景」(第２クエリＱ２-３)を受け付ける。
【００６７】
（取得部１３２）
取得部１３２は、各種情報を取得する。取得部１３２は、外部の情報処理装置から各種情報を取得する。取得部１３２は、生成装置５０等の他の情報処理装置から各種情報を取得する。
【００６８】
また、取得部１３２は、記憶部１２０から各種情報を取得する。取得部１３２は、クエリ情報記憶部１２１やベクトル情報記憶部１２２や類似度情報記憶部１２３やモデル情報記憶部１２４から各種情報を取得する。
【００６９】
具体的には、取得部１３２は、モデルを取得する。より具体的には、取得部１３２は、受付部１３１によって類似性の判定対象を示す複数の第１クエリと、類似性の判定基準を示す複数の第２クエリとが受け付けられると、生成装置５０から第１モデルＭ１を取得する。取得部１３２は、生成装置５０から第１モデルＭ１のモデルデータＭＤＴ１を取得する。続いて、取得部１３２は、第１モデルＭ１（モデルデータＭＤＴ１）を取得すると、取得した第１モデルＭ１（モデルデータＭＤＴ１）をモデル情報記憶部１２４に格納する。
【００７０】
また、取得部１３２は、受付部１３１によって類似性の判定対象を示す複数の第１クエリと、類似性の判定基準を示す複数の第２クエリとが受け付けられると、モデル情報記憶部１２４を参照して、第１モデルＭ１を取得する。また、取得部１３２は、受付部１３１によって類似性の判定対象を示す複数の第１クエリと、類似性の判定基準を示す複数の第２クエリとが受け付けられると、クエリ情報記憶部１２１を参照して、受付部１３１によって受け付けられた複数の第１クエリと複数の第２クエリとを取得する。図１に示す例では、取得部１３２は、受付部１３１によって受け付けられた第１クエリＱ１-１〜Ｑ１-９と第２クエリＱ２-１〜Ｑ２-３とを取得する。
【００７１】
続いて、取得部１３２は、複数の第１クエリを取得すると、複数の第１クエリの中から一の第１クエリを取得する。図１に示す例では、取得部１３２は、第１クエリＱ１-１〜Ｑ１-９を取得すると、第１クエリＱ１-１〜Ｑ１-９の中から一の第１クエリＱ１-１を取得する。続いて、取得部１３２は、第１モデルＭ１の入力情報として、取得した一の第１クエリを第１モデルＭ１に入力する。図１に示す例では、取得部１３２は、第１モデルＭ１の入力情報として、取得した一の第１クエリＱ１-１を第１モデルＭ１に入力する。また、取得部１３２は、第１モデルＭ１の出力情報として、第１モデルＭ１に入力された第１クエリの分散表現を第１モデルＭ１から出力する。図１に示す例では、取得部１３２は、第１モデルＭ１の出力情報として、第１モデルＭ１に入力された第１クエリＱ１-１の分散表現ＱＶ１-１を第１モデルＭ１から出力する。このようにして、取得部１３２は、第１クエリの分散表現を生成する。同様に、取得部１３２は、取得した第１クエリの全てについて、各第１クエリの分散表現を生成する。図１に示す例では、取得部１３２は、取得した第１クエリＱ１-１〜Ｑ１-９について、各第１クエリＱ１-１〜Ｑ１-９の分散表現ＱＶ１-１〜ＱＶ１-９を生成する。続いて、取得部１３２は、各第１クエリの分散表現を生成すると、生成した各第１クエリの分散表現を各第１クエリと対応付けてベクトル情報記憶部１２２に格納する。
【００７２】
また、取得部１３２は、複数の第２クエリを取得すると、複数の第２クエリの中から一の第２クエリを取得する。図１に示す例では、取得部１３２は、第２クエリＱ２-１〜Ｑ２-３を取得すると、第２クエリＱ２-１〜Ｑ２-３の中から一の第２クエリＱ２-１を取得する。続いて、取得部１３２は、第１モデルＭ１の入力情報として、取得した一の第２クエリを第１モデルＭ１に入力する。図１に示す例では、取得部１３２は、第１モデルＭ１の入力情報として、取得した一の第２クエリＱ２-１を第１モデルＭ１に入力する。また、取得部１３２は、第１モデルＭ１の出力情報として、第１モデルＭ１に入力された第２クエリの分散表現を第１モデルＭ１から出力する。図１に示す例では、取得部１３２は、第１モデルＭ１の出力情報として、第１モデルＭ１に入力された第２クエリＱ２-１の分散表現ＱＶ２-１を第１モデルＭ１から出力する。このようにして、取得部１３２は、第２クエリの分散表現を生成する。同様に、取得部１３２は、取得した第２クエリの全てについて、各第２クエリの分散表現を生成する。図１に示す例では、取得部１３２は、取得した第２クエリＱ２-１〜Ｑ２-３について、各第２クエリＱ２-１〜Ｑ２-３の分散表現ＱＶ２-１〜ＱＶ２-３を生成する。続いて、取得部１３２は、各第２クエリの分散表現を生成すると、生成した各第２クエリの分散表現を各第２クエリと対応付けてベクトル情報記憶部１２２に格納する。
【００７３】
また、取得部１３２は、受付部１３１によって類似性の判定対象を示す複数の第１クエリと、類似性の判定基準を示す複数の第２クエリとが受け付けられると、第１モデルＭ１を用いて生成された各第１クエリの分散表現と、第１モデルＭ１を用いて生成された各第２クエリの分散表現とを取得する。例えば、取得部１３２は、クエリ情報記憶部１２１とベクトル情報記憶部１２２とを参照して、受付部１３１によって受け付けられた各第１クエリの分散表現と各第２クエリの分散表現とを取得する。図１に示す例では、取得部１３２は、第１クエリＱ１-１〜Ｑ１-９の分散表現ＱＶ１-１〜ＱＶ１-９と、第２クエリＱ２-１〜Ｑ２-３の分散表現ＱＶ２-１〜ＱＶ２-３とを取得する。
【００７４】
（生成部１３３）
生成部１３３は、第２クエリごとに、各第１クエリが示す判定対象と、第２クエリが示す判定基準との類似性を示す類似情報を生成する。具体的には、生成部１３３は、判定対象を示す対象情報が第１クエリとして入力された際の検索意図と、判定基準を示す基準情報が第２クエリとして入力された際の検索意図との類似性を示すスコアに基づいて、類似情報を生成する。より具体的には、生成部１３３は、対象情報である文字情報に対応する分散表現と基準情報である文字情報に対応する分散表現との類似度であるスコアに基づいて、類似情報を生成する。
【００７５】
例えば、生成部１３３は、取得部１３２によって第１モデルＭ１を用いて生成された各第１クエリの分散表現と各第２クエリの分散表現とが取得されると、第２クエリの分散表現ごとに、各第１クエリの分散表現と、第２クエリの分散表現との類似度を算出する。例えば、生成部１３３は、各第１クエリの分散表現と、第２クエリの分散表現とのコサイン類似度を算出する。なお、生成部１３３は、コサイン類似度に限らず、ベクトル間の距離尺度として適用可能な指標であれば、どのような指標に基づいて分散表現の間の類似度を算出してもよい。例えば、生成部１３３は、分散表現同士のユークリッド距離や双曲空間等の非ユークリッド空間中での距離、マンハッタン距離、マハラノビス距離等といった所定の距離関数の値を算出してもよい。
【００７６】
図１に示す例では、生成部１３３は、第２クエリＱ２-１「キャンプ」の分散表現ＱＶ２-１と、各第１クエリＱ１-１「車種Ｔ１１」〜Ｑ１-９「車種Ｔ３３」の分散表現ＱＶ１-１〜ＱＶ１-９との類似度ＳＣ１-１〜ＳＣ１-９を算出する。具体的には、生成部１３３は、取得部１３２によって取得された第２クエリＱ２-１「キャンプ」の分散表現ＱＶ２-１と第１クエリＱ１-１「車種Ｔ１１」の分散表現ＱＶ１-１との類似度ＳＣ１-１を算出する。続いて、生成部１３３は、第２クエリＱ２-１「キャンプ」の分散表現ＱＶ２-１と第１クエリＱ１-２「車種Ｔ１２」の分散表現ＱＶ１-２との類似度ＳＣ１-２を算出する。続いて、生成部１３３は、第２クエリＱ２-１「キャンプ」の分散表現ＱＶ２-１と第１クエリＱ１-３「車種Ｔ１３」の分散表現とＱＶ１-３の類似度ＳＣ１-３を算出する。同様にして、生成部１３３は、第２クエリＱ２-１「キャンプ」の分散表現ＱＶ２-１と、各第１クエリＱ１-４「車種Ｔ２１」〜Ｑ１-９「車種Ｔ３３」の分散表現ＱＶ１-４〜ＱＶ１-９との類似度ＳＣ１-４〜ＳＣ１-９を算出する。
【００７７】
また、生成部１３３は、第２クエリＱ２-２「ＳＮＳ＃１」の分散表現ＱＶ２-２と、各第１クエリＱ１-１「車種Ｔ１１」〜Ｑ１-９「車種Ｔ３３」の分散表現ＱＶ１-１〜ＱＶ１-９との類似度ＳＣ２-１〜ＳＣ２-９を算出する。例えば、生成部１３３は、第２クエリＱ２-２「ＳＮＳ＃１」の分散表現ＱＶ２-２と第１クエリＱ１-１「車種Ｔ１１」の分散表現ＱＶ１-１との類似度ＳＣ２-１を算出する。続いて、生成部１３３は、第２クエリＱ２-２「ＳＮＳ＃１」の分散表現ＱＶ２-２と第１クエリＱ１-２「車種Ｔ１２」の分散表現ＱＶ１-２との類似度ＳＣ２-２を算出する。続いて、生成部１３３は、第２クエリＱ２-２「ＳＮＳ＃１」の分散表現ＱＶ２-２と第１クエリＱ１-３「車種Ｔ１３」の分散表現ＱＶ１-３との類似度ＳＣ２-３を算出する。同様にして、生成部１３３は、第２クエリＱ２-２「ＳＮＳ＃１」の分散表現ＱＶ２-２と、各第１クエリＱ１-４「車種Ｔ２１」〜Ｑ１-９「車種Ｔ３３」の分散表現とＱＶ１-４〜ＱＶ１-９の類似度ＳＣ２-４〜ＳＣ２-９を算出する。
【００７８】
また、生成部１３３は、第２クエリＱ２-３「夜景」の分散表現ＱＶ２-３と、各第１クエリＱ１-１「車種Ｔ１１」〜Ｑ１-９「車種Ｔ３３」の分散表現ＱＶ１-１〜ＱＶ１-９との類似度ＳＣ３-１〜ＳＣ３-９を算出する。より具体的には、生成部１３３は、第２クエリＱ２-３「夜景」の分散表現ＱＶ２-３と第１クエリＱ１-１「車種Ｔ１１」の分散表現ＱＶ１-１との類似度ＳＣ３-１を算出する。続いて、生成部１３３は、第２クエリＱ２-３「夜景」の分散表現ＱＶ２-３と第１クエリＱ１-２「車種Ｔ１２」の分散表現ＱＶ１-２との類似度ＳＣ３-２を算出する。続いて、生成部１３３は、第２クエリＱ２-３「夜景」の分散表現ＱＶ２-３と第１クエリＱ１-３「車種Ｔ１３」の分散表現ＱＶ１-３との類似度ＳＣ３-３を算出する。同様にして、生成部１３３は、第２クエリＱ２-３「夜景」の分散表現ＱＶ２-３と、各第１クエリＱ１-４「車種Ｔ２１」〜Ｑ１-９「車種Ｔ３３」の分散表現ＱＶ１-４〜ＱＶ１-９との類似度ＳＣ３-４〜ＳＣ３-９を算出する。
【００７９】
また、生成部１３３は、類似情報として、スコアの大きさを視認可能にしたグラフに関する情報を生成する。具体的には、生成部１３３は、第２クエリの分散表現ごとに、各第１クエリの分散表現と、第２クエリの分散表現との類似度を算出すると、算出した類似度の大きさを視認可能にしたグラフに関する情報を生成する。例えば、生成部１３３は、算出した類似度の大きさを棒グラフの長さで示すことによって視認可能にした棒グラフに関する情報を生成する。また、生成部１３３は、第２クエリごとに、類似情報と第２クエリとが対応付けて表示されるコンテンツを生成する。例えば、生成部１３３は、生成したグラフと第２クエリとが視覚的に対応付けて表示されるコンテンツを生成する。
【００８０】
図１に示す例では、生成部１３３は、第２クエリＱ２-１の分散表現ＱＶ２-１と、各第１クエリＱ１-１〜Ｑ１-９の分散表現ＱＶ１-１〜ＱＶ１-９との類似度ＳＣ１-１〜ＳＣ１-９を算出すると、算出した類似度ＳＣ１-１〜ＳＣ１-９の大きさを視認可能にした棒グラフＧ２１に関する情報を生成する。具体的には、生成部１３３は、図１の部分コンテンツＣ２１の表示領域Ｆ２１に示す情報を生成する。生成部１３３は、生成した棒グラフＧ２１と第２クエリＱ２-１とが視覚的に対応付けて表示される部分コンテンツＣ２１を生成する。例えば、生成部１３３は、第２クエリ第２クエリＱ２-１を示す文字列である「キャンプ」が棒グラフＧ２１の上方に配置して表示される情報を生成する。また、生成部１３３は、算出した類似度ＳＣ１-１〜ＳＣ１-９の大きさを各棒グラフの長さで示す棒グラフＧ２１に関する情報を生成する。
【００８１】
また、生成部１３３は、第２クエリＱ２-２の分散表現ＱＶ２-２と、各第１クエリＱ１-１〜Ｑ１-９の分散表現ＱＶ１-１〜ＱＶ１-９との類似度ＳＣ２-１〜ＳＣ２-９を算出すると、算出した類似度ＳＣ２-１〜ＳＣ２-９の大きさを視認可能にした棒グラフＧ２２に関する情報を生成する。具体的には、生成部１３３は、図１の部分コンテンツＣ２１の表示領域Ｆ２２に示す情報を生成する。生成部１３３は、生成した棒グラフＧ２１と第２クエリＱ２-２とが視覚的に対応付けて表示される部分コンテンツＣ２１を生成する。例えば、生成部１３３は、第２クエリ第２クエリＱ２-２を示す文字列である「ＳＮＳ＃１」が棒グラフＧ２２の上方に配置して表示される情報を生成する。また、生成部１３３は、算出した類似度ＳＣ２-１〜ＳＣ２-９の大きさを各棒グラフの長さで示す棒グラフＧ２２に関する情報を生成する。
【００８２】
また、生成部１３３は、第２クエリＱ２-３の分散表現ＱＶ２-３と、各第１クエリＱ１-１〜Ｑ１-９の分散表現ＱＶ１-１〜ＱＶ１-９との類似度ＳＣ３-１〜ＳＣ３-９を算出すると、算出した類似度ＳＣ３-１〜ＳＣ３-９の大きさを視認可能にした棒グラフＧ２３に関する情報を生成する。具体的には、生成部１３３は、図１の部分コンテンツＣ２１の表示領域Ｆ２３に示す情報を生成する。生成部１３３は、生成した棒グラフＧ２３と第２クエリＱ２-３とが視覚的に対応付けて表示される部分コンテンツＣ２１を生成する。例えば、生成部１３３は、第２クエリ第２クエリＱ２-３を示す文字列である「夜景」が棒グラフＧ２３の上方に配置して表示される情報を生成する。また、生成部１３３は、算出した類似度ＳＣ３-１〜ＳＣ３-９の大きさを各棒グラフの長さで示す棒グラフＧ２３に関する情報を生成する。
【００８３】
また、生成部１３３は、類似情報として、取引対象を取り扱う事業者に応じて異なる色によって、スコアの大きさを示す領域が色分けされたグラフに関する情報を生成する。例えば、生成部１３３は、第１クエリが示す取引対象を取り扱う事業者に応じて異なる色によって、類似度の大きさを示す領域が色分けされたグラフに関する情報を生成する。
【００８４】
図１に示す例では、生成部１３３は、第１クエリが示す車種の自動車を取り扱う自動車メーカーに応じて異なる色によって、類似度の大きさを示す領域が色分けされたグラフを生成する。例えば、生成部１３３は、自動車メーカー＃１の商品名を示す第１クエリＱ１-１〜Ｑ１-３に対応する類似度ＳＣ１-１〜ＳＣ１-３の大きさを示す棒グラフの領域を赤色で塗りつぶした棒グラフＧ２１に関する情報を生成する。また、生成部１３３は、自動車メーカー＃２の商品名を示す第１クエリＱ１-４〜Ｑ１-６に対応する類似度ＳＣ１-４〜ＳＣ１-６の大きさを示す棒グラフの領域を青色で塗りつぶした棒グラフＧ２１に関する情報を生成する。また、生成部１３３は、自動車メーカー＃３の商品名を示す第１クエリＱ１-７〜Ｑ１-９に対応する類似度ＳＣ１-７〜ＳＣ１-９の大きさを示す棒グラフの領域を黄色で塗りつぶした棒グラフＧ２１に関する情報を生成する。
【００８５】
また、生成部１３３は、自動車メーカー＃１の商品名を示す第１クエリＱ１-１〜Ｑ１-３に対応する類似度ＳＣ２-１〜ＳＣ２-３の大きさを示す棒グラフの領域を赤色で塗りつぶした棒グラフＧ２２に関する情報を生成する。また、生成部１３３は、自動車メーカー＃２の商品名を示す第１クエリＱ１-４〜Ｑ１-６に対応する類似度ＳＣ２-４〜ＳＣ２-６の大きさを示す棒グラフの領域を青色で塗りつぶした棒グラフＧ２２に関する情報を生成する。また、生成部１３３は、自動車メーカー＃３の商品名を示す第１クエリＱ１-７〜Ｑ１-９に対応する類似度ＳＣ２-７〜ＳＣ２-９の大きさを示す棒グラフの領域を黄色で塗りつぶした棒グラフＧ２２に関する情報を生成する。
【００８６】
また、生成部１３３は、自動車メーカー＃１の商品名を示す第１クエリＱ１-１〜Ｑ１-３に対応する類似度ＳＣ３-１〜ＳＣ３-３の大きさを示す棒グラフの領域を赤色で塗りつぶした棒グラフＧ２３に関する情報を生成する。また、生成部１３３は、自動車メーカー＃２の商品名を示す第１クエリＱ１-４〜Ｑ１-６に対応する類似度ＳＣ３-４〜ＳＣ３-６の大きさを示す棒グラフの領域を青色で塗りつぶした棒グラフＧ２３に関する情報を生成する。また、生成部１３３は、自動車メーカー＃３の商品名を示す第１クエリＱ１-７〜Ｑ１-９に対応する類似度ＳＣ３-７〜ＳＣ３-９の大きさを示す棒グラフの領域を黄色で塗りつぶした棒グラフＧ２３に関する情報を生成する。
【００８７】
（出力部１３４）
出力部１３４は、生成部１３３によって生成された類似情報を出力する。具体的には、出力部１３４は、第２クエリごとに、生成部１３３によって生成されたグラフに関する情報を出力する。例えば、出力部１３４は、生成部１３３によってグラフに関する情報が生成されると、グラフに関する情報を端末装置１０に送信する。
【００８８】
図１に示す例では、出力部１３４は、生成部１３３によって３つの棒グラフＧ２１〜Ｇ２３に関する情報が生成されると、生成された３つの棒グラフＧ２１〜Ｇ２３に関する情報を端末装置１０に送信する。
【００８９】
〔３．端末装置の構成〕
次に、図８を用いて、実施形態に係る端末装置１０の構成について説明する。図８は、実施形態に係る端末装置１０の構成例を示す図である。図８に示すように、端末装置１０は、通信部１１と、入力部１２と、表示部１３と、記憶部１４と、制御部１５とを有する。
【００９０】
（通信部１１）
通信部１１は、例えば、ＮＩＣ等によって実現される。そして、通信部１１は、ネットワークＮと有線または無線で接続され、情報処理装置１００との間で情報の送受信を行う。
【００９１】
（入力部１２、表示部１３）
入力部１２は、利用者から各種操作を受け付ける入力装置である。入力部１２は、表示部１３を介して各種情報が入力される。例えば、入力部１２は、キーボードやマウスや操作キー等によって実現される。表示部１３は、各種情報を表示するための表示装置であり、すなわち、画面である。例えば、表示部１３は、液晶ディスプレイ等によって実現される。表示部１３は、記憶部１４に記憶された情報を表示する。表示部１３は、受信部１５１によって受信された情報を表示する。表示部１３は、表示制御部１５２による制御に応じて、各種情報を表示する。なお、端末装置１０にタッチパネルが採用される場合には、入力部１２と表示部１３とは一体化される。また、以下の説明では、表示部１３を画面と記載する場合がある。
【００９２】
図１の例では、表示部１３は、受信部１５１によって受信されたコンテンツＣ１を表示する。表示部１３は、受信部１５１によって受信されたコンテンツＣ１の部分コンテンツＣ１１を表示する。具体的には、表示部１３は、複数の第１クエリを入力可能な入力フィールドＦ１１と、複数の第２クエリを入力可能な入力フィールドＦ１２と、入力フィールドに入力されたクエリを情報処理装置１００に送信する送信ボタンＢ１１とを含む部分コンテンツＣ１１を表示する。
【００９３】
また、表示部１３は、受信部１５１によって受信されたコンテンツＣ１の部分コンテンツＣ１２を表示する。表示部１３は、受信部１５１によって受信された棒グラフＧ２１〜Ｇ２３に関する情報を表示する。具体的には、表示部１３は、受信部１５１によって受信されたコンテンツＣ１の部分コンテンツＣ１２に含まれる表示領域Ｆ２１〜Ｆ２３のそれぞれに棒グラフＧ２１〜Ｇ２３に関する情報を表示する。
【００９４】
（記憶部１４）
記憶部１４は、例えば、ＲＡＭ、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部１４は、情報の表示に用いる各種情報を記憶する。記憶部１４は、受信部１５１によって受信された情報を記憶する。図１に示す例では、記憶部１４は、受信部１５１によって受信されたコンテンツＣ１を記憶する。また、記憶部１４は、受信部１５１によって受信されたコンテンツＣ１の部分コンテンツＣ１１を記憶する。また、記憶部１４は、受信部１５１によって受信されたコンテンツＣ１の部分コンテンツＣ１２を記憶する。また、記憶部１４は、受信部１５１によって受信された棒グラフＧ２１〜Ｇ２３に関する情報を記憶する。
【００９５】
（制御部１５）
制御部１５は、ＣＰＵやＭＰＵ等によって、端末装置１０内部の記憶装置に記憶されている各種プログラム（例えば、コンテンツＣ１等を画面に表示させる表示制御プログラムの一例に相当）がＲＡＭを作業領域として実行されることにより実現される。例えば、この各種プログラムは、ウェブブラウザと呼ばれるアプリケーションプログラムに該当する。また、制御部１５は、例えば、ＡＳＩＣやＦＰＧＡ等の集積回路により実現される。
【００９６】
図８に示すように、制御部１５は、受信部１５１と、表示制御部１５２と、受付部１５３と、送信部１５４とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部１５の内部構成は、図８に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
【００９７】
（受信部１５１）
受信部１５１は、各種情報を受信する。受信部１５１は、外部の情報処理装置から各種情報を受信する。受信部１５１は、情報処理装置１００等の他の情報処理装置から各種情報を受信する。図１の例では、受信部１５１は、情報処理装置１００からコンテンツＣ１を受信する。また、受信部１５１は、情報処理装置１００からコンテンツＣ１の部分コンテンツＣ１１を受信する。また、受信部１５１は、情報処理装置１００からコンテンツＣ１の部分コンテンツＣ１２を受信する。また、受信部１５１は、情報処理装置１００から棒グラフＧ２１〜Ｇ２３に関する情報を受信する。
【００９８】
（表示制御部１５２）
表示制御部１５２は、各種表示を制御する。表示制御部１５２は、表示部１３の表示を制御する。表示制御部１５２は、受信部１５１による受信に応じて、表示部１３の表示を制御する。表示制御部１５２は、受信部１５１により受信された情報に基づいて、表示部１３の表示を制御する。表示制御部１５２は、受付部１５３により受け付けられた情報に基づいて、表示部１３の表示を制御する。表示制御部１５２は、受付部１５３による受付けに応じて、表示部１３の表示を制御する。表示制御部１５２は、表示部１３にコンテンツが表示されるように表示部１３の表示を制御する。
【００９９】
図１の例では、表示制御部１５２は、コンテンツＣ１が表示されるように表示部１３の表示を制御する。また、表示制御部１５２は、コンテンツＣ１の部分コンテンツＣ１１が表示されるように表示部１３の表示を制御する。また、表示制御部１５２は、コンテンツＣ１の部分コンテンツＣ１２が表示されるように表示部１３の表示を制御する。また、表示制御部１５２は、コンテンツＣ１の部分コンテンツＣ１２に含まれる表示領域Ｆ２１〜Ｆ２３のそれぞれに棒グラフＧ２１〜Ｇ２３に関する情報が表示されるように表示部１３の表示を制御する。
【０１００】
（受付部１５３）
受付部１５３は、各種情報を受け付ける。例えば、受付部１５３は、入力部１２を介してユーザによる入力を受け付ける。受付部１５３は、ユーザによる操作を受け付ける。受付部１５３は、表示部１３により表示された情報に対するユーザの操作を受け付ける。受付部１５３は、ユーザによる文字入力を受け付ける。受付部１５３は、ユーザによる複数の第１クエリの入力を受け付ける。受付部１５３は、コンテンツＣ１の部分コンテンツＣ１１に含まれる入力フィールドＦ１１への文字入力により、第１クエリの入力を受け付ける。受付部１５３は、ユーザにより入力フィールドＦ１１に入力された文字列を第１クエリとして受け付ける。また、受付部１５３は、区切り文字で区切られた各文字列を各第１クエリとして受け付ける。
【０１０１】
また、受付部１５３は、ユーザによる複数の第２クエリの入力を受け付ける。受付部１５３は、コンテンツＣ１の部分コンテンツＣ１１に含まれる入力フィールドＦ１２への文字入力により、第２クエリの入力を受け付ける。受付部１５３は、ユーザにより入力フィールドＦ１２に入力された文字列を第２クエリとして受け付ける。また、受付部１５３は、区切り文字で区切られた各文字列を各第２クエリとして受け付ける。
【０１０２】
また、受付部１５３は、ユーザによる送信ボタンＢ１１の選択操作を受け付ける。受付部１５３は、入力部１２によって受け付けられた送信ボタンＢ１１の選択操作を受け付ける。
【０１０３】
図１の例では、受付部１５３は、区切り文字で区切られた９つの文字列である９つの第１クエリＱ１-１〜Ｑ１-９の入力を受け付ける。受付部１５３は、コンテンツＣ１の部分コンテンツＣ１１に含まれる入力フィールドＦ１１への文字入力により、９つの第１クエリＱ１-１〜Ｑ１-９の入力を受け付ける。受付部１５３は、利用者Ｕ１１により入力フィールドＦ１１に入力された９つの文字列である９つの第１クエリ「車種Ｔ１１」〜文字列「車種Ｔ３３」の入力を受け付ける。
【０１０４】
また、受付部１５３は、区切り文字で区切られた３つの文字列である３つの第２クエリＱ２-１〜Ｑ２-３の入力を受け付ける。受付部１５３は、コンテンツＣ１の部分コンテンツＣ１１に含まれる入力フィールドＦ１２への文字入力により、３つの第２クエリＱ２-１〜Ｑ２-３の入力を受け付ける。受付部１５３は、利用者Ｕ１１により入力フィールドＦ１２に入力された３つの文字列である３つの第２クエリ「キャンプ」〜文字列「夜景」の入力を受け付ける。
【０１０５】
また、受付部１５３は、利用者Ｕ１１による送信ボタンＢ１１の選択操作を受け付ける。受付部１５３は、入力部１２によって受け付けられた送信ボタンＢ１１の選択操作を受け付ける。受付部１５３は、表示部１３を介して受け付けられた送信ボタンＢ１１の選択操作を受け付ける。
【０１０６】
（送信部１５４）
送信部１５４は、外部の情報処理装置へ各種情報を送信する。例えば、送信部１５４は、情報処理装置１００等の他の情報処理装置へ各種情報を送信する。送信部１５４は、記憶部１４に記憶された情報を送信する。また、送信部１５４は、情報処理装置１００等の他の情報処理装置からの情報に基づいて、各種情報を送信する。送信部１５４は、記憶部１４に記憶された情報に基づいて、各種情報を送信する。送信部１５４は、受付部１５３によって受け付けられた情報を送信する。
【０１０７】
送信部１５４は、受付部１５３によって受け付けられた複数の第１クエリと複数の第２クエリを情報処理装置１００に送信する。具体的には、送信部１５４は、受付部１５３によって送信ボタンＢ１１の選択操作が受け付けられると、受付部１５３によって受け付けられた複数の第１クエリと複数の第２クエリを情報処理装置１００に送信する。
【０１０８】
図１の例では、送信部１５４は、受付部１５３によって送信ボタンＢ１１の選択操作が受け付けられると、受付部１５３によって受け付けられた９つの第１クエリＱ１-１〜Ｑ１-９を情報処理装置１００に送信する。送信部１５４は、受付部１５３によって受け付けられた９つの文字列である９つの第１クエリＱ１-１〜Ｑ１-９を情報処理装置１００に送信する。
【０１０９】
また、送信部１５４は、受付部１５３によって送信ボタンＢ１１の選択操作が受け付けられると、受付部１５３によって受け付けられた３つの第２クエリＱ２-１〜Ｑ２-３を情報処理装置１００に送信する。送信部１５４は、受付部１５３によって受け付けられた３つの文字列である３つの第２クエリＱ２-１〜Ｑ２-３を情報処理装置１００に送信する。
【０１１０】
〔４．情報処理のフロー〕
次に、図９を用いて、実施形態に係る情報処理の手順について説明する。図９は、実施形態に係る情報処理手順を示すフローチャートである。図９に示す例では、情報処理装置１００は、類似性の判定対象を示す複数の第１クエリと、類似性の判定基準を示す複数の第２クエリとを端末装置１０から受け付けたか否かを判定する（ステップＳ１０１）。情報処理装置１００は、複数の第１クエリと複数の第２クエリとを受け付けなかった場合（ステップＳ１０１；Ｎｏ）、複数の第１クエリと複数の第２クエリとを受け付けるまで待機する。
【０１１１】
続いて、情報処理装置１００は、複数の第１クエリと複数の第２クエリとを受け付けた場合（ステップＳ１０１；Ｙｅｓ）、第２クエリごとに、各第１クエリが示す判定対象と第２クエリが示す判定基準との類似性を示す類似情報を生成する（ステップＳ１０２）。
【０１１２】
続いて、情報処理装置１００は、類似情報を生成すると、生成した類似情報を端末装置１０に出力する（ステップＳ１０３）。
【０１１３】
〔５．変形例〕
上述した実施形態に係る情報処理システム１は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、情報処理システム１の他の実施形態について説明する。なお、実施形態と同一部分には、同一符号を付して説明を省略する。
【０１１４】
〔５−１．取引対象の属性に応じて色分けされたグラフ〕
情報処理装置１００は、類似情報として、取引対象の属性に応じて異なる色によって、スコアの大きさを示す領域が色分けされたグラフに関する情報を生成してもよい。具体的には、生成部１３３は、類似情報として、取引対象の属性に応じて異なる色によって、スコアの大きさを示す領域が色分けされたグラフに関する情報を生成する。より具体的には、生成部１３３は、受付部１３１によって受け付けられた複数の第１クエリが示す取引対象が複数の異なる属性に分類される場合には、それぞれの属性に応じて異なる色によって、スコアの大きさを示す領域が色分けされたグラフに関する情報を生成する。例えば、生成部１３３は、受付部１３１によって受け付けられた複数の第１クエリが示す取引対象の属性が「食品」と「衣料品」と「医薬品」の３つの異なる属性に分類される場合には、「食品」に対応する第１クエリに関するスコアの大きさを示す領域の色を赤色で塗りつぶした棒グラフに関する情報を生成する。また、生成部１３３は、「衣料品」に対応する第１クエリに関するスコアの大きさを示す領域の色を青色で塗りつぶした棒グラフに関する情報を生成する。また、生成部１３３は、「医薬品」に対応する第１クエリに関するスコアの大きさを示す領域の色を黄色で塗りつぶした棒グラフに関する情報を生成する。
【０１１５】
〔６．第１モデルの生成処理〕
次に、図１０を用いて、第１モデルの生成処理の流れについて説明する。図１０は、実施形態に係る第１モデルの生成処理の一例を示す図である。図１０に示す例では、生成装置５０は、同一の利用者Ｕ１によって所定の時間内に連続して入力された「六本木  パスタ」という検索クエリＱ１１と「六本木  イタリアン」という検索クエリＱ１２とから成る一対の検索クエリを抽出する（ステップＳ１１）。
【０１１６】
続いて、生成装置５０は、抽出した検索クエリＱ１１を第１モデルＭ１に入力して、検索クエリＱ１１の分散表現であるベクトルＢＱＶ１１を出力する。ここで、ベクトルＢＱＶ１１は、第１モデルＭ１の出力層から出力されたばかりの検索クエリＱ１１の分散表現であって、第１モデルＭ１にフィードバックをかける前（学習前）の分散表現を示す。また、生成装置５０は、抽出した検索クエリＱ１２を第１モデルＭ１に入力して、検索クエリＱ１２の分散表現であるベクトルＢＱＶ１２を出力する。ここで、ベクトルＢＱＶ１２は、第１モデルＭ１の出力層から出力されたばかりの検索クエリＱ１２の分散表現であって、第１モデルＭ１にフィードバックをかける前（学習前）の分散表現を示す。このようにして、生成装置５０は、検索クエリＱ１１の分散表現であるベクトルＢＱＶ１１と、検索クエリＱ１２の分散表現であるベクトルＢＱＶ１２とを出力する（ステップＳ１２）。
【０１１７】
続いて、生成装置５０は、同一の利用者Ｕ１によって所定の時間内に連続して入力された検索クエリＱ１１（「六本木  パスタ」）と検索クエリＱ１２（「六本木  イタリアン」）とから成る一対の検索クエリは、所定の検索意図（例えば、「ある場所で飲食店を探す」という検索意図）で入力された検索クエリであると推定されるため、相互に類似する特徴を有するものとして、検索クエリＱ１１の分散表現（ベクトルＱＶ１１）と、検索クエリＱ１１と対となる検索クエリＱ１２の分散表現（ベクトルＱＶ１２）とが、分散表現空間上で類似するように第１モデルＭ１を学習させる。例えば、第１モデルＭ１にフィードバックをかける前（学習前）の検索クエリＱ１１の分散表現であるベクトルＢＱＶ１１と検索クエリＱ１２の分散表現であるベクトルＢＱＶ１２とのなす角度の大きさをΘとする。また、第１モデルＭ１にフィードバックをかけた後（学習後）の検索クエリＱ１１の分散表現であるベクトルＱＶ１１と検索クエリＱ１２の分散表現であるベクトルＱＶ１２とのなす角度の大きさをΦとする。この時、生成装置５０は、ΘよりもΦが小さくなるように、第１モデルＭ１を学習させる。例えば、生成装置５０は、ベクトルＢＱＶ１１とベクトルＢＱＶ１２のコサイン類似度の値を算出する。また、生成装置５０は、ベクトルＱＶ１１とベクトルＱＶ１２のコサイン類似度の値を算出する。続いて、生成装置５０は、ベクトルＢＱＶ１１とベクトルＢＱＶ１２のコサイン類似度の値よりも、ベクトルＱＶ１１とベクトルＱＶ１２のコサイン類似度の値が大きくなるように（値が１に近づくように）第１モデルＭ１を学習させる。このように、生成装置５０は、一対の検索クエリに対応する一対の分散表現である２つのベクトルが分散表現空間上で類似するように第１モデルＭ１を学習させることで、検索クエリから分散表現を出力する第１モデルＭ１を生成する（ステップＳ１３）。なお、生成装置５０は、コサイン類似度に限らず、ベクトル間の距離尺度として適用可能な指標であれば、どのような指標に基づいて分散表現の間の類似度を算出してもよい。また、生成装置５０は、ベクトル間の距離尺度として適用可能な指標であれば、どのような指標に基づいて第１モデルＭ１を学習させてもよい。例えば、生成装置５０は、分散表現同士のユークリッド距離や双曲空間等の非ユークリッド空間中での距離、マンハッタン距離、マハラノビス距離等といった所定の距離関数の値を算出する。続いて、生成装置５０は、分散表現同士の所定の距離関数の値（すなわち、分散表現空間における距離）が小さくなるように第１モデルＭ１を学習させてもよい。
【０１１８】
次に、図１１を用いて、第１モデルの生成処理の流れについてより詳しく説明する。なお、図１１の説明では、図９の説明と重複する部分は、適宜省略する。図１１は、実施形態に係る第１モデルの生成処理を示す図である。図１１に示す例では、生成装置５０が生成した第１モデルＭ１によって出力された分散表現が分散表現空間にマッピングされる様子が示されている。生成装置５０は、所定の検索クエリの分散表現と所定の検索クエリと対となる他の検索クエリの分散表現とが分散表現空間上で近くにマッピングされるように第１モデルＭ１のトレーニングを行う。
【０１１９】
図１１の上段に示す例では、生成装置５０は、同一の利用者Ｕ１によって所定の時間内に連続して入力された４個の検索クエリである検索クエリＱ１１（「六本木  パスタ」）、検索クエリＱ１２（「六本木  イタリアン」）、検索クエリＱ１３（「赤坂  パスタ」）、検索クエリＱ１４（「麻布  パスタ」）を抽出する。生成装置５０は、同一の利用者Ｕ１によって各検索クエリが入力された時間の間隔が所定の時間内である４個の検索クエリを抽出する。生成装置５０は、同一の利用者Ｕ１によって後述する各検索クエリのペアが入力された時間の間隔が所定の時間内である複数の検索クエリを抽出する。生成装置５０は、検索クエリが入力された順番に並べると、検索クエリＱ１１、検索クエリＱ１２、検索クエリＱ１３、検索クエリＱ１４の順番で入力された４個の検索クエリを抽出する。生成装置５０は、４個の検索クエリを抽出すると、時系列的に隣り合う２つの検索クエリを一対の検索クエリとして、３対の検索クエリのペアである（検索クエリＱ１１、検索クエリＱ１２）、（検索クエリＱ１２、検索クエリＱ１３）、（検索クエリＱ１３、検索クエリＱ１４）を抽出する（ステップＳ２１−１）。なお、生成装置５０は、同一の利用者Ｕ１によって全ての検索クエリが所定の時間内に入力された複数の検索クエリを抽出してもよい。そして、生成装置５０は、時系列的に隣り合うか否かに関わらず、抽出した複数の検索クエリの中から２つの検索クエリを選択して、選択した２つの検索クエリを一対の検索クエリとして抽出してもよい。
【０１２０】
続いて、生成装置５０は、抽出した検索クエリＱ１ｋ（ｋ＝１、２、３、４）を第１モデルＭ１に入力して、検索クエリＱ１ｋ（ｋ＝１、２、３、４）の分散表現であるベクトルＢＱＶ１ｋ（ｋ＝１、２、３、４）を出力する。ここで、ベクトルＢＱＶ１ｋ（ｋ＝１、２、３、４）は、第１モデルＭ１の出力層から出力されたばかりの検索クエリＱ１ｋ（ｋ＝１、２、３、４）の分散表現であって、第１モデルＭ１にフィードバックをかける前（学習前）の分散表現を示す（ステップＳ２２−１）。
【０１２１】
続いて、生成装置５０は、同一の利用者Ｕ１によって所定の時間内に連続して入力された一対の検索クエリは、所定の検索意図（例えば、「ある場所（東京都港区付近）で飲食店を探す」という検索意図）で入力された検索クエリであると推定されるため、相互に類似する特徴を有するものとして、検索クエリＱ１１の分散表現（ベクトルＱＶ１１）と、検索クエリＱ１１と対となる検索クエリＱ１２の分散表現（ベクトルＱＶ１２）とが、分散表現空間上で類似するように第１モデルＭ１を学習させる。また、生成装置５０は、検索クエリＱ１２の分散表現（ベクトルＱＶ１２）と、検索クエリＱ１２と対となる検索クエリＱ１３の分散表現（ベクトルＱＶ１３）とが、分散表現空間上で類似するように第１モデルＭ１を学習させる。また、生成装置５０は、検索クエリＱ１３の分散表現（ベクトルＱＶ１３）と、検索クエリＱ１３と対となる検索クエリＱ１４の分散表現（ベクトルＱＶ１４）とが、分散表現空間上で類似するように第１モデルＭ１を学習させる。このように、生成装置５０は、一対の検索クエリに対応する一対の分散表現である２つのベクトルが分散表現空間上で類似するように第１モデルＭ１を学習させることで、検索クエリから分散表現を出力する第１モデルＭ１を生成する（ステップＳ２３−１）。
【０１２２】
図１１の上段に示す情報処理の結果として、検索クエリＱ１ｋ（ｋ＝１、２、３、４）の分散表現であるベクトルＱＶ１ｋ（ｋ＝１、２、３、４）が分散表現空間の近い位置にクラスタＣＬ１１としてマッピングされる様子が示されている。例えば、検索クエリＱ１ｋ（ｋ＝１、２、３、４）は、利用者Ｕ１によって「ある場所（東京都港区付近）で飲食店を探す」という検索意図の下で検索された検索クエリの集合であると推定される。すなわち、検索クエリＱ１ｋ（ｋ＝１、２、３、４）は、「ある場所（東京都港区付近）で飲食店を探す」という検索意図の下で検索された検索クエリであるという点で、相互に類似する特徴を有する検索クエリであると推定される。ここで、生成装置５０は、「ある場所（東京都港区付近）で飲食店を探す」という検索意図で入力された所定の検索クエリが第１モデルに入力されると、クラスタＣＬ１１の位置にマッピングされるような分散表現を出力することができる。これにより、例えば、生成装置５０は、クラスタＣＬ１１の位置にマッピングされる分散表現に対応する検索クエリを抽出することにより、「ある場所（東京都港区付近）で飲食店を探す」という検索意図に応じた検索クエリを抽出することができる。したがって、生成装置５０は、検索クエリの意味を適切に解釈可能とすることができる。
【０１２３】
図１１の下段に示す例では、生成装置５０は、同一の利用者Ｕ２によって所定の時間内に連続して入力された３個の検索クエリである検索クエリＱ２１（「冷蔵庫  ４００Ｌ」）、検索クエリＱ２２（「冷蔵庫  中型」）、検索クエリＱ２３（「冷蔵庫  中型  おすすめ」）を抽出する。生成装置５０は、検索クエリが入力された順番に並べると、検索クエリＱ２１、検索クエリＱ２２、検索クエリＱ２３の順番で入力された３個の検索クエリを抽出する。生成装置５０は、３個の検索クエリを抽出すると、時系列的に隣り合う２つの検索クエリを一対の検索クエリとして、２対の検索クエリのペアである（検索クエリＱ２１、検索クエリＱ２２）、（検索クエリＱ２２、検索クエリＱ２３）を抽出する（ステップＳ２１−２）。
【０１２４】
続いて、生成装置５０は、抽出した検索クエリＱ２ｍ（ｍ＝１、２、３）を第１モデルＭ１に入力して、検索クエリＱ２ｍ（ｍ＝１、２、３）の分散表現であるベクトルＢＱＶ２ｍ（ｍ＝１、２、３）を出力する。ここで、ベクトルＢＱＶ２ｍ（ｍ＝１、２、３）は、第１モデルＭ１の出力層から出力されたばかりの検索クエリＱ２ｍ（ｍ＝１、２、３）の分散表現であって、第１モデルＭ１にフィードバックをかける前（学習前）の分散表現を示す（ステップＳ２２−２）。
【０１２５】
続いて、生成装置５０は、同一の利用者Ｕ２によって所定の時間内に連続して入力された一対の検索クエリは、所定の検索意図（例えば、「中型の冷蔵庫を調べる」という検索意図）で入力された検索クエリであると推定されるため、相互に類似する特徴を有するものとして、検索クエリＱ２１の分散表現（ベクトルＱＶ２１）と、検索クエリＱ２１と対となる検索クエリＱ２２の分散表現（ベクトルＱＶ２２）とが、分散表現空間上で類似するように第１モデルＭ１を学習させる。また、生成装置５０は、検索クエリＱ２２の分散表現（ベクトルＱＶ２２）と、検索クエリＱ２２と対となる検索クエリＱ２３の分散表現（ベクトルＱＶ２３）とが、分散表現空間上で類似するように第１モデルＭ１を学習させる。このように、生成装置５０は、一対の検索クエリに対応する一対の分散表現である２つのベクトルが分散表現空間上で類似するように第１モデルＭ１を学習させることで、検索クエリから分散表現を出力する第１モデルＭ１を生成する（ステップＳ２３−２）。
【０１２６】
図１１の下段に示す情報処理の結果として、検索クエリＱ２ｍ（ｍ＝１、２、３）の分散表現であるベクトルＱＶ２ｍ（ｍ＝１、２、３）が分散表現空間の近い位置にクラスタＣＬ２１としてマッピングされる様子が示されている。例えば、検索クエリＱ２ｍ（ｍ＝１、２、３）は、利用者Ｕ２によって「中型の冷蔵庫を調べる」という検索意図の下で検索された検索クエリの集合であると推定される。すなわち、Ｑ２ｍ（ｍ＝１、２、３）は、「中型の冷蔵庫を調べる」という検索意図の下で検索された検索クエリであるという点で、相互に類似する特徴を有する検索クエリであると推定される。ここで、生成装置５０は、「中型の冷蔵庫を調べる」という検索意図で入力された所定の検索クエリが第１モデルに入力されると、クラスタＣＬ２１の位置にマッピングされるような分散表現を出力することができる。これにより、例えば、生成装置５０は、クラスタＣＬ２１の位置にマッピングされる分散表現に対応する検索クエリを抽出することにより、「中型の冷蔵庫を調べる」という検索意図に応じた検索クエリを抽出することができる。したがって、生成装置５０は、検索クエリの意味を適切に解釈可能とすることができる。
【０１２７】
また、本願発明に係る生成装置５０は、ランダムに抽出された複数の検索クエリは、異なる検索意図の下で検索された検索クエリであるという点で、相互に相違する特徴を有する検索クエリであるとみなして第１モデルＭ１を学習させる。具体的には、生成装置５０は、所定の検索クエリの分散表現と、所定の検索クエリとは無関係にランダムに抽出された検索クエリの分散表現とが分散表現空間上で遠くにマッピングされるように第１モデルＭ１のトレーニングを行う。図１１に示す例では、生成装置５０は、検索クエリＱ１１とは無関係にランダムに検索クエリを抽出したところ、検索クエリＱ２１が抽出されたとする。この場合、生成装置５０は、検索クエリＱ１１の分散表現（ベクトルＱＶ１１）と、検索クエリＱ１１とは無関係にランダムに抽出された検索クエリＱ２１の分散表現（ベクトルＱＶ２１）とが分散表現空間上で遠くにマッピングされるように第１モデルＭ１のトレーニングを行う。その結果として、「ある場所（東京都港区付近）で飲食店を探す」という検索意図の下で検索された検索クエリＱ１ｋ（ｋ＝１、２、３、４）の分散表現であるベクトルＱＶ１ｋ（ｋ＝１、２、３、４）を含むクラスタＣＬ１１と、「中型の冷蔵庫を調べる」という検索意図の下で検索された検索クエリＱ２ｍ（ｍ＝１、２、３）の分散表現であるベクトルＱＶ２ｍ（ｍ＝１、２、３）を含むクラスタＣＬ２１とは、分散表現空間上で遠くにマッピングされる。すなわち、本願発明に係る生成装置５０は、ランダムに抽出された複数の検索クエリの分散表現が相違するように第１モデルＭ１を学習させることにより、検索意図が異なる検索クエリの分散表現を分散表現空間上で遠い位置に出力可能とする。
【０１２８】
なお、生成装置５０が生成した第１モデルＭ１によって出力された分散表現が分散表現空間にマッピングされた結果として、上述したクラスタＣＬ１１とクラスタＣＬ２１の他にも、同一のユーザによって所定の時間内に入力された複数の検索クエリの分散表現の集合であるクラスタＣＬ１２やクラスタＣＬ２２が生成される。
【０１２９】
上述したように、生成装置５０は、ユーザによって入力された検索クエリを取得する。また、生成装置５０は、取得した検索クエリのうち、同一のユーザによって所定の時間内に入力された複数の検索クエリが類似する特徴を有するものとして学習することで、所定の検索クエリから所定の検索クエリの特徴情報を予測する第１モデルを生成する。すなわち、本願発明に係る生成装置５０は、所定の時間内に連続して入力された複数の検索クエリは、所定の検索意図の下で検索された検索クエリであるという点で、相互に類似する特徴を有する検索クエリであるとみなして第１モデルを学習させる。具体的には、生成装置５０は、同一のユーザによって所定の時間内に入力された複数の検索クエリの分散表現が類似するように第１モデルを学習させることで、所定の検索クエリから所定の検索クエリの特徴情報を含む分散表現を出力する第１モデルを生成する。すなわち、本願発明に係る生成装置５０は、所定の時間内に連続して入力された複数の検索クエリの分散表現が類似するように第１モデルＭ１を学習させることにより、所定の検索意図の下で検索された検索クエリの分散表現を分散表現空間上で近い位置に出力可能とする。これにより、生成装置５０は、検索クエリを入力したユーザのコンテクストに応じて検索クエリの意味（検索意図）を出力（解釈）することを可能にする。したがって、生成装置５０は、検索クエリの意味を適切に解釈可能とすることができる。
【０１３０】
また、生成装置５０は、所定の検索クエリの特徴情報を含む分散表現の近傍にマッピングされる分散表現に対応する検索クエリを抽出することにより、所定の検索クエリが検索された検索意図に応じた検索クエリを抽出することができる。すなわち、生成装置５０は、検索クエリを入力したユーザの検索意図やコンテクストを考慮して、ユーザの検索動向を分析することを可能にする。したがって、生成装置５０は、ユーザの検索動向の分析精度を高めることができる。また、生成装置５０が生成した第１モデルＭ１を検索システムの一部として機能させることもできる。あるいは、生成装置５０は、第１モデルＭ１によって予測された検索クエリの特徴情報を利用する他のシステム（例えば、検索エンジン）への入力情報として、第１モデルＭ１が出力した検索クエリの分散表現を提供することもできる。これにより、検索システムは、第１モデルＭ１によって予測された検索クエリの特徴情報に基づいて、検索結果として出力されるコンテンツを選択可能になる。すなわち、検索システムは、検索クエリを入力したユーザの検索意図やコンテクストを考慮して、検索結果として出力されるコンテンツを選択可能になる。さらに、検索システムは、第１モデルＭ１によって予測された検索クエリの特徴情報に基づいて、検索結果として出力されるコンテンツに含まれる文字情報の分散表現と検索クエリの分散表現との類似度を算出可能になる。そして、検索システムは、算出した類似度に基づいて、検索結果として出力されるコンテンツの表示順を決定可能になる。すなわち、検索システムは、検索クエリを入力したユーザの検索意図やコンテクストを考慮して、検索結果として出力されるコンテンツの表示順を決定可能になる。したがって、生成装置５０は、検索サービスにおけるユーザビリティを向上させることができる。
【０１３１】
〔７．生成装置の構成〕
次に、図１２を用いて、実施形態に係る生成装置５０の構成について説明する。図１２は、実施形態に係る生成装置５０の構成例を示す図である。図１２に示すように、生成装置５０は、通信部５１と、記憶部５３と、制御部５２とを有する。なお、生成装置５０は、生成装置５０の管理者等から各種操作を受け付ける入力部（例えば、キーボードやマウス等）や、各種情報を表示するための表示部（例えば、液晶ディスプレイ等）を有してもよい。
【０１３２】
（通信部５１）
通信部５１は、例えば、ＮＩＣ（Network  Interface  Card）等によって実現される。そして、通信部５１は、ネットワークと有線または無線で接続され、例えば、端末装置１０と、検索サーバ２０との間で情報の送受信を行う。
【０１３３】
（記憶部５３）
記憶部５３は、例えば、ＲＡＭ（Random  Access  Memory)、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部５３は、図１２に示すように、クエリ情報記憶部５３１と、ベクトル情報記憶部５３２と、モデル情報記憶部５３３とを有する。
【０１３４】
（クエリ情報記憶部５３１）
クエリ情報記憶部５３１は、ユーザによって入力された検索クエリに関する各種の情報を記憶する。図１３に、実施形態に係るクエリ情報記憶部の一例を示す。図１３に示す例では、クエリ情報記憶部５３１は、「ユーザＩＤ」、「日時」、「検索クエリ」、「検索クエリＩＤ」といった項目を有する。
【０１３５】
「ユーザＩＤ」は、検索クエリを入力したユーザを識別するための識別情報を示す。「日時」は、検索サーバがユーザから検索クエリを受け付けた日時を示す。「検索クエリ」は、ユーザによって入力された検索クエリを示す。「検索クエリＩＤ」は、ユーザによって入力された検索クエリを識別するための識別情報を示す。
【０１３６】
図１３の１レコード目に示す例では、検索クエリＩＤ「Ｑ１１」で識別される検索クエリ（検索クエリＱ１１）は、図１０に示した検索クエリＱ１１に対応する。また、ユーザＩＤ「Ｕ１」は、検索クエリＱ１１を入力したユーザがユーザＩＤ「Ｕ１」で識別されるユーザ（利用者Ｕ１）であることを示す。また、日時「２０１８／９／１  ＰＭ１７：００」は、検索サーバが利用者Ｕ１から検索クエリＱ１１を受け付けた日時が２０１８年９月１日の午後１７：００であることを示す。また、検索クエリ「六本木  パスタ」は、利用者Ｕ１によって入力された検索クエリＱ１１を示す。具体的には、検索クエリ「六本木  パスタ」は、地名を示す「六本木」と食品の種類を示す「パスタ」の文字とが区切り文字であるスペースで区切られた文字情報であることを示す。
【０１３７】
（ベクトル情報記憶部５３２）
ベクトル情報記憶部５３２は、検索クエリの分散表現であるベクトルに関する各種の情報を記憶する。図１４に、実施形態に係るベクトル情報記憶部の一例を示す。図１４に示す例では、ベクトル情報記憶部５３２は、「ベクトルＩＤ」、「検索クエリＩＤ」、「ベクトル情報」といった項目を有する。
【０１３８】
「ベクトルＩＤ」は、検索クエリの分散表現であるベクトルを識別するための識別情報を示す。「検索クエリＩＤ」は、ベクトルに対応する検索クエリを識別するための識別情報を示す。「ベクトル情報」は、検索クエリの分散表現であるＮ次元のベクトルを示す。検索クエリの分散表現であるベクトルは、例えば、１２８次元のベクトルである。
【０１３９】
図１４の１レコード目に示す例では、ベクトルＩＤ「ＱＶ１１」で識別されるベクトル（ベクトルＱＶ１１）は、図１０に示した検索クエリＱ１１の分散表現であるベクトルＱＶ１１に対応する。また、検索クエリＩＤ「Ｑ１１」で識別される検索クエリ（検索クエリＱ１１）は、ベクトルＱＶ１１に対応する検索クエリが検索クエリＱ１１であることを示す。また、ベクトル情報「ＱＶＤＴ１１」は、検索クエリＱ１１の分散表現であるＮ次元のベクトルを示す。
【０１４０】
（モデル情報記憶部５３３）
モデル情報記憶部５３３は、生成装置５０によって生成された学習モデルに関する各種の情報を記憶する。図１５に、実施形態に係るモデル情報記憶部の一例を示す。図１５に示す例では、モデル情報記憶部５３３は、「モデルＩＤ」、「モデルデータ」といった項目を有する。
【０１４１】
「モデルＩＤ」は、生成装置５０によって生成された学習モデルを識別するための識別情報を示す。「モデルデータ」は、生成装置５０によって生成された学習モデルのモデルデータを示す。例えば、「モデルデータ」には、検索クエリを分散表現に変換するためのデータが格納される。
【０１４２】
図１５の１レコード目に示す例では、モデルＩＤ「Ｍ１」で識別される学習モデルは、図１に示した第１モデルＭ１に対応する。また、モデルデータ「ＭＤＴ１」は、生成装置５０によって生成された第１モデルＭ１のモデルデータ（モデルデータＭＤＴ１）を示す。
【０１４３】
モデルデータＭＤＴ１は、検索クエリが入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第１要素と、第１要素と第１要素の重みとに基づいて値が算出される第２要素と、を含み、入力層に入力された検索クエリに応じて、入力層に入力された検索クエリの分散表現を出力層から出力するよう、生成装置５０を機能させてもよい。
【０１４４】
ここで、モデルデータＭＤＴ１が「y=a1*x1+a2*x2+・・・+ai*xi」で示す回帰モデルで実現されるとする。この場合、モデルデータＭＤＴ１が含む第１要素は、x1やx2等といった入力データ（xi）に対応する。また、第１要素の重みは、xiに対応する係数aiに対応する。ここで、回帰モデルは、入力層と出力層とを有する単純パーセプトロンと見做すことができる。各モデルを単純パーセプトロンと見做した場合、第１要素は、入力層が有するいずれかのノードに対応し、第２要素は、出力層が有するノードと見做すことができる。
【０１４５】
また、モデルデータＭＤＴ１がＤＮＮ（Deep  Neural  Network）等、１つまたは複数の中間層を有するニューラルネットワークで実現されるとする。この場合、モデルデータＭＤＴ１が含む第１要素は、入力層または中間層が有するいずれかのノードに対応する。また、第２要素は、第１要素と対応するノードから値が伝達されるノードである次段のノードに対応する。また、第１要素の重みは、第１要素と対応するノードから第２要素と対応するノードに伝達される値に対して考慮される重みである接続係数に対応する。
【０１４６】
生成装置５０は、上述した回帰モデルやニューラルネットワーク等、任意の構造を有するモデルを用いて、分散表現の算出を行う。具体的には、モデルデータＭＤＴ１は、検索クエリが入力された場合に、分散表現を出力するように係数が設定される。生成装置５０は、このようなモデルデータＭＤＴ１を用いて、分散表現を算出する。
【０１４７】
なお、上記例では、モデルデータＭＤＴ１が、検索クエリが入力された場合に、検索クエリの分散表現を出力するモデル（以下、モデルＸ１という。）である例を示した。しかし、実施形態に係るモデルデータＭＤＴ１は、モデルＸ１にデータの入出力を繰り返すことで得られる結果に基づいて生成されるモデルであってもよい。例えば、モデルデータＭＤＴ１は、検索クエリを入力とした際に、モデルＸ１が出力した分散表現を入力して学習されたモデル（以下、モデルＹ１という。）であってもよい。または、モデルデータＭＤＴ１は、検索クエリを入力とし、モデルＹ１の出力値を出力とするよう学習されたモデルであってもよい。
【０１４８】
また、生成装置５０がＧＡＮ（Generative  Adversarial  Networks）を用いた推定処理を行う場合、モデルデータＭＤＴ１は、ＧＡＮの一部を構成するモデルであってもよい。
【０１４９】
（制御部５２）
図１２の説明に戻って、制御部５２は、コントローラ（controller）であり、例えば、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等によって、生成装置５０内部の記憶装置に記憶されている各種プログラム（生成プログラムの一例に相当）がＲＡＭを作業領域として実行されることにより実現される。また、制御部５２は、コントローラであり、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路により実現される。
【０１５０】
また、制御部５２は、モデル情報記憶部５３３に記憶されている第１モデルＭ１（モデルデータＭＤＴ１）に従った情報処理により、入力層に入力された検索クエリに対し、出力層以外の各層に属する各要素を第１要素として、第１要素と第１要素の重みとに基づく演算を行うことにより、分散表現を出力層から出力するよう、コンピュータを機能させる。
【０１５１】
また、制御部５２は、モデル情報記憶部５３３に記憶されている第２モデルＭ２（モデルデータＭＤＴ２）に従った情報処理により、入力層に入力された検索クエリに対し、出力層以外の各層に属する各要素を第１要素として、第１要素と第１要素の重みとに基づく演算を行うことにより、検索クエリが各カテゴリに属する確率を出力層から出力するよう、コンピュータを機能させる。
【０１５２】
図１２に示すように、制御部５２は、取得部５２１と、抽出部５２２と、生成部５２３を有し、以下に説明する情報処理の作用を実現または実行する。なお、制御部５２の内部構成は、図１２に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
【０１５３】
（取得部５２１）
取得部５２１は、種々の情報を取得する。具体的には、取得部５２１は、ユーザによって入力された検索クエリを検索サーバ２０から取得する。取得部５２１は、ユーザによって入力された検索クエリを取得すると、取得した検索クエリをクエリ情報記憶部５３１に格納する。
【０１５４】
また、取得部５２１は、検索クエリの分散表現であるベクトルに関するベクトル情報を取得する。取得部５２１は、ベクトル情報を取得すると、取得したベクトル情報をベクトル情報記憶部５３２に格納する。
【０１５５】
また、取得部５２１は、第１モデルに関する情報を取得する。具体的には、取得部５２１は、取得部５２１は、生成部５２３によって生成された第１モデルに関する情報を取得する。取得部５２１は、第１モデルに関する情報を取得すると、取得した第１モデルに関する情報をモデル情報記憶部５３３に格納する。
【０１５６】
（抽出部５２２）
抽出部５２２は、種々の情報を抽出する。具体的には、抽出部５２２は、取得部５２１によって取得された検索クエリのうち、同一のユーザによって所定の時間内に入力された複数の検索クエリを抽出する。例えば、抽出部５２２は、同一のユーザによって各検索クエリが入力された時間の間隔が所定の時間内である複数の検索クエリを抽出する。続いて、抽出部５２２は、同一のユーザによって所定の時間内に入力された複数の検索クエリのうち、同一のユーザによって所定の時間内に連続して入力された一対の検索クエリを抽出する。例えば、抽出部５２２は、同一のユーザによって各検索クエリのペアが入力された時間の間隔が所定の時間内である複数の検索クエリを抽出する。例えば、抽出部５２２は、取得部５２１によって取得された検索クエリのうち、同一の利用者Ｕ１によって所定の時間内に連続して入力された４個の検索クエリである検索クエリＱ１１（「六本木  パスタ」）、検索クエリＱ１２（「六本木  イタリアン」）、検索クエリＱ１３（「赤坂  パスタ」）、検索クエリＱ１４（「麻布  パスタ」）を抽出する。抽出部５２２は、検索クエリが入力された順番に並べると、検索クエリＱ１１、検索クエリＱ１２、検索クエリＱ１３、検索クエリＱ１４の順番で入力された４個の検索クエリを抽出する。続いて、抽出部５２２は、４個の検索クエリを抽出すると、時系列的に隣り合う２つの検索クエリを一対の検索クエリとして、３対の検索クエリのペアである（検索クエリＱ１１、検索クエリＱ１２）、（検索クエリＱ１２、検索クエリＱ１３）、（検索クエリＱ１３、検索クエリＱ１４）を抽出する。なお、抽出部５２２は、同一のユーザによって全ての検索クエリが所定の時間内に入力された複数の検索クエリを抽出してもよい。そして、抽出部５２２は、時系列的に隣り合うか否かに関わらず、抽出した複数の検索クエリの中から２つの検索クエリを選択して、選択した２つの検索クエリを一対の検索クエリとして抽出してもよい。
【０１５７】
また、抽出部５２２は、取得部５２１によって取得された検索クエリのうち、所定の検索クエリと所定の検索クエリに無関係な他の検索クエリとを抽出する。例えば、抽出部５２２は、取得部５２１によって取得された検索クエリの中から、所定の検索クエリを抽出する。続いて、抽出部５２２は、取得部５２１によって取得された検索クエリの中から、所定の検索クエリとは無関係にランダムに他の検索クエリを抽出する。
【０１５８】
（生成部５２３）
生成部５２３は、種々の情報を生成する。具体的には、生成部５２３は、取得部５２１によって取得された検索クエリのうち、同一のユーザによって所定の時間内に入力された複数の検索クエリが類似する特徴を有するものとして学習することで、所定の検索クエリから所定の検索クエリの特徴情報を予測する学習モデルを生成する。具体的には、生成部５２３は、同一のユーザによって所定の時間内に入力された複数の検索クエリの分散表現が類似するように学習モデルを学習させることで、所定の検索クエリから所定の検索クエリの特徴情報を予測する学習モデルを生成する。例えば、生成部５２３は、所定の時間内に続けて入力された一対の検索クエリの分散表現が類似するように学習することで、学習モデルを生成する。例えば、生成部５２３は、一対の検索クエリの学習前の分散表現の類似度の値を算出する。また、生成部５２３は、一対の検索クエリの学習後の分散表現の類似度の値を算出する。続いて、生成部５２３は、学習前の分散表現の類似度の値よりも、学習後の分散表現の類似度の値が大きくなるように学習モデルを学習させる。このように、生成部５２３は、一対の検索クエリに対応する一対の分散表現である２つのベクトルが分散表現空間上で類似するように学習モデルを学習させることで、検索クエリから分散表現を出力する学習モデルを生成する。より具体的には、生成部５２３は、ＲＮＮの一種であるＬＳＴＭを分散表現生成に用いたＤＳＳＭの技術を用いて、検索クエリから分散表現を出力する学習モデルを生成する。例えば、生成部５２３は、学習モデルの正解データとして、同一のユーザによって所定の時間内に入力された一対の検索クエリが類似する特徴を有するものとして、所定の検索クエリの分散表現と、所定の検索クエリと対となる他の検索クエリの分散表現とが、分散表現空間上で近くに存在するように学習する。また、生成部５２３は、第１モデルを生成すると、第１モデルを識別する識別情報と対応付けて、生成した第１モデル（モデルデータＭＤＴ１）をモデル情報記憶部５３３に格納する。
【０１５９】
〔８．第１モデルの一例〕
次に、図１６を用いて生成装置５０が生成する第１モデルの一例について説明する。図１６は、実施形態に係る第１モデルの一例を示す図である。図１６に示す例では、生成装置５０が生成する第１モデルＭ１は、３層のＬＳＴＭ  ＲＮＮで構成されている。図１６に示す例では、抽出部５２２は、同一の利用者Ｕ１によって所定の時間内に連続して入力された「六本木  パスタ」という検索クエリＱ１１と「六本木  イタリアン」という検索クエリＱ１２とから成る一対の検索クエリを抽出する。生成部５２３は、抽出部５２２によって抽出されたた検索クエリＱ１１を第１モデルＭ１の入力層に入力する（ステップＳ４１）。
【０１６０】
続いて、生成部５２３は、第１モデルＭ１の出力層から検索クエリＱ１１の分散表現である２５６次元のベクトルＢＱＶ１１を出力する。また、生成部５２３は、抽出部５２２によって抽出された検索クエリＱ１２を第１モデルＭ１の入力層に入力する。続いて、生成部５２３は、第１モデルＭ１の出力層から検索クエリＱ１２の分散表現である２５６次元のベクトルＢＱＶ１２を出力する（ステップＳ４２）。
【０１６１】
続いて、生成部５２３は、連続して入力された２つの検索クエリの分散表現が類似するように学習することで、検索クエリから分散表現を出力する第１モデルＭ１を生成する（ステップＳ４３）。例えば、第１モデルＭ１にフィードバックをかける前（学習前）の検索クエリＱ１１の分散表現であるベクトルＢＱＶ１１と検索クエリＱ１２の分散表現であるベクトルＢＱＶ１２とのなす角度の大きさをΘとする。また、第１モデルＭ１にフィードバックをかけた後（学習後）の検索クエリＱ１１の分散表現であるベクトルＱＶ１１と検索クエリＱ１２の分散表現であるベクトルＱＶ１２とのなす角度の大きさをΦとする。この時、生成部５２３は、ΘよりもΦが小さくなるように、第１モデルＭ１を学習させる。例えば、生成部５２３は、ベクトルＢＱＶ１１とベクトルＢＱＶ１２のコサイン類似度の値を算出する。また、生成部５２３は、ベクトルＱＶ１１とベクトルＱＶ１２のコサイン類似度の値を算出する。続いて、生成部５２３は、ベクトルＢＱＶ１１とベクトルＢＱＶ１２のコサイン類似度の値よりも、ベクトルＱＶ１１とベクトルＱＶ１２のコサイン類似度の値が大きくなるように（値が１に近づくように）学習モデルＭ１を学習させる。このように、生成部５２３は、一対の検索クエリに対応する一対の分散表現である２つのベクトルが分散表現空間上で類似するように第１モデルＭ１を学習させることで、検索クエリから分散表現を出力する第１モデルＭ１を生成する。なお、生成部５２３は、コサイン類似度に限らず、ベクトル間の距離尺度として適用可能な指標であれば、どのような指標に基づいて分散表現の間の類似度を算出してもよい。また、生成部５２３は、ベクトル間の距離尺度として適用可能な指標であれば、どのような指標に基づいて学習モデルＭ１を学習させてもよい。例えば、生成部５２３は、分散表現同士のユークリッド距離や双曲空間等の非ユークリッド空間中での距離、マンハッタン距離、マハラノビス距離等といった所定の距離関数の値を算出する。続いて、生成部５２３は、分散表現同士の所定の距離関数の値（すなわち、分散表現空間における距離）が小さくなるように学習モデルＭ１を学習させてもよい。
【０１６２】
また、生成部５２３は、同一のユーザによって所定の時間内に入力された複数の検索クエリとして、所定の区切り文字で区切られた文字情報を含む複数の検索クエリが類似する特徴を有するものとして学習することで、第１モデルを生成する。例えば、生成部５２３は、地名を示す「六本木」と食品の種類を示す「パスタ」の文字とが区切り文字であるスペースで区切られた検索クエリ「六本木  パスタ」と、地名を示す「六本木」と料理の種類を示す「イタリアン」の文字とが区切り文字であるスペースで区切られた検索クエリ「六本木  イタリアン」とが類似する特徴を有するものとして学習することで、第１モデルを生成する。
【０１６３】
また、生成部５２３は、取得部５２１によって取得された検索クエリのうち、ランダムに抽出された複数の検索クエリが相違する特徴を有するものとして学習することで、第１モデルを生成する。具体的には、生成部５２３は、取得部５２１によって取得された検索クエリのうち、ランダムに抽出された一対の検索クエリの分散表現が相違するように学習することで、第１モデルを生成する。例えば、生成部５２３は、抽出部５２２によって抽出された所定の検索クエリの分散表現と、所定の検索クエリとは無関係にランダムに抽出された検索クエリの分散表現とが分散表現空間上で遠くにマッピングされるように第１モデルＭ１のトレーニングを行う。
【０１６４】
〔９．第１モデルの生成処理のフロー〕
次に、図１７を用いて、実施形態に係る第１モデルの生成処理の手順について説明する。図１７は、実施形態に係る第１モデルの生成処理手順を示すフローチャートである。
【０１６５】
図１７に示す例では、生成装置５０は、ユーザによって入力された検索クエリを取得する（ステップＳ１００１）。
【０１６６】
続いて、生成装置５０は、同一のユーザによって所定の時間内に入力された複数の検索クエリを抽出する（ステップＳ１００２）。
【０１６７】
続いて、生成装置５０は、抽出した複数の検索クエリが類似する特徴を有するものとして学習することで、所定の検索クエリから所定の検索クエリの特徴情報を予測する第１モデルを生成する（ステップＳ１００３）。
【０１６８】
〔１０．効果〕
上述してきたように、実施形態に係る情報処理装置１００は、受付部１３１と生成部１３３と出力部１３４を有する。受付部１３１は、類似性の判定対象を示す複数の第１クエリと、類似性の判定基準を示す複数の第２クエリとを受け付ける。生成部１３３は、第２クエリごとに、各第１クエリが示す判定対象と、第２クエリが示す判定基準との類似性を示す類似情報を生成する。出力部１３４は、生成部１３３によって生成された類似情報を出力する。
【０１６９】
これにより、情報処理装置１００は、多数の高次元の分散表現同士の類似度に関する分析結果を一見して把握しやすい状態で提供可能にする。したがって、情報処理装置１００は、有用な情報を得ることができる。
【０１７０】
また、生成部１３３は、判定対象を示す対象情報が第１クエリとして入力された際の検索意図と、判定基準を示す基準情報が第２クエリとして入力された際の検索意図との類似性を示すスコアに基づいて、類似情報を生成する。
【０１７１】
これにより、情報処理装置１００は、第１クエリと第２クエリとの検索意図の類似性に関する分析結果を提供可能とする。
【０１７２】
また、生成部１３３は、対象情報である文字情報に対応する分散表現と基準情報である文字情報に対応する分散表現との類似度であるスコアに基づいて、類似情報を生成する。
【０１７３】
これにより、情報処理装置１００は、第１クエリと第２クエリとの検索意図の類似性に関する分析結果を数値によって客観的に把握できる状態で提供可能とする。
【０１７４】
また、生成部１３３は、類似情報として、スコアの大きさを視認可能にしたグラフに関する情報を生成する。出力部１３４は、第２クエリごとに、生成部１３３によって生成されたグラフに関する情報を出力する。
【０１７５】
これにより、情報処理装置１００は、多数の高次元の分散表現同士の類似度に関する分析結果を一見して把握しやすい状態で提供可能にする。
【０１７６】
また、受付部１３１は、取引対象を示す複数の第１クエリを受け付ける。生成部１３３は、類似情報として、取引対象の属性に応じて異なる色によって、スコアの大きさを示す領域が色分けされたグラフに関する情報を生成する。
【０１７７】
これにより、情報処理装置１００は、取引対象の属性間で分析結果を一見して比較しやすい状態で提供可能にする。
【０１７８】
また、受付部１３１は、取引対象を示す複数の第１クエリを受け付ける。生成部１３３は、類似情報として、取引対象を取り扱う事業者に応じて異なる色によって、スコアの大きさを示す領域が色分けされたグラフに関する情報を生成する。
【０１７９】
これにより、情報処理装置１００は、取引対象を取り扱う事業者間で分析結果を一見して比較しやすい状態で提供可能にする。
【０１８０】
また、生成部１３３は、第２クエリごとに、類似情報と第２クエリとが対応付けて表示されるコンテンツを生成する。
【０１８１】
これにより、情報処理装置１００は、異なる分析の軸ごとに複数の第１クエリの分析結果を一見して把握しやすい状態で提供可能とする。
【０１８２】
〔１１．ハードウェア構成〕
また、上述してきた実施形態に係る情報処理装置１００または生成装置５０または端末装置１０は、例えば図１８に示すような構成のコンピュータ１０００によって実現される。図１８は、情報処理装置１００または生成装置５０または端末装置１０の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ１０００は、ＣＰＵ１１００、ＲＡＭ１２００、ＲＯＭ１３００、ＨＤＤ１４００、通信インターフェイス（Ｉ／Ｆ）１５００、入出力インターフェイス（Ｉ／Ｆ）１６００、及びメディアインターフェイス（Ｉ／Ｆ）１７００を備える。
【０１８３】
ＣＰＵ１１００は、ＲＯＭ１３００またはＨＤＤ１４００に格納されたプログラムに基づいて動作し、各部の制御を行う。ＲＯＭ１３００は、コンピュータ１０００の起動時にＣＰＵ１１００によって実行されるブートプログラムや、コンピュータ１０００のハードウェアに依存するプログラム等を格納する。
【０１８４】
ＨＤＤ１４００は、ＣＰＵ１１００によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス１５００は、所定の通信網を介して他の機器からデータを受信してＣＰＵ１１００へ送り、ＣＰＵ１１００が生成したデータを所定の通信網を介して他の機器へ送信する。
【０１８５】
ＣＰＵ１１００は、入出力インターフェイス１６００を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。ＣＰＵ１１００は、入出力インターフェイス１６００を介して、入力装置からデータを取得する。また、ＣＰＵ１１００は、生成したデータを入出力インターフェイス１６００を介して出力装置へ出力する。
【０１８６】
メディアインターフェイス１７００は、記録媒体１８００に格納されたプログラムまたはデータを読み取り、ＲＡＭ１２００を介してＣＰＵ１１００に提供する。ＣＰＵ１１００は、かかるプログラムを、メディアインターフェイス１７００を介して記録媒体１８００からＲＡＭ１２００上にロードし、ロードしたプログラムを実行する。記録媒体１８００は、例えばＤＶＤ（Digital  Versatile  Disc）、ＰＤ（Phase  change  rewritable  Disk）等の光学記録媒体、ＭＯ（Magneto-Optical  disk）等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【０１８７】
例えば、コンピュータ１０００が情報処理装置１００または生成装置５０または端末装置１０として機能する場合、コンピュータ１０００のＣＰＵ１１００は、ＲＡＭ１２００上にロードされたプログラムを実行することにより、制御部１３０または制御部５２または制御部１５の機能を実現する。コンピュータ１０００のＣＰＵ１１００は、これらのプログラムを記録媒体１８００から読み取って実行するが、他の例として、他の装置から所定の通信網を介してこれらのプログラムを取得してもよい。
【０１８８】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【０１８９】
〔１２．その他〕
また、上記実施形態及び変形例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【０１９０】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【０１９１】
また、上述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【０１９２】
また、上述してきた「部（section、module、unit）」は、「手段」や「回路」などに読み替えることができる。例えば、生成部は、生成手段や生成回路に読み替えることができる。
【符号の説明】
【０１９３】
１  情報処理システム
１０  端末装置
２０  検索サーバ
５０  生成装置
１００  情報処理装置
１１０  通信部
１２０  記憶部
１２１  クエリ情報記憶部
１２２  ベクトル情報記憶部
１２３  類似度情報記憶部
１２４  モデル情報記憶部
１３０  制御部
１３１  受付部
１３２  取得部
１３３  生成部
１３４  出力部
【図１】
0006938569.tif 000002
【図２】
0006938569.tif 000003
【図３】
0006938569.tif 000004
【図４】
0006938569.tif 000005
【図５】
0006938569.tif 000006
【図６】
0006938569.tif 000007
【図７】
0006938569.tif 000008
【図８】
0006938569.tif 000009
【図９】
0006938569.tif 000010
【図１０】
0006938569.tif 000011
【図１１】
0006938569.tif 000012
【図１２】
0006938569.tif 000013
【図１３】
0006938569.tif 000014
【図１４】
0006938569.tif 000015
【図１５】
0006938569.tif 000016
【図１６】
0006938569.tif 000017
【図１７】
0006938569.tif 000018
【図１８】
0006938569.tif 000019