(57)【要約】【課題】より広範に類義語を抽出することができる情報処理装置、情報処理方法及びプログラムを提供すること【解決手段】処理対象となる複数のワードを取得する取得部と、前記複数のワードに含まれる第一ワードおよび第二ワードをそれぞれベクトル化した第一ワードベクトルおよび第二ワードベクトルと、互いに類義語の関係にあることが既知の二つのワードのワードベクトル間の差分であるリレーションベクトルを代表する一以上の代表リレーションベクトルとに基づいて、前記第一ワードと前記第二ワードが類義語の関係にあるか否かを判定する判定部と、を備える情報処理装置。【選択図】図１
2019164577.tif 000002
【特許請求の範囲】
【請求項１】
処理対象となる複数のワードを取得する取得部と、
前記複数のワードに含まれる第一ワードおよび第二ワードをそれぞれベクトル化した第一ワードベクトルおよび第二ワードベクトルと、互いに類義語の関係にあることが既知の二つのワードのワードベクトル間の差分であるリレーションベクトルを代表する一以上の代表リレーションベクトルとに基づいて、前記第一ワードと前記第二ワードが類義語の関係にあるか否かを判定する判定部と、
を備える情報処理装置。
【請求項２】
前記判定部は、前記第一ワードベクトルと、前記第二ワードベクトルとの関係が、前記代表リレーションベクトルに近い程、前記第一ワードと前記第二ワードが類義語の関係にあると判定する、
請求項１記載の情報処理装置。
【請求項３】
前記判定部は、前記第一ワードベクトルと前記代表リレーションベクトルとの差分に、前記第二ワードベクトルを乗算した値が大きいほど、前記第一ワードと前記第二ワードが類義語の関係にあると判定する、
請求項１または２記載の情報処理装置。
【請求項４】
前記判定部は、更に、前記第一ワードベクトルと前記第二ワードベクトルを乗算した値に基づいて、前記第一ワードと前記第二ワードが類義語の関係にあるか否かを判定する、
請求項１から３のうちいずれか１項記載の情報処理装置。
【請求項５】
前記判定部は、前記第一ワードベクトルと前記代表リレーションベクトルとの差分に、前記第二ワードベクトルを乗算した値と、前記第一ワードベクトルと前記第二ワードベクトルを乗算した値との加重和が大きいほど、前記第一ワードと前記第二ワードが類義語の関係にあると判定する、
請求項４項記載の情報処理装置。
【請求項６】
前記判定部は、更に、第一ワードと第二ワードを一致させるために必要な操作の対象となる品詞のそれぞれにおける、品詞種別、操作量、および位置に基づいて、前記第一ワードと前記第二ワードが類義語の関係にあるか否かを判定する、
請求項１から５のうちいずれか１項記載の情報処理装置。
【請求項７】
前記第一ワード及び前記第二ワードから得られる素性を用いた機械学習を行って、前記第一ワードと前記第二ワードが類義語の関係にあるか否かを判定する、
請求項１から６のうちいずれか１項記載の情報処理装置。
【請求項８】
前記判定部により、前記第一ワード及び前記第二ワードが類義語であると判定された場合、前記度第一ワード及び前記第二ワードのペアを辞書データに登録する類義語登録部を更に備える、
請求項１から７のうちいずれか１項記載の情報処理装置。
【請求項９】
コンピュータが、
処理対象となる複数のワードを取得し、
前記複数のワードに含まれる第一ワードおよび第二ワードをそれぞれベクトル化した第一ワードベクトルおよび第二ワードベクトルと、互いに類義語の関係にあることが既知の二つのワードのワードベクトル間の差分であるリレーションベクトルを代表する一以上の代表リレーションベクトルとに基づいて、前記第一ワードと前記第二ワードが類義語の関係にあるか否かを判定する、
情報処理方法。
【請求項１０】
コンピュータに、
処理対象となる複数のワードを取得させ、
前記複数のワードに含まれる第一ワードおよび第二ワードをそれぞれベクトル化した第一ワードベクトルおよび第二ワードベクトルと、互いに類義語の関係にあることが既知の二つのワードのワードベクトル間の差分であるリレーションベクトルを代表する一以上の代表リレーションベクトルとに基づいて、前記第一ワードと前記第二ワードが類義語の関係にあるか否かを判定させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、検索エンジンを用いて検索を行う際、複数のキーワードを含むクエリが入力された場合、入力されたクエリに基づいて、クエリに含まれる複数のキーワードを組み合わせたサブクエリを生成する技術が知られている（特許文献１参照）。また、この技術では、サブクエリを除外する方法として、キーワード組合せ手段で生成された各組合せに含まれるキーワードの共起確率を取得する方法と、取得された共起確率が所定の値よりも低い組合せのサブクエリを除外する手段とを含む方法を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−３３１９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来の技術では、共起確率は、２以上のキーワードが同一文書又はウェブサイト中で使用される割合を表す。従って、従来の技術では、同一文書内に現れないクエリ間では、共起確率が低いと判定され、サブクエリは除外されることになる。このため、類義語を抽出するという分野に適用することが難しいという問題がある。
【０００５】
本発明は、このような事情を考慮してなされたものであり、より広範に類義語を抽出することができる情報処理装置、情報処理方法及びプログラムを提供することを目的の一つとする。
【課題を解決するための手段】
【０００６】
本発明の一態様は、処理対象となる複数のワードを取得する取得部と、前記複数のワードに含まれる第一ワードおよび第二ワードをそれぞれベクトル化した第一ワードベクトルおよび第二ワードベクトルと、互いに類義語の関係にあることが既知の二つのワードのワードベクトル間の差分であるリレーションベクトルを代表する一以上の代表リレーションベクトルとに基づいて、前記第一ワードと前記第二ワードが類義語の関係にあるか否かを判定する判定部と、を備える情報処理装置である。
【発明の効果】
【０００７】
本発明の一態様によれば、より広範に類義語を抽出することができる。
【図面の簡単な説明】
【０００８】
【図１】実施形態に係る情報処理装置３０の構成および使用環境の一例を示す図である。
【図２】辞書データ２１４が持つ類義語の一例を示す図である。
【図３】ワードベクトルとリレーションベクトルとの関係を示す図である。
【図４】品詞重みＳｃｏｒｅＰＯＳｉについて説明するための図である。
【図５】位置重みＷｐｏｓｉｔｉｏｎの一例を示す図である。
【図６】情報処理装置３０による処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、図面を参照し、本発明の情報処理装置、情報処理方法及びプログラムの実施形態について説明する。
【００１０】
［構成］
図１は、実施形態に係る情報処理装置３０の構成および使用環境の一例を示す図である。図示する環境では、端末装置１０、サービスサーバ２０及び情報処理装置３０は、ネットワークＮＷを介して互いに通信する。図１に示す例では、端末装置１０の数は、Ｎ（Ｎは、１以上の整数）個である。
【００１１】
端末装置１０−１〜１０−Ｎ、サービスサーバ２０及び情報処理装置３０は、ネットワークＮＷを介して互いに通信する。ネットワークＮＷは、例えば、インターネット、ＷＡＮ（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）やフラッシュメモリなどの記憶装置に格納されていてもよいし、ＤＶＤやＣＤ−ＲＯＭなどの着脱可能な記憶媒体に格納されており、記憶媒体がドライブ装置に装着されることでインストールされてもよい。
【００２４】
取得部３００は、例えばサービスサーバ２０から、クエリログ２１２と辞書データ２１４を取得する。取得部３００は、取得した各データをワードベクトル生成部３１０、判定部３３０、重み付与部３４０及び類義語登録部３５０へ送る。
【００２５】
ワードベクトル生成部３１０は、取得部３００から受け取ったクエリログ２１２内に含まれるワードと、辞書データ２１４に含まれるワードとをベクトル化する。なお、ワードの元データとしてクエリログ２１２を取得するのはあくまで一例であり、大量のワードを取得することができれば他の手法が採用されてもよい。
【００２６】
ワードベクトル生成部３１０は、例えば、クエリログ２１２が英文であればスペースで区切られたものをワードとして取得し、和文であれば形態素解析を行ってクエリをワードに分割する。この際に、助詞などを除外する処理を行ってもよい。次に、ワードベクトル生成部３１０は、Ｗ２Ｖ（Word2Vec）等の手法を用いて、クエリログ２１２のクエリに含まれるワードと、辞書データ２１４に含まれるワードとをそれぞれ分散表現化したワードベクトルを生成する。
【００２７】
代表リレーションベクトル取得部３２０は、代表リレーションベクトルを取得する。例えば、代表リレーションベクトル取得部３２０は、辞書データ２１４に登録されているワードのペア、すなわち互いに類義語の関係にあることが既知のワードのペアの一部または全部について、ワードベクトルの差分（リレーションベクトル）を生成する。そして、リレーションベクトルを所定数（例えば４）でクラスタリングし、それぞれのクラスタの例えば重心となるベクトルを、代表リレーションベクトルとして導出する。このクラスタは、例えば、図２に示す類義語の「属性」に相当するものとなることが想定される。代表リレーションベクトル取得部３２０は、辞書データの更新処理を行うたびに代表リレーションベクトルを計算してもよいし、既に計算済の代表リレーションベクトルを利用してもよい。
【００２８】
図３は、ワードベクトルとリレーションベクトルとの関係を示す図である。Ｑ１Ａは、第１ワードから得られたワードベクトルであり、Ｑ１Ｂは、第１ワードと類義語の関係にある第２ワードのワードベクトルであり、Ｒ１は、それらの差分を示すリレーションベクトルである。
【００２９】
また、Ｑ２Ａは、第３ワードから得られたワードベクトルであり、Ｑ１Ｂは、第３ワードと類義語の関係にある第４ワードのワードベクトルであり、Ｒ２は、それらの差分を示すリレーションベクトルである。そして、Ｒ３は、代表リレーションベクトルである。第１ワードと第２ワードの関係（類義語の属性）、および第３ワードと第４ワードの関係（類義語の属性）が同じものであり、更に、それらが類義語として典型的な関係にあるのであれば、リレーションベクトルＲ１およびＲ２は、代表リレーションベクトルＲ３に近いものとなることが想定される。実施形態の情報処理装置では、このような原理に基づいて、以下に示す処理を実行する。
【００３０】
図１の説明に戻る。判定部３３０は、ワードベクトル生成部３１０により生成されたワードベクトルから、二つのワードベクトルを網羅的に抽出する。以下、この二つのワードベクトルを第一ワードベクトル、第二ワードベクトルと称する。そして、判定部３３０は、少なくとも、第一ワードベクトル、第二ワードベクトル、および代表リレーションベクトルに基づいて、第一ワードベクトルと第二ワードベクトルの類似度を算出し、第一ワード及び第二ワードのペアが類義語であるか否かを判定する。
【００３１】
判定部３３０は、例えば、以下に説明する複数の素性をそれぞれ導出し、素性に基づいてＳＶＭ（Support Vector Machine）や機械学習を行うことで、第一ワード及び第二ワードのペアが類義語であるか否かを判定する。例えば、本実施形態では、コサイン類似度と、レーベンシュタイン距離と、圧縮率と、共有接頭語と、包含される単語と、検索頻度率と、重み付き部分類似度をＳＶＭの素性として用いる。また、類似度の判定は、ＳＶＭや機械学習を用いるのではなく、素性の加重和などを求めてスコアとして判定するものであってもよい。
【００３２】
[素性１]
素性の一つとして、判定部３３０は、コサイン類似度を算出する。まず、判定部３３０は、式（１）に基づいて、第１類似度を導出する。式中、V_queryは、第一ワードベクトルを表す。V_candidateは、第二ワードベクトルを表す。V_centroidは、代表リレーションベクトルのうち選択された一つを表す。「＊」は、ベクトルの積を表す。式（１）に示すＳｉｍ１は、図３に示す関係を、どの程度満たしているかを示す指標値である。
【００３３】
【数１】
2019164577.tif 000003
【００３４】
次に、判定部３３０は、式（２）に基づいて、第一ワードベクトル及び第二ワードベクトルのコサイン類似度を算出する。
【００３５】
【数２】
2019164577.tif 000004
【００３６】
判定部３３０は、式（３）に基づいて、Ｓｉｍ１及びＳｉｍ２の加重和を求め、素性１とする。αは０〜１の定数である。
【００３７】
【数３】
2019164577.tif 000005
【００３８】
ＳＶＭは、Ｓｉｍを素性として動作するため、Ｓｉｍが大きい場合に類義語であると判定される可能性が高くなる。このため、判定部３３０は、算出した値が大きい場合に類義語である可能性が高いと判定する。また、Ｓｉｍは、Ｓｉｍ１とＳｉｍ２の積であるため、Ｓｉｍ１が大きければ類義語と判定する可能性が高くなる。なお、Ｓｉｍ１は、ＳＶＭの素性の一部として用いられてもよいし、専ら算出されたＳｉｍ１に基づいて判定部３３０が類義語の類義語である可能性を判定してもよい。
【００３９】
[素性２]
素性２について説明する。判定部３３０は、素性の一つとして、第一ワード及び第二ワードのペアに対して、レーベンシュタイン距離を用いる。レーベンシュタイン距離は、二つの文字列がどの程度異なっているかを距離で示す素性である。具体的には、1文字の挿入、削除及び置換によって、一方の文字列をもう一方の文字列に変形するのに必要な手順の最小回数である。また、これらの操作には別のコストを割り振ることが可能である。また、第一ワード及び第二ワードそのものだけでなく、これらにルビを振った後の読み方についてのレーベンシュタイン距離を素性の一部としてもよい。
【００４０】
[素性３]
素性３について説明する。判定部３３０は、素性の一つとして、第一ワード及び第二ワードのペアに対して、圧縮率を導出する。
【００４１】
[素性４]
素性４について説明する。判定部３３０は、素性の一つとして、第一ワード及び第二ワードのペアに対して、共有接頭辞を導出する。共有接頭語は、文字列の先頭がどの程度異なっているかを示す素性である。
【００４２】
[素性５]
素性５について説明する。判定部３３０は、素性の一つとして、第一ワード及び第二ワードのペアに対して、互いに包含される単語をカウントする。包含される単語は、第一ワード又は第二ワードが他方のワード内に文字列が完全に包含されている単語である。
【００４３】
[素性６]
素性６について説明する。判定部３３０は、素性の一つとして、第一ワード及び第二ワードのペアに対して、検索頻度率を導出する。検索頻度率は、第一ワード及び第二ワードを用いて、検索が行われた回数に応じた重みである。
【００４４】
[素性７]
素性７について説明する。素性の一つとして、重み付与部３４０は、重み付き部分類似度Ｓｃｏｒｅを導出する。重み付与部３４０は、第一ワードと第二ワードをそれぞれ品詞に分解し、式（４）に示すように、品詞重みＳｃｏｒｅＰＯＳｉと、操作種類重みＷｏｐｅｒａｔｉｏｎと、位置重みＷｐｏｓｉｔｉｏｎとに基づいて、重み付き類似度Ｓｃｏｒｅを導出する。式中、ｎは一致させるために必要な操作（削除、挿入、入れ替え）の回数である。重み付き類似度Ｓｃｏｒｅは、ゼロに小さい方が、類似している可能性が高いことを示すものである。
【００４５】
【数４】
2019164577.tif 000006
【００４６】
品詞重みＳｃｏｒｅＰＯＳｉは、操作の対象となった品詞について、品詞の種別に応じて付与される値である。例えば、名詞であれば５、動詞であれば４、形容詞であれば４、副詞であれば３、その他であれば１が、品詞重みＳｃｏｒｅＰＯＳｉとして付与される。図４は、品詞重みＳｃｏｒｅＰＯＳｉについて説明するための図である。図４では、例として、第一ワードを「Ａよりも大変なＢ」、第二ワードを「Ａよりも」とする。
【００４７】
重み付与部３４０は、第一ワード及び第二ワードをそれぞれ形態素解析して品詞に分解する。形態素解析の結果として、第一ワード及び第二ワードには、「Ａ」に名詞、「より」にその他、…のように、分解された単語毎に対応する品詞の種別が付与される。重み付与部３４０は、第一ワードと第二ワードを一致させるための操作の対象となった品詞に対して、品詞重みＳｃｏｒｅＰＯＳｉを付与する。図４の例では、「大変」「な」「Ｂ」が相違するため、それぞれに付与される品詞重みＳｃｏｒｅＰＯＳｉは、「４」「１」「５」となる。
【００４８】
図５は、位置重みＷｐｏｓｉｔｉｏｎの一例を示す図である。重み付与部３４０は、第一ワード及び第二ワードの各品詞について、１番目から順に、当該位置の品詞が一致していない場合に、位置重みＷｐｏｓｉｔｉｏｎを付与する。図５では例として、順序重みは、１品詞目を「−０．７」、２品詞目を「−０．６」、３品詞目を「−０．３」、４品詞目を「−０．１」、５品詞目以降を「０」とする。図４の例において、重み付与部３４０は、「大変」「な」「Ｂ」のそれぞれが位置重みＷｐｏｓｉｔｉｏｎの対象となるが、５文字目以降であるために位置重みＷｐｏｓｉｔｉｏｎは、ゼロとなる。
【００４９】
また、操作種類Ｗｏｐｅｒａｔｉｏｎは、例として、削除がある場合を０．５、挿入がある場合を０．３、入れ替えがある場合を０．２とする。なお、削除と挿入は表裏の関係にあるため、素性７に関しては、第一ワードから見た第二ワードの類似性と、第二ワードから見た第一ワードの類似性は異なるものとなる。
【００５０】
例えば、図４では、第一ワードと第二ワードを比較した場合、第二ワードでは、「大変なＢ」という文字列が削除されている。重み付与部３４０は、第一ワードの「大変」「な」「Ｂ」の文字列に対し、操作種類Ｗｏｐｅｒａｔｉｏｎを付与する。この場合、３つの品詞が削除されているため、削除が３回行われたとみなし、操作種類Ｗｏｐｅｒａｔｉｏｎは、「０．５」「０．５」「０．５」となる。
【００５１】
これらの結果、図４の例における重み付き部分類似度Ｓｃｏｒｅは、（４×(０．５−０．１））＋（１×０．５）＋（５×０．５）＝４．６となる。
【００５２】
これらの重みを用いて、重み付与部３４０は、式（４）に基づいて、素性の一つとして、重み付き類似度Ｓｃｏｒｅを算出する。
【００５３】
判定部３３０は、素性１から素性７をの一部または全部を、ＳＶＭなどのパターン認識モデルを使用する際の素性として使用する。ＳＶＭは、これら複数の素性の一部または全部、あるいはそれらを組み合わせて処理した結果を要素とする特徴ベクトルを、ある特徴空間に分布させ、その特徴空間において各特徴ベクトルを正例または負例に分類する超平面（特徴空間の次元数から１低下した次元を有する空間）を導出する。また、本実施形態で算出する素性は、ＳＶＭだけでなく、ディープラーニングやロジスティック回帰などの学習に用いてもよい。
【００５４】
類義語登録部３５０は、判定部３３０の判定結果に基づいて、単語を類義語として類義語記憶部３６０に登録する。
【００５５】
類義語記憶部３６０は、類義語登録部３５０から受け取った類義語のデータを記憶する。情報処理装置３０は、類義語記憶部３６０により記憶された類義語のデータをサービスサーバ２０に送信する。サービスサーバ２０では、類義語のデータを辞書データ２１４に追加することで、辞書データ２１４の更新（バージョンアップ）を行うことができる。
【００５６】
図６は、情報処理装置３０による処理の流れの一例を示すフローチャートである。まず、取得部３００は、コンテンツ内に入力された入力クエリのログであるクエリログ２１２を取得する。（Ｓ１００）。また、取得部３００は、予め定められた基準単語を集めた単語データである辞書データ２１４を取得する（Ｓ１０２）。
【００５７】
ワードベクトル生成部３１０は、ステップＳ１００及びＳ１０２で取得したクエリログ２１２及び辞書データ２１４に基づいて、第一ワード及び第二ワードからそれぞれのワードベクトルを生成する（Ｓ１０４）。
【００５８】
次に、代表リレーションベクトル取得部３２０は、代表リレーションベクトルを取得する（Ｓ１０６）。判定部３３０は、第一ワード及び第二ワードから算出したワードベクトル、代表リレーションベクトル取得部３２０が取得した代表リレーションベクトル、その他の情報に基づいて、各素性を計算する（Ｓ１０８）。そして、判定部３３０は、ＳＶＭなどによって第一ワードと第二ワードの類似度を判定する（Ｓ１１０）。
【００５９】
［変形例］
式（１）では、第一ベクトルを示すクエリベクトルと代表リレーションベクトルの差分と、第二ベクトルを示す候補ベクトルとを乗算している。このとき、クエリベクトルと代表リレーションベクトルの差は、候補ベクトルを用いて算出すると、クエリベクトルと候補ベクトルの差分からリレーションベクトルを得ることができる。このため、算出したリレーションベクトルと、代表リレーションベクトルとの類似度を求めればよいため、以下の式（５）が成り立つ。つまり、式（１）は、式（５）として表すこともできる。
【００６０】
【数５】
2019164577.tif 000007
【００６１】
以上説明した実施形態によれば、処理対象となる複数のワードを取得する取得部３００と、複数のワードに含まれる第一ワードおよび第二ワードをそれぞれベクトル化した第一ワードベクトルおよび第二ワードベクトルと、互いに類義語の関係にあることが既知の二つのワードのワードベクトル間の差分であるリレーションベクトルを代表する一以上の代表リレーションベクトルとに基づいて、第一ワードと第二ワードが類義語の関係にあるか否かを判定する判定部３３０と、を備えることにより、より広範に類義語を抽出することができる。
【００６２】
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【符号の説明】
【００６３】
１０…端末装置
２０…サービスサーバ
３０…情報処理装置
２００…検索実行部
２１０…記憶部
２１２…クエリログ
２１４…辞書データ
３００…取得部
３１０…ワードベクトル生成部
３２０…代表リレーションベクトル取得部
３３０…判定部
３４０…重み付与部
３５０…類義語登録部
３６０…類義語記憶部
【図１】
2019164577.tif 000008
【図２】
2019164577.tif 000009
【図３】
2019164577.tif 000010
【図４】
2019164577.tif 000011
【図５】
2019164577.tif 000012
【図６】
2019164577.tif 000013