【実施例】
【0012】
図1は、本実施例に係る語義ベクトル生成装置の処理の一例を説明するための図である。たとえば、語義ベクトル生成装置は、テキストデータ10に含まれる単語「deep」のベクトルを算出する場合について説明する。単語「deep」は、複数の語義を有する多義語である。たとえば、単語「deep」には、「top to bottom、front to back、measurement、deep、breath、sounds、colours、sleep、serious、emotions、knowledge、difficult to understand、involved、person、in sport」の語義がある。
図1では、単語「deep」の語義のうち、「knowledge」の語義ベクトルを算出する処理の一例について説明する。
【0013】
図1のステップS10について説明する。語義ベクトル生成装置は、類語辞書テーブル150aと、単語「deep」とを比較して、単語「deep」の類語を特定する。類語辞書テーブル150aは、単語と、単語に対応する類語とを対応づけるテーブルである。ここでは一例として、単語「deep」の類語を「wise、knowing、heavy、learned、profound」とする。
【0014】
語義ベクトル生成装置は、単語「deep」、各類語「wise、knowing、heavy、learned、profound」と、単語ベクトルテーブル150bとを比較して、単語、各類語のベクトルを特定する。単語ベクトルテーブル150bは、単語と、単語のベクトルとを対応づけるテーブルである。たとえば、単語「deep」のベクトルを「V
deep」とする。類語「wise」のベクトルを「V
wise」とする。類語「knowing」のベクトルを「V
knowing」とする。類語「heavy」のベクトルを「V
heavy」とする。類語「learned」のベクトルを「V
learned」とする。類語「profound」のベクトルを「V
profound」とする。
【0015】
図1のステップS11について説明する。語義ベクトル生成装置は、各ベクトル「V
deep、V
wise、V
knowing、V
heavy、V
learned、V
profound」を複数のメッシュに区切り、各メッシュの法線ベクトルをそれぞれ算出する。語義ベクトル生成装置は、各メッシュの法線ベクトルを合算することで、各ベクトル「V
deep、V
wise、V
knowing、V
heavy、V
learned、V
profound」のグループベクトルV
920.17を算出する。
【0016】
図1のステップS12について説明する。語義ベクトル生成装置は、英英/国語辞書テーブル150cを参照して、単語「deep」の語義「knowledge」の解説文に含まれる特徴単語を抽出する。英英/国語辞書テーブル150cは、単語の各語義をそれぞれ解説する解説文の情報を保持するテーブルである。たとえば、語義ベクトル生成装置は、この解説文から特徴単語「great、knowledge、understanding」を抽出する。同一の特徴単語は、一つの特徴単語とする。
【0017】
語義ベクトル生成装置は、特徴単語と、単語ベクトルテーブル150bとを比較して、各特徴単語のベクトルを特定する。たとえば、特徴単語「great」のベクトルを「V
great」とする。特徴単語「knowledge」のベクトルを「V
knowledge」とする。特徴単語「understanding」のベクトルを「V
understanding」とする。
【0018】
たとえば、語義ベクトル生成装置は、解説文に含まれる単語のうち、グループベクトルの生成もとの類語と同一の単語を、特徴単語から除外する。語義ベクトル生成装置は、解説文に含まれる単語のうち、冠詞、接続詞を除外する。語義ベクトル生成装置は、解説文に含まれる単語のうち、showing等の定型単語を除外する。
【0019】
語義ベクトル生成装置は、各特徴単語のベクトル「V
great、V
knowledge、V
understanding」に基づいて、グループベクトルV
920.17を補正することで、単語「deep」の語義のうち、「knowledge」の語義ベクトルV
deep_KNOWLEDGEを生成する。たとえば、語義ベクトル生成部は、ベクトル「V
great、V
knowledge、V
understanding」の法線ベクトルと、グループベクトルV
929.17を合算することで、語義ベクトルV
deep_KNOWLEDGEを生成する。
【0020】
上記のように語義ベクトル生成装置は、対象の単語のベクトルおよび単語の類語のベクトルを合算したグループベクトルを、対象の語義の解説文に含まれる特徴単語のベクトルによって補正することで、対象の単語の語義ベクトルを生成する。このため、同一の単語であっても、単語の語義に適合した語義ベクトルを語義毎に生成することができる。
【0021】
次に、本実施例に係る語義ベクトル生成装置の構成について説明する。
図2は、本実施例に係る語義ベクトル生成装置の構成を示す機能ブロック図である。
図2に示すように、この語義ベクトル生成装置100は、通信部110と、入力部120と、表示部130と、記憶部150と、制御部160とを有する。
【0022】
通信部110は、図示しない外部装置とネットワークを介してデータ通信を実行する処理部である。たとえば、通信部110は、通信装置に対応する。
【0023】
入力部120は、各種の情報を語義ベクトル生成装置100に入力するための入力装置である。たとえば、入力部120は、キーボードやマウス、タッチパネルなどに対応する。
【0024】
表示部130は、制御部160から出力される各種の情報を表示する表示装置である。たとえば、表示部130は、液晶ディスプレイやタッチパネルなどに対応する。
【0025】
記憶部150は、テキストデータ10と、類語辞書テーブル150aと、単語ベクトルテーブル150bと、英英/国語辞書テーブル150cと、類語テーブル150dと、多義語テーブル150eと、語義判定テーブル150fとを有する。記憶部150は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子や、HDD(Hard Disk Drive)などの記憶装置に対応する。
【0026】
テキストデータ10は、複数の単語を有する文字列のデータである。
【0027】
類語辞書テーブル150aは、単語と、単語に対応する類語を対応づけるテーブルである。
図3は、類語辞書テーブルのデータ構造の一例を示す図である。
図3に示すように、この類語辞書テーブル150aは、類語識別番号と、単語(類語)を対応づける。
【0028】
類語識別番号は、類語を識別する番号であり、類語識別番号が同一の各単語が、類語となる。たとえば、類語識別番号「1.1」となる各単語「birth、genesis、nativity、childbirth、birthing、nascency」は、類語である。
【0029】
単語ベクトルテーブル150bは、単語と、単語のベクトルとを対応づけるテーブルである。
図4は、単語ベクトルテーブルのデータ構造の一例を示す図である。
図4に示すように、この単語ベクトルテーブル150bは、単語とベクトルとを対応づける。たとえば、単語「birth」のベクトルは、「V
birth」となる。
【0030】
英英/国語辞書テーブル150cは、英英/国語辞書テーブル150cは、単語の各語義をそれぞれ解説する解説文の情報を保持するテーブルである。
図5は、英英/国語辞書テーブルのデータ構造の一例を示す図である。
図5に示すように、この英英/国語辞書テーブル150cは、単語と、語義と、解説番号と、解説文と、文例とを対応づける。
図5に示すように、同一の単語であっても、複数の語義が対応づけられる。解説番号は、解説文に割り振られる番号である。
【0031】
解説文は、語義を解説する文章である。たとえば、単語「deep」の語義「KNOWLEDGE」に対応する解説文は「showing great knowledge or understanding」となる。文例は、該当する語義の単語を用いた文例を示すものである。
【0032】
類語テーブル150dは、
図1のステップS11で説明した各類語のグループベクトルの情報を保持するテーブルである。
図6は、類語テーブルのデータ構造の一例を示す図である。
図6に示すように、この類語テーブル150dは、類語識別番号と、単語(類語)と、ベクトルと、グループベクトルとを対応づける。
【0033】
類語識別番号は、類語を識別する番号であり、類語識別番号が同一の各単語が、類語となる。ベクトルは、各単語(類語)に対応するベクトルである。各単語のベクトルは、
図4で説明した単語ベクトルテーブル150bで定義されている。グループベクトルは、同一の類語識別番号の単語(類語)のベクトルをまとめたベクトルである。
【0034】
多義語テーブル150eは、多義語の各語義の情報を保持するテーブルである。
図7は、多義語テーブルのデータ構造の一例を示す図である。
図7に示すように、この多義語テーブル150eは、多義語と、語義数と、語義と、語義識別番号と、グループベクトルと、解説番号と、語義コードと、語義ベクトルとを対応づける。
【0035】
多義語は、複数の語義を有する単語を示す。語義数は、多義語が持つ語義の数を示す。語義は、多義語に含まれる各語義を示す。類語識別番号は、語義に対応する単語が属する類語を一意に識別する番号である。グループベクトルは、類語識別番号に対応する類語のベクトルをまとめたベクトルである。解説番号は、
図5に示した解説番号に対応するものである。語義コードは、語義に割り当てられるコードである。語義ベクトルは、該当する単語の語義に割り当てられるベクトルである。
【0036】
語義判定テーブル150fは、文章に含まれる単語の語義を判定する場合に用いられるテーブルである。
図8は、語義判定テーブルのデータ構造の一例を示す図である。
図8に示すように、この語義判定テーブル150fは、多義語と、語義IDと、語義と、各共起単語とを対応づける。
【0037】
多義語は、複数の語義を有する単語を示す。語義IDは、多義語に含まれる語義を一意に識別する番号である。語義は、多義語に含まれる各語義を示す。共起単語は、ある語義の多義語と共起する単語を示す。共起単語は、共起率と対応づけられる。たとえば、多義語「deep」が語義「knowledge」の意味で文章に登場する場合には、係る「deep」の前後で、単語「understanding」が共起する可能性が「41%」である旨が示されている。
【0038】
図2の説明に戻る。制御部160は、単語ベクトル演算部160aと、グループベクトル演算部160bと、語義ベクトル演算部160cと、ベクトル判定部160dとを有する。制御部160は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などによって実現できる。また、制御部160は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などのハードワイヤードロジックによっても実現できる。
【0039】
単語ベクトル演算部160aは、skip-gramに基づいて、テキストデータ10に含まれる単語のベクトルを演算する処理部である。単語ベクトル演算部160aは、単語と、単語のベクトルとを対応づけて、単語ベクトルテーブル150bに格納する。
【0040】
図9は、単語ベクトル演算部の処理の一例を説明するための図である。ここでは、入力するテキストデータ10に含まれる文章を「I want to eat an apple everyday」とし、この文章に含まれる単語「eat」のベクトルを演算するものとする。
【0041】
単語ベクトル演算部160aは、与えられた単語「eat」および共起単語の確率をネットワークで学習する。たとえば、ネットワークは、入力層5a、隠れ層5b、出力層5cを含む。入力層5aに単語を入力すると、隠れ層5bに設定された特徴量に応じて、入力された単語と共起する共起単語の共起確率が、出力層5cから出力される。
【0042】
単語ベクトル演算部160aは、複数の文章について、単語「eat」と共起する共起単語との関係から、隠れ層5bの特徴量が最適な値となるように、繰り返し学習を行う。たとえば、単語「eat」を、入力層5aに入力し、文章「I want to eat an apple everyday」で、単語「eat」と共起する共起単語「apple」を出力層5cに入力して、隠れ層5bの特徴量を調整する。単語ベクトル演算部160aは、他の複数の文章についても、同様の処理を繰り返し実行する(ステップS20)。
【0043】
単語ベクトル演算部160aは、ステップS20を繰り返し実行した結果、調整された、隠れ層5bの特徴量を、単語「eat」のベクトルとして特定する(ステップS21)。
図9のステップS21では、隠れ層5bの特徴量が調整された結果、単語「eat」が入力層5aに入力されると、出力層5cから共起単語(共起確率)「apple(0.4)」、「orange((0.4)」、・・・、「network(0.01)」が出力される例を示している。
【0044】
単語ベクトル演算部160aは、他の単語に関しても、上記処理を繰り返し実行することで、ベクトルを演算する。
【0045】
グループベクトル演算部160bは、単語ベクトルテーブル150bから単語を選択し、選択した単語のベクトルと、選択した単語の類語のベクトルとを基にして、グループベクトルを演算する処理部である。以下において、グループベクトル演算部160bの処理の一例について説明する。
【0046】
グループベクトル演算部160bは、選択した単語と、類語辞書テーブル150aとを比較して、選択した単語に対応する類語識別番号を判定する。グループベクトル演算部160bは、判定した類語識別番号に対応する類語を類語辞書テーブル150aから取得する。グループベクトル演算部160bは、取得した類語のベクトルを、単語ベクトルテーブル150bから取得する。以下の説明では、適宜、選択した単語とその類語をまとめて類語と表記する。グループベクトル演算部160bは、類義識別番号、類語、ベクトルを対応づけて、類語テーブル150dに登録する。
【0047】
グループベクトル演算部160bは、同一の類語識別番号に対応する類語のベクトルを基にして、かかる類語識別番号のグループベクトルを演算する。
図10は、グループベクトル演算部の処理を説明するための図である。
図10では、類語を「birth、nativity、nascency、birthing、childbirth、genesis」とし、グループベクトル演算部160bは、この類語のグループベクトルを演算する場合について説明する。
【0048】
図10のステップS30について説明する。グループベクトル演算部160bは、類語「birth、nativity、nascency、birthing、childbirth、genesis」のベクトル「V
birth、V
nativity、V
nascency、V
birthing、V
childbirth、V
genesis」を、単語ベクトルテーブル150bから取得する。
【0049】
図10のステップS31について説明する。グループベクトル演算部160bは、各ベクトル「V
birth、V
nativity、V
nascency、V
birthing、V
childbirth、V
genesis」を基に、メッシュ51〜54を生成する。メッシュ51は、ベクトル「V
birth、V
nativity、V
genesis」からなるメッシュである。メッシュ52は、ベクトル「V
nativity、V
childbirth、V
genesis」からなるメッシュである。メッシュ53は、ベクトル「V
nativity、V
nascency、V
childbirth」からなるメッシュである。メッシュ54は、ベクトル「V
nascency、V
birthing、V
childbirth」からなるメッシュである。
【0050】
グループベクトル演算部160bは、メッシュ51〜54の法線ベクトル51a〜54aをそれぞれ算出する。たとえば、グループベクトル演算部160bは、式(1)に基づいて、ベクトルν
0、ν
1、ν
2からなるメッシュの法線ベクトルNを算出する。
図11は、ベクトルと法線ベクトルとの関係を示す図である。
【0051】
法線ベクトルN=(ν
1−ν
0)×(ν
2−ν
0)/|(ν
1−ν
0)×(ν
2−ν
0)|・・・(1)
【0052】
図10のステップS32について説明する。グループベクトル演算部160bは、法線ベクトル51a〜54aを合算することで、グループベクトルV
1.1を演算する。グループベクトル演算部160bは、法線ベクトル51a〜54aを合算したベクトルを、正規化して、グループベクトルV
1.1を生成しても良い。グループベクトル演算部160bは、演算したグループベクトルを、該当する類語識別番号と対応づけて、類語テーブル150dに登録する。たとえば、グループベクトル演算部160bは、類語識別番号「1.1」と対応づけて、グループベクトルV
1.1を、類語テーブル150dに登録する。
【0053】
グループベクトル演算部160bは、他の単語についても、上記S30〜S32の処理を実行することで、単語に対応するグループベクトルを演算し、類語テーブル150dに登録する。グループベクトル演算部160bは、類語テーブル150dと、多義語テーブル150eとを比較して、類語識別番号に対応づけて、グループベクトルを、多義語テーブル150eに登録する。
【0054】
なお、
図7で説明した、多義語テーブル150eの多義語、語義数、語義、類語識別番号、解説番号、語義コードは、予め設定されているものとする。多義語テーブル150eのグループベクトルの情報は、上記のように、グループベクトル演算部160bに登録される。多義語テーブル150eの語義ベクトルの情報は、後述する語義ベクトル演算部160cに登録される。
【0055】
語義ベクトル演算部160cは、単語の語義に対応する語義ベクトルを演算する処理部である。以下において、語義ベクトル演算部160cの処理の一例について説明する。語義ベクトル演算部160cは、多義語テーブル150eを参照し、語義ベクトルの演算対象となる、単語と語義との組を選択する。ここでは一例として、単語「deep」の語義「KNOWLEDGE」の語義ベクトルを演算する場合について説明する。
【0056】
語義ベクトル演算部160cは、多義語テーブル150eを参照し、多義語(単語)「deep」と語義「KNOWLEDGE」に対応するグループベクトルV
deep_KNOWLEDGEを取得する。
【0057】
語義ベクトル演算部160cは、英英/国語辞書テーブル150cを参照し、単語「deep」と語義「KNOWLEDGE」に対応する解説文から、特徴単語を抽出する。たとえば、語義ベクトル演算部160cは、語義「KNOWLEDGE」の解説文「showing great knowledge or understanding」から、特徴単語「great、knowledge、understanding」を抽出する。
【0058】
語義ベクトル演算部160cは、解説文に含まれる単語のうち、グループベクトルの生成もとの類語と同一の単語を、特徴単語から除外する。語義ベクトル演算部160cは、解説文に含まれる単語のうち、冠詞、接続詞を除外する。語義ベクトル演算部160cは、解説文に含まれる単語のうち、showing等の予め定められた、定型単語を除外する。たとえば、語義ベクトル演算部160cは、解説文に含まれる単語のうち、除外対象とならない単語を、特徴単語として抽出する。
【0059】
語義ベクトル演算部160cは、特徴単語「great、knowledge、understanding」と、単語ベクトルテーブル150bとを比較して、各特徴単語のベクトルを取得する。語義ベクトル演算部160cは、各特徴単語のベクトルを基にして、法線ベクトルを算出し、算出した法線ベクトルと、単語「deep」のグループベクトルV
920.17とを合算することで、語義ベクトルV
deep_KNOWLEDGEを演算する。係る処理は、
図1のステップS12に示した処理に対応する。
【0060】
語義ベクトル演算部160cは、多義語「deep」の語義「KNOWLEDGE」に対応する語義ベクトル「V
deep_KNOWLEDGE」を、多義語テーブル150eに登録する。語義ベクトル演算部160cは、多義語「deep」の他の語義、他の多義語の各語義についても、上記に対応する処理を繰り返し実行することで、語義ベクトルを演算し、多義語テーブル150eに登録する。
【0061】
ベクトル判定部160dは、ベクトルの演算対象となる文字列を取得した場合に、取得した文字列に含まれる各単語のベクトルを判定する。たとえば、ベクトル判定部160dは、文字列「You should try to gain a deep understanding of the problem.」等を受け付け、かかる文字列に含まれる各単語のベクトルを判定する。ここでは一例として、単語「deep」の語義ベクトルを判定する場合について説明する。
【0062】
ベクトル判定部160dは、単語「deep」と、語義判定テーブル150fとを比較して、文字列「You should try to gain a deep understanding of the problem.」における、単語「deep」の語義を判定する。たとえば、ベクトル判定部160dは、単語「deep」の後ろに、共起単語「understanding」が出現しているため、単語「deep」の語義を「KNOWLEDGE」と判定する。
【0063】
ベクトル判定部160dは、単語「deep」の語義を「KNOWLEDGE」に対応する語義ベクトルを、多義語テーブル150eから取得し、単語「deep」に割り当てる。
【0064】
次に、本実施例に係る語義ベクトル生成装置100の処理手順の一例について説明する。
図12は、語義ベクトルを算出する処理を示すフローチャートである。
図12に示すように、語義ベクトル生成装置100の単語ベクトル演算部160aは、テキストデータ10に含まれる各単語のベクトルを演算し、単語ベクトルテーブル150bに登録する(ステップS101)。
【0065】
語義ベクトル生成装置100のグループベクトル演算部160bは、テキストデータ10に含まれる複数の単語からベクトル演算の対象となる単語を選択する(ステップS102)。グループベクトル演算部160bは、類語辞書テーブル150aを基にして、選択した単語の類語を判定する(ステップS103)。
【0066】
グループベクトル演算部160bは、各類語のベクトルを、単語ベクトルテーブル150bから取得する(ステップS104)。グループベクトル演算部160bは、各類語のベクトルを基にして、グループベクトルを演算する(ステップS105)。
【0067】
語義ベクトル生成装置100の語義ベクトル演算部160cは、語義ベクトルの演算対象となる単語および語義を選択する(ステップS106)。語義ベクトル演算部160cは、英英/国語辞書テーブル150cを参照し、語義に対応する解説文を基にして、特徴単語を抽出する(ステップS107)。
【0068】
語義ベクトル演算部160cは、特徴単語のベクトルを基にして、単語のグループベクトルを補正することで、語義ベクトルを生成する(ステップS108)。語義ベクトル演算部160cは、語義ベクトルを、多義語テーブル150eに登録する(ステップS109)。
【0069】
図13は、単語に対応する語義ベクトルを判定する処理を示すフローチャートである。
図13に示すように、語義ベクトル生成装置100のベクトル判定部160dは、テキストデータ10に含まれる複数の単語から、単語を選択する(ステップS201)。
【0070】
ベクトル判定部160dは、語義判定テーブル150fを基にして、単語の語義を判定する(ステップS202)。ベクトル判定部160dは、単語および語義と、多義語テーブル150eとを基にして、語義ベクトルを判定する(ステップS203)。
【0071】
次に、本実施例に係る語義ベクトル生成装置100の効果について説明する。語義ベクトル生成装置100は、対象の単語のベクトルおよび単語の類語のベクトルを合算したグループベクトルを、対象の語義の解説文に含まれる特徴単語のベクトルによって補正することで、対象の単語の語義ベクトルを生成する。このため、同一の単語であっても、単語の語義に適合した語義ベクトルを語義毎に生成することができる。従って、語義ベクトルの語義への適合性を向上することができる。
【0072】
語義ベクトル生成装置100は、対象の単語のベクトルおよび単語の類語のベクトルに基づく法線ベクトルを合算することで、グループベクトルを算出するため、対象の単語および類語を代表するベクトルを精度良く算出できる。
【0073】
語義ベクトル生成装置100は、対象の単語の語義に対応する説明文に含まれる特徴単語のベクトルと、グループベクトルとを基にして、対象の単語の語義ベクトルを生成するため、語義ベクトルを精度良く算出することができる。
【0074】
語義ベクトル生成装置100は、ベクトルの特定対象となる対象単語を受け付けた場合に、対象単語の語義を判定し、多義語テーブル150eを基にして、対象単語の語義ベクトルを特定する。このため、単語の語義に応じたベクトルを特定することができる。
【0075】
ここで、本実施例で説明した語義ベクトル生成装置100と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。
図14は、語義ベクトル生成装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【0076】
図14に示すように、コンピュータ200は、各種演算処理を実行するCPU201と、ユーザからのデータの入力を受け付ける入力装置202と、ディスプレイ203とを有する。また、コンピュータ200は、記憶媒体からプログラム等を読み取る読み取り装置204と、無線ネットワークを介して他のコンピュータとの間でデータの授受を行うインタフェース装置205とを有する。また、コンピュータ200は、各種情報を一時記憶するRAM206と、ハードディスク装置207とを有する。そして、各装置201〜207は、バス208に接続される。
【0077】
ハードディスク装置207は、単語ベクトル演算プログラム207a、グループベクトル演算プログラム207b、語義ベクトル演算プログラム207c、ベクトル判定プログラム207dを有する。CPU201は、単語ベクトル演算プログラム207a、グループベクトル演算プログラム207b、語義ベクトル演算プログラム207c、ベクトル判定プログラム207dを読み出してRAM206に展開する。
【0078】
単語ベクトル演算プログラム207aは、単語ベクトル演算プロセス206aとして機能する。グループベクトル演算プログラム207bは、グループベクトル演算プロセス206bとして機能する。語義ベクトル演算プログラム207cは、語義ベクトル演算プロセス206cとして機能する。ベクトル判定プログラム207dは、ベクトル判定プロセス206dとして機能する。
【0079】
単語ベクトル演算プロセス206aの処理は、単語ベクトル演算部160aの処理に対応する。グループベクトル演算プロセス206bの処理は、グループベクトル演算部160bの処理に対応する。語義ベクトル演算プロセス206cの処理は、語義ベクトル演算部160cの処理に対応する。ベクトル判定プロセス206dの処理は、ベクトル判定部160dの処理に対応する。
【0080】
なお、各プログラム207a〜207dについては、必ずしも最初からハードディスク装置207に記憶させておかなくても良い。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ200が各プログラム207a〜207dを読み出して実行するようにしても良い。
【0081】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0082】
(付記1)テキストデータに含まれる複数の単語のベクトルを取得し、
語義の類似性が基準を満たす複数の単語を該複数の単語のグループに対応づけて記憶する記憶部を参照して、いずれかのグループに含まれる単語を抽出し、
取得した前記複数の単語のベクトルのうち、抽出した前記単語のベクトルに基づき、前記いずれかのグループに応じたベクトルを生成し、
複数の語義を含む単語の各語義の説明を該単語に対応づけて記憶する記憶部を参照して、取得した前記複数の単語のベクトルのうち、抽出した前記単語のいずれかの語義の説明に含まれる単語のベクトルを特定し、
特定した前記ベクトルと、生成した前記ベクトルとに基づき、前記いずれかの語義に応じたベクトルを生成する
処理をコンピュータに実行させることを特徴とする語義ベクトル生成プログラム。
【0083】
(付記2)前記いずれかのグループに応じたベクトルを生成する処理は、第1の単語のベクトルと、前記第1の単語の類語となる複数の第2の単語のベクトルとに基づく法線ベクトルを算出することで、前記第1の単語と前記複数の第2の単語とのグループのベクトルを生成することを特徴とする付記1に記載の語義ベクトル生成プログラム。
【0084】
(付記3)前記単語のベクトルを特定する処理は、前記第1の単語の第1の語義の説明に含まれる複数の第3の単語のベクトルを特定し、前記いずれかの語義に応じたベクトルを生成する処理は、前記第1の単語と前記複数の第2の単語とのグループのベクトルと、前記複数の第3の単語のベクトルとを基にして、前記第1の単語の前記第1の語義に応じたベクトルを生成することを特徴とする付記2に記載の語義ベクトル生成プログラム。
【0085】
(付記4)単語と、前記単語の語義と、前記語義に応じたベクトルとを対応づけて記憶部に記憶し、ベクトルの特定対象となる対象単語を受け付けた場合に、前記対象単語の語義を判定し、判定結果および前記記憶部とを基にして、前記対象単語のベクトルを特定する処理を更に実行させることを特徴とする付記1に記載の語義ベクトル生成プログラム。
【0086】
(付記5)コンピュータが実行する語義ベクトル生成方法であって、
テキストデータに含まれる複数の単語のベクトルを取得し、
語義の類似性が基準を満たす複数の単語を該複数の単語のグループに対応づけて記憶する記憶部を参照して、いずれかのグループに含まれる単語を抽出し、
取得した前記複数の単語のベクトルのうち、抽出した前記単語のベクトルに基づき、前記いずれかのグループに応じたベクトルを生成し、
複数の語義を含む単語の各語義の説明を該単語に対応づけて記憶する記憶部を参照して、取得した前記複数の単語のベクトルのうち、抽出した前記単語のいずれかの語義の説明に含まれる単語のベクトルを特定し、
特定した前記ベクトルと、生成した前記ベクトルとに基づき、前記いずれかの語義に応じたベクトルを生成する
処理を実行することを特徴とする語義ベクトル生成方法。
【0087】
(付記6)前記いずれかのグループに応じたベクトルを生成する処理は、第1の単語のベクトルと、前記第1の単語の類語となる複数の第2の単語のベクトルとに基づく法線ベクトルを算出することで、前記第1の単語と前記複数の第2の単語とのグループのベクトルを生成することを特徴とする付記5に記載の語義ベクトル生成方法。
【0088】
(付記7)前記単語のベクトルを特定する処理は、前記第1の単語の第1の語義の説明に含まれる複数の第3の単語のベクトルを特定し、前記いずれかの語義に応じたベクトルを生成する処理は、前記第1の単語と前記複数の第2の単語とのグループのベクトルと、前記複数の第3の単語のベクトルとを基にして、前記第1の単語の前記第1の語義に応じたベクトルを生成することを特徴とする付記6に記載の語義ベクトル生成方法。
【0089】
(付記8)単語と、前記単語の語義と、前記語義に応じたベクトルとを対応づけて記憶部に記憶し、ベクトルの特定対象となる対象単語を受け付けた場合に、前記対象単語の語義を判定し、判定結果および前記記憶部とを基にして、前記対象単語のベクトルを特定する処理を更に実行させることを特徴とする付記5に記載の語義ベクトル生成方法。
【0090】
(付記9)テキストデータに含まれる複数の単語のベクトルを取得する単位ベクトル演算部と、
語義の類似性が基準を満たす複数の単語を該複数の単語のグループに対応づけて記憶する記憶部を参照して、いずれかのグループに含まれる単語を抽出し、取得した前記複数の単語のベクトルのうち、抽出した前記単語のベクトルに基づき、前記いずれかのグループに応じたベクトルを生成するグループベクトル演算部と、
複数の語義を含む単語の各語義の説明を該単語に対応づけて記憶する記憶部を参照して、取得した前記複数の単語のベクトルのうち、抽出した前記単語のいずれかの語義の説明に含まれる単語のベクトルを特定し、特定した前記ベクトルと、生成した前記ベクトルとに基づき、前記いずれかの語義に応じたベクトルを生成する語彙ベクトル演算部と
を有することを特徴とする語義ベクトル生成装置。
【0091】
(付記10)前記グループベクトル演算部は、第1の単語のベクトルと、前記第1の単語の類語となる複数の第2の単語のベクトルとに基づく法線ベクトルを算出することで、前記第1の単語と前記複数の第2の単語とのグループのベクトルを生成することを特徴とする付記9に記載の語義ベクトル生成装置。
【0092】
(付記11)前記語彙ベクトル演算部は、前記第1の単語の第1の語義の説明に含まれる複数の第3の単語のベクトルを特定し、前記いずれかの語義に応じたベクトルを生成する処理は、前記第1の単語と前記複数の第2の単語とのグループのベクトルと、前記複数の第3の単語のベクトルとを基にして、前記第1の単語の前記第1の語義に応じたベクトルを生成することを特徴とする付記10に記載の語義ベクトル生成装置。
【0093】
(付記12)前記語彙ベクトル演算部は、単語と、前記単語の語義と、前記語義に応じたベクトルとを対応づけて記憶部に記憶し、
ベクトルの特定対象となる対象単語を受け付けた場合に、前記対象単語の語義を判定し、判定結果および前記記憶部とを基にして、前記対象単語のベクトルを特定するベクトル判定部を更に有することを特徴とする付記9に記載の語義ベクトル生成装置。