(57)【要約】【課題】  ベクトルを精度良く評価することができる。【解決手段】  本発明による言語処理装置は、文言を入力する文言入力部と、単語と、前記単語を識別する複数の識別番号とをそれぞれ対応させた辞書を入力する辞書入力部と、前記識別番号に対応し、前記単語をベクトル表現した複数の単語ベクトルを入力する単語ベクトル入力部と、前記複数の単語ベクトルのうち、いずれかの単語ベクトルを訂正する単語ベクトル訂正部と、前記複数の単語ベクトルを比較する比較部とを備える。【選択図】図１
2019128789.tif 000002
【特許請求の範囲】
【請求項１】
文言を入力する文言入力部と、
単語と、前記単語を識別する複数の識別番号とをそれぞれ対応させた辞書を入力する辞書入力部と、
前記識別番号に対応し、前記単語をベクトル表現した複数の単語ベクトルを入力する単語ベクトル入力部と、
前記複数の単語ベクトルのうち、いずれかの単語ベクトルを訂正する単語ベクトル訂正部と、
前記複数の単語ベクトルを比較する比較部と
を備える言語処理装置。
【請求項２】
前記比較部は、前記複数の単語ベクトルに差異があると判断すると、前記単語を削除する請求項１に記載の言語処理装置。
【請求項３】
前記単語ベクトル入力部は、２つの単語ベクトルを入力し、
前記単語ベクトル訂正部は、前記２つの単語ベクトルを交互に訂正する請求項１又は２に記載の言語処理装置。
【請求項４】
言語処理装置が行う言語処理方法であって、
言語処理装置が、文言を入力する文言入力手順と、
言語処理装置が、単語と、前記単語を識別する複数の識別番号とをそれぞれ対応させた辞書を入力する辞書入力手順と、
言語処理装置が、前記識別番号に対応し、前記単語をベクトル表現した複数の単語ベクトルを入力する単語ベクトル入力手順と、
言語処理装置が、前記複数の単語ベクトルのうち、いずれかの単語ベクトルを訂正する単語ベクトル訂正手順と、
言語処理装置が、前記複数の単語ベクトルを比較する比較手順と
を含む言語処理方法。
【請求項５】
コンピュータに言語処理方法を実行させるためのプログラムであって、
コンピュータが、文言を入力する文言入力手順と、
コンピュータが、単語と、前記単語を識別する複数の識別番号とをそれぞれ対応させた辞書を入力する辞書入力手順と、
コンピュータが、前記識別番号に対応し、前記単語をベクトル表現した複数の単語ベクトルを入力する単語ベクトル入力手順と、
コンピュータが、前記複数の単語ベクトルのうち、いずれかの単語ベクトルを訂正する単語ベクトル訂正手順と、
コンピュータが、前記複数の単語ベクトルを比較する比較手順と
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、言語処理装置、言語処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、音声認識、文字認識、機械翻訳又は質問応答等の言語処理サービスが提供されている。このような言語処理サービスを実現させるため、機械学習を行う方法が知られている。
【０００３】
例えば、単語に対応する埋め込みベクトルと呼ばれるベクトルを学習する方法が知られている（例えば、非特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の方法では、単語をベクトル表現した、いわゆる単語ベクトル等のベクトルが精度良く評価できない場合がある。
【０００５】
本発明の一態様は、ベクトルを精度良く評価することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一実施形態による、言語処理装置は、
文言を入力する文言入力部と、
単語と、前記単語を識別する複数の識別番号とをそれぞれ対応させた辞書を入力する辞書入力部と、
前記識別番号に対応し、前記単語をベクトル表現した複数の単語ベクトルを入力する単語ベクトル入力部と、
前記複数の単語ベクトルのうち、いずれかの単語ベクトルを訂正する単語ベクトル訂正部と、
前記複数の単語ベクトルを比較する比較部と
を備えることを特徴とする。
【発明の効果】
【０００７】
本発明の実施形態によって、ベクトルを精度良く評価することができる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態に係る言語処理装置の全体構成例を示す機能ブロック図である。
【図２】本実施形態に係る言語処理装置のハードウェア構成例を示すブロック図である。
【図３】本実施形態に係る言語処理装置による全体処理例を示すフローチャートである。
【図４】本実施形態に係る辞書の例を示す図である。
【図５】本実施形態に係る単語ベクトルデータの例を示す図である。
【図６】本実施形態に係る言語処理装置による単語の取り出し例を示す図である。
【図７】第２実施形態に係る言語処理装置の全体構成例を示す機能ブロック図である。
【発明を実施するための形態】
【０００９】
以下、発明を実施するための最適な形態について、図面を参照して説明する。
【００１０】
ベクトルは、例えば、単語ベクトル等である。また、単語ベクトルは、自然言語処理等で用いられ、単語をベクトル表現したものである。なお、単語ベクトルは、単語を分散表現又は埋め込み表現したデータと呼ばれる場合もある。
【００１１】
単語ベクトルは、各単語の特徴等を示すため、単語ベクトルが近傍となる単語は、同じような特徴である場合が多い。例えば、単語ベクトルが近い単語は、文章等において同じような意味又は形式等で用いられやすいので、前後に現れる、すなわち、一緒に用いられる単語も類似しやすい。例えば、「本」という単語と、「書籍」という単語は、同じような用いられ方をするため、単語ベクトルも近くなる場合が多い。また、単語ベクトルが近いか否かは、例えば、２つの単語ベクトルの内積値等で判断できる。
【００１２】
また、単語ベクトルには、あらかじめ次元数が設定される。次元数は、ベクトルを構成する要素の数となる。したがって、次元数が大きいと、多様な単語を表現できる。例えば、次元数を「３」とすると、単語ベクトルは、単語ベクトルＶ＝（０．１，０．２，０．３）のように、３つの要素で構成される。なお、単語ベクトルの要素が示すそれぞれの値は、初期値及び範囲があらかじめ設定される。
【００１３】
以下、単語ベクトルの次元数を「３」とする例で説明する。ただし、次元数は、３以外でもよい。次元数は、各単語の特徴等を示すため、次元数が多いと、多様に表現できるため、多くの単語を表現できる。一方で、次元数が少ないと、処理対象となる要素が少ないため、記憶領域又は計算量等を少なくできる。例えば、日本語又は英語によって記載される文章を対象とする場合には、次元数は、１００乃至３００程度であるのが望ましい。すなわち、１００乃至３００程度の次元数であると、単語ベクトルは、日本語又は英語の文章において登場するそれぞれの単語を異なるように表現することができ、かつ、単語ベクトルのデータ量等が大量になるのを防ぐことができる。
【００１４】
＜第１実施形態＞
＜全体構成例＞
図１は、本実施形態に係る言語処理装置の全体構成例を示す機能ブロック図である。例えば、言語処理装置１０は、図示するように、文言入力部１０Ｆ１、辞書入力部１０Ｆ２、単語ベクトル入力部１０Ｆ３、単語ベクトル訂正部１０Ｆ４及び比較部１０Ｆ５を備える機能構成である。
【００１５】
文言入力部１０Ｆ１は、文言ＤＣ１を入力する文言入力手順を行う。例えば、文言入力部１０Ｆ１は、図２に示す入力装置１０Ｈ３又はインタフェース（ｉｎｔｅｒｆａｃｅ）１０Ｈ５等によって実現される。
【００１６】
辞書入力部１０Ｆ２は、辞書Ｄ１を入力する辞書入力手順を行う。例えば、辞書入力部１０Ｆ２は、図２に示す入力装置１０Ｈ３又はインタフェース１０Ｈ５等によって実現される。
【００１７】
単語ベクトル入力部１０Ｆ３は、単語ベクトルを入力する単語ベクトル入力手順を行う。例えば、単語ベクトル入力部１０Ｆ３は、図２に示す入力装置１０Ｈ３又はインタフェース１０Ｈ５等によって実現される。
【００１８】
単語ベクトル訂正部１０Ｆ４は、単語ベクトルデータＤ２に含まれる単語ベクトルを訂正する単語ベクトル訂正手順を行う。例えば、単語ベクトル訂正部１０Ｆ４は、図２に示すＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０Ｈ１等によって実現される。
【００１９】
比較部１０Ｆ５は、複数の単語ベクトルを比較する比較手順を行う。例えば、比較部１０Ｆ５は、図２に示すＣＰＵ１０Ｈ１等によって実現される。
【００２０】
以下、図示するような機能構成である場合を例に説明する。
【００２１】
＜ハードウェア構成例＞
図２は、本実施形態に係る言語処理装置のハードウェア構成例を示すブロック図である。例えば、言語処理装置１０は、図示するようなハードウェア構成である。すなわち、言語処理装置１０は、いわゆるＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等である情報処理装置である。具体的には、図示するように、言語処理装置１０は、ＣＰＵ１０Ｈ１、記憶装置１０Ｈ２、入力装置１０Ｈ３、出力装置１０Ｈ４及びインタフェース１０Ｈ５等を有するハードウェア構成である。
【００２２】
ＣＰＵ１０Ｈ１は、演算装置及び制御装置の例である。
【００２３】
記憶装置１０Ｈ２は、メモリ等の主記憶装置である。なお、記憶装置１０Ｈ２は、ハードディスク等の補助記憶装置を有してもよい。
【００２４】
入力装置１０Ｈ３は、ユーザによる操作等を入力する装置である。例えば、入力装置１０Ｈ３は、キーボード及びコネクタ等である。
【００２５】
出力装置１０Ｈ４は、演算結果等をユーザに出力する装置である。例えば、出力装置１０Ｈ４は、ディスプレイ及びコネクタ等である。
【００２６】
インタフェース１０Ｈ５は、ネットワーク又は記録媒体等によって外部とデータを入出力する装置である。例えば、インタフェース１０Ｈ５は、コネクタ又はアンテナ等である。
【００２７】
なお、ハードウェア構成は、図示する構成に限られない。例えば、記憶装置、演算装置又は制御装置は、内部又は外部に複数ある構成でもよい。
【００２８】
＜全体処理例＞
図３は、本実施形態に係る言語処理装置による全体処理例を示すフローチャートである。
【００２９】
＜辞書の入力例＞（ステップＳ１０１）
ステップＳ１０１では、言語処理装置は、辞書Ｄ１を入力する。例えば、辞書Ｄ１は、以下のようなデータである。
【００３０】
図４は、本実施形態に係る辞書の例を示す図である。図示するように、辞書Ｄ１は、単語と、識別番号とを対応させるデータである。
【００３１】
図における「単語」には、「Ａ」、「Ｂ」、「Ｃ」、・・・といった単語が入力される。そして、図示する「第１識別番号」のように、辞書Ｄ１には、「単語」に対して、各単語を識別できるそれぞれの識別番号が入力される。
【００３２】
さらに、辞書Ｄ１には、図示するように、「第１識別番号」とは別に、「第２識別番号」のように「単語」に対応する識別番号が入力される。このように、辞書Ｄ１は、１つの単語に対して異なる複数の識別番号を対応させる。なお、図示する例では、「第１識別番号」と、「第２識別番号」とは、例えば、下記（１）式のような関係である
第２識別番号＝第１識別番号＋ＮＷ・・・（１）式
なお、図示する例では、上記（１）式における定数「ＮＷ」は、「ＮＷ＝１２８」である。また、定数「ＮＷ」は、あらかじめ設定される値である。図示するような構成であると、「第１識別番号」は、「１」乃至「ＮＷ」の範囲となる。一方で、「第２識別番号」は、「１＋ＮＷ」乃至「ＮＷ＋ＮＷ」の範囲となる。
【００３３】
なお、上記（１）式のように関係があらかじめ設定される場合には、図４のように「第２識別番号」を入力せず、「第１識別番号」から上記（１）式等を用いて、「第２識別番号」を算出できる構成等でもよい。
【００３４】
以下、識別番号が「第１識別番号」及び「第２識別番号」の２つであって、２つの識別番号は、上記（１）式に示すように「第２識別番号＝第１識別番号＋１２８」の関係である例で説明する。なお、識別番号は、３つ以上あってもよい。また、各識別番号の関係は、上記のような関係に限られない。
【００３５】
＜単語ベクトルデータの入力例＞（ステップＳ１０２）
ステップＳ１０２では、言語処理装置は、単語ベクトルデータＤ２を入力する。例えば、単語ベクトルデータＤ２は、以下のようなデータである。
【００３６】
図５は、本実施形態に係る単語ベクトルデータの例を示す図である。図示するように、単語ベクトルデータＤ２は、識別番号と、単語ベクトルとを対応させるデータである。したがって、識別番号が定まると、単語ベクトルデータＤ２によって、言語処理装置は、識別番号に対応する単語ベクトルが特定できる。また、単語ベクトルデータＤ２における「識別番号」は、辞書Ｄ１における「第１識別番号」又は「第２識別番号」に対応する。
【００３７】
具体的には、この例では、「Ａ」という単語に対しては、辞書Ｄ１によって、「１」及び「１２９」の２つの識別番号が対応する。したがって、「Ａ」という単語に対しては、単語ベクトルデータＤ２によって、「（０．１，０．５，０．２）」及び「（０．２，０．６，０．２）」という２つの単語ベクトルが特定される。
【００３８】
＜文言の入力例＞（ステップＳ１０３）
ステップＳ１０３では、言語処理装置は、文言を入力する。以下、単語を含む文章等を「文言」という。文言は、例えば、テキストデータ又はユーザの操作等によって入力される。
【００３９】
＜文言に含まれる単語の取り出し例＞（ステップＳ１０４）
ステップＳ１０４では、言語処理装置は、文言に含まれる単語を取り出す。例えば、言語処理装置は、以下のように処理を行う。
【００４０】
図６は、本実施形態に係る言語処理装置による単語の取り出し例を示す図である。まず、図示するような文言ＤＣ１がステップＳ１０３で入力されたとする。図示するように、文言ＤＣ１は、「Ｂ」、「Ｃ」及び「Ｅ」という単語を含む文言の例である。以下、文言ＤＣ１に含まれる「Ｂ」という単語１００が処理対象である例で説明する。
【００４１】
＜第１識別番号とするか第２識別番号とするかの判断例＞（ステップＳ１０５）
ステップＳ１０５では、言語処理装置は、第１識別番号とするか第２識別番号とするかを判断する。すなわち、ステップＳ１０５では、言語処理装置は、ステップＳ１０４で取り出された単語に対応する複数の単語ベクトルのうち、後段の訂正で処理対象とする単語ベクトルを決める。
【００４２】
第１識別番号と判断する場合には（ステップＳ１０５で「第１識別番号」）、言語処理装置は、ステップＳ１０６に進む。一方で、第２識別番号と判断する場合には（ステップＳ１０５で「第２識別番号」）、言語処理装置は、ステップＳ１０７に進む。
【００４３】
＜単語に対応する第１識別番号の取得例＞（ステップＳ１０６）
ステップＳ１０６では、言語処理装置は、単語に対応する第１識別番号を取得する。以下、ステップＳ１０４で取り出される単語を「Ｗ」とする。文言ＤＣ１における単語１００が対象の場合には、「Ｗ＝"Ｂ"」となる。そして、辞書Ｄ１によって、単語１００に対応する第１識別番号は、この例では「２」が取り出される。
【００４４】
＜単語に対応する第２識別番号の取得例＞（ステップＳ１０７）
ステップＳ１０７では、言語処理装置は、単語に対応する第２識別番号を取得する。文言ＤＣ１における単語１００が対象の場合には、「Ｗ＝"Ｂ"」となる。そして、辞書Ｄ１によって、単語１００に対応する第２識別番号は、この例では「１３０」が取り出される。なお、第２識別番号は、上記（１）式等で算出されてもよい。
【００４５】
＜識別番号に対応する単語ベクトルの取得例＞（ステップＳ１０８）
ステップＳ１０８では、言語処理装置は、識別番号に対応する単語ベクトルを取得する。以下、単語ベクトルを「Ｖ」とする。この例では、単語１００であって、第１識別番号を用いる場合には、単語ベクトルは、単語ベクトルデータＤ２によって「Ｖ（２）＝（０．４，０．３，０．１）」となる。
【００４６】
一方で、単語１００であって、第２識別番号を用いる場合には、単語ベクトルは、単語ベクトルデータＤ２によって「Ｖ（１３０）＝（０．１，０．４，０．１）」となる。
【００４７】
＜単語ベクトルの訂正例＞（ステップＳ１０９）
ステップＳ１０９では、言語処理装置は、単語ベクトルを訂正する。単語ベクトルの訂正方法は、例えば、公知の学習方法等でよい。なお、訂正が繰り返し行われることで、いわゆる誤差逆伝播法（Ｂａｃｋｐｒｏｐａｇａｔｉｏｎ）等を実現する。
【００４８】
＜単語が最後か否かの判断例＞（ステップＳ１１０）
ステップＳ１１０では、言語処理装置は、処理対象とした単語が文言における最後であるか否かを判断する。すなわち、ステップＳ１０４乃至ステップＳ１０９は、文言ＤＣ１に含まれる単語の数分、繰り返し行われる。
【００４９】
単語が文言における最後であると判断されると（ステップＳ１１０でＹＥＳ）、言語処理装置は、ステップＳ１１１に進む。一方で、単語が文言における最後でないと判断されると（ステップＳ１１０でＮＯ）、言語処理装置は、ステップＳ１０４に進む。
【００５０】
＜２つの単語ベクトルの比較例＞（ステップＳ１１１）
ステップＳ１１１では、言語処理装置は、２つの単語ベクトルを比較する。例えば、言語処理装置は、２つの単語ベクトルの内積値等を計算する。そして、内積値に基づいて、言語処理装置は、２つの単語ベクトルに差異があるか否かを判断することで、２つの単語ベクトルを比較する。
【００５１】
なお、比較方法は、内積値に基づく方法に限られない。すなわち、比較方法は、複数の単語ベクトルの差異を判定できる方法であればよい。例えば、比較は、２つの単語ベクトルをユーザに出力する等でもよい。
【００５２】
＜２つの単語ベクトルに差異があるか否かの判断例＞（ステップＳ１１２）
ステップＳ１１２では、言語処理装置は、２つの単語ベクトルに差異があるか否かを判断する。判断は、ステップＳ１１１における比較結果に基づいて行われる。
【００５３】
次に、２つの単語ベクトルに差異があると判断されると（ステップＳ１１２でＹＥＳ）、言語処理装置は、ステップＳ１１３に進む。一方で、２つの単語ベクトルに実質的な差異がないと判断されると（ステップＳ１１２でＮＯ）、言語処理装置は、処理を終了する。
【００５４】
＜単語の削除例＞（ステップＳ１１３）
２つの単語ベクトルに差異があると判断された場合（ステップＳ１１２でＹＥＳ）、言語処理装置は、差異があると判断された単語を以降使用しないようにするのが望ましい。具体的には、言語処理装置は、例えば、以下のような処理を行う。
【００５５】
ステップＳ１１３では、言語処理装置は、単語を削除する。すなわち、言語処理装置は、辞書Ｄ１及び単語ベクトルデータＤ２から、差異があると判断された単語を削除する。なお、ステップＳ１１３は、単語の削除に限られず、差異があると判断された単語の使用を制限する処理であればよい。
【００５６】
このような処理が行われると、単語は、辞書Ｄ１等からなくなるため、言語処理装置は、以降の処理で単語ベクトルの差異がある単語が使われないようにできる。複数の単語ベクトルに差異がある場合は、学習方法等が誤っている場合がある。そのため、そういった学習がされた単語が用いられると、言語処理において誤りが発生しやすくなる。そこで、誤りの発生原因となりやすい単語が使用されないようにできると、言語処理において誤りが発生するのを少なくできる。
【００５７】
なお、Ｓ１０５は、ランダムな選択切り替えでも良いが、単語ベクトルが２つの場合には、単語ベクトルは、交互に訂正されるのが望ましい。そのため、第１識別番号と、第２識別番号とは、交互に選択されるのが望ましい。このようにすると、各単語ベクトルは、ほぼ均等に訂正されるため、訂正される頻度を均一にすることができる。
【００５８】
＜効果＞
本実施形態では、１つの単語に対して複数の単語ベクトルが登録される。このように、複数の単語ベクトルがあると、単語ベクトルを他の単語ベクトルと比較することができる。
【００５９】
例えば、単語ベクトルを評価する方法としては、人手でテストデータを生成する方法がある。この方法では、テストデータで学習された単語ベクトルをいわゆる正解データとして、各単語ベクトルと比較することで、それぞれの単語ベクトルが評価されるが、テストデータを生成する等の手間及びコスト等が発生する。
【００６０】
一方で、本実施形態のように、複数の単語ベクトルがあると、テストデータ等を生成しなくとも、単語ベクトルを精度良く評価することができる。
【００６１】
また、本実施形態において、全単語に対して、複数の単語ベクトルがあると、テスト用に選んだ一部の単語だけでなく、全単語が、精度良く評価されやすい。そのため、単語ベクトルが網羅的に評価できる。
【００６２】
＜第２実施形態＞
なお、本実施形態は、以下のような構成に適用されてもよい。
【００６３】
＜全体構成例＞
図７は、第１実施形態に係る言語処理装置の全体構成例を示す機能ブロック図である。例えば、言語処理装置１０は、図示するように、文言入力部１０Ｆ１、第１辞書入力部１０Ｆ２１、第１単語ベクトル入力部１０Ｆ２２、第２辞書入力部１０Ｆ２３及び第２単語ベクトル入力部１０Ｆ２４を備える機能構成である。さらに、言語処理装置１０は、図示するように、計算部１０Ｆ２５及び単語ベクトル訂正部１０Ｆ２６を備える機能構成である。
【００６４】
文言入力部１０Ｆ１は、文言ＤＣ１を入力する文言入力手順を行う。例えば、文言入力部１０Ｆ１は、入力装置１０Ｈ３又はインタフェース１０Ｈ５等によって実現される。
【００６５】
第１辞書入力部１０Ｆ２１は、第１辞書ＤＩ１を入力する第１辞書入力手順を行う。例えば、第１辞書入力部１０Ｆ２１は、入力装置１０Ｈ３又はインタフェース１０Ｈ５等によって実現される。
【００６６】
第１単語ベクトル入力部１０Ｆ２２は、第１単語ベクトルを入力する第１単語ベクトル入力手順を行う。例えば、第１単語ベクトル入力部１０Ｆ２２は、入力装置１０Ｈ３又はインタフェース１０Ｈ５等によって実現される。
【００６７】
第２辞書入力部１０Ｆ２３は、第２辞書ＤＩ２を入力する第２辞書入力手順を行う。例えば、第２辞書入力部１０Ｆ２３は、入力装置１０Ｈ３又はインタフェース１０Ｈ５等によって実現される。
【００６８】
第２単語ベクトル入力部１０Ｆ２４は、第２単語ベクトルを入力する第２単語ベクトル入力手順を行う。例えば、第２単語ベクトル入力部１０Ｆ２４は、入力装置１０Ｈ３又はインタフェース１０Ｈ５等によって実現される。
【００６９】
計算部１０Ｆ２５は、例えば、図示するように、内積値計算部１０Ｆ６１、確率値計算部１０Ｆ６２及び第１相違度計算部１０Ｆ６３を有する機能構成である。また、計算部１０Ｆ２５は、第１単語ベクトル及び第２単語ベクトルに基づいて、内積値及び確率値等を計算し、第１相違度を計算する計算手順を行う。例えば、計算部１０Ｆ２５は、ＣＰＵ１０Ｈ１等によって実現される。
【００７０】
単語ベクトル訂正部１０Ｆ２６は、第１単語ベクトルデータＤＶ１に含まれる第１単語ベクトル及び第２単語ベクトルデータＤＶ２に含まれる第２単語ベクトルのうち、少なくともいずれか一方を訂正する単語ベクトル訂正手順を行う。例えば、単語ベクトル訂正部１０Ｆ２６は、ＣＰＵ１０Ｈ１等によって実現される。
【００７１】
第２実施形態は、第１実施形態と比較すると、辞書が複数ある構成となる点が異なる。なお、言語処理装置のハードウェア構成等は、例えば、第１実施形態と同じであり、説明を省略する。
【００７２】
＜効果＞
自然言語処理等では、コーパス（ｃｏｒｐｕｓ）を用いてドメイン適応等が行われる。このような場合には、コーパスにおける単語の種類数は、ドメインにおける単語の種類数と比較すると、多くなる場合が多い。
【００７３】
本実施形態では、第１辞書ＤＩ１にコーパス及びドメインで用いられる単語が登録される。一方で、第２辞書ＤＩ２にドメインで用いられる単語が登録される。このように違いがあると、第１辞書ＤＩ１には、インターネット上等で用いられる様々な単語が登録される。一方で、第２辞書ＤＩ２には、特定の会社等で用いられる単語が登録される。
【００７４】
このような第２辞書ＤＩ２及び第２単語ベクトルがないと、確率値「Ｐ（Ｎ，ｍ）」等は、単語の種類数が多い第１辞書ＤＩ１にある単語分計算される。そのため、計算対象が多いため、言語処理装置は、計算量が多くなる。一方で、本実施形態のように、第２辞書ＤＩ２及び第２単語ベクトルがあると、言語処理装置は、第２辞書ＤＩ２及び第２単語ベクトルで絞られた単語について単語ベクトルを訂正し、学習する。
【００７５】
例えば、本実施形態の構成において、いわゆる訓練データを文言ＤＣ１として入力すると、訓練データに基づいて、１回の訂正で、単語ベクトルが学習率で定まる分、訂正される。これを繰り返すことで、単語ベクトルが学習される。すなわち、上記のような構成で訂正がされると、いわゆる誤差逆伝播法と呼ばれる方法が実現できる。
【００７６】
このような学習を経た単語ベクトルが例えば音声認識における次の単語を推定する処理において用いられると、所定の場面には相応しくない単語が推定されるのを防ぐことができる。ほかにも、このような学習を経た単語ベクトルは、近い単語ベクトルであると似たような意味の単語である場合が多いため、類義語の検索等にも用いることができる。したがって、本実施形態のような構成であると、このような精度の良い単語ベクトルを生成することができる。図示するような複数の辞書がある構成等に、本実施形態は適用されてもよい。
【００７７】
＜その他の実施形態＞
なお、本発明に係る各処理の全部又は一部は、低水準言語又は高水準言語で記述され、コンピュータに言語処理方法を実行させるためのプログラムによって実現されてもよい。すなわち、プログラムは、情報処理装置又は複数の情報処理装置を含む情報処理システム等のコンピュータに各処理を実行させるためのコンピュータプログラムである。
【００７８】
したがって、プログラムに基づいて言語処理方法が実行されると、コンピュータが有する演算装置及び制御装置は、各処理を実行するため、プログラムに基づいて演算及び制御を行う。また、コンピュータが有する記憶装置は、各処理を実行するため、プログラムに基づいて、処理に用いられるデータを記憶する。
【００７９】
また、プログラムは、コンピュータが読み取り可能な記録媒体に記録されて頒布することができる。なお、記録媒体は、磁気テープ、フラッシュメモリ、光ディスク、光磁気ディスク又は磁気ディスク等のメディアである。さらに、プログラムは、電気通信回線を通じて頒布することができる。
【００８０】
なお、本発明に係る実施形態は、言語処理システムによって実現されてもよい。また、言語処理システムは、各処理を冗長、分散、並列、仮想化又はこれらを組み合わせて実行してもよい。
【００８１】
以上、実施形態における一例について説明したが、本発明は、上記実施形態に限定されない。すなわち、本発明の範囲内で種々の変形及び改良が可能である。
【符号の説明】
【００８２】
１０  言語処理装置
１０Ｆ１  文言入力部
１０Ｆ２  辞書入力部
１０Ｆ３  単語ベクトル入力部
１０Ｆ４  単語ベクトル訂正部
１０Ｆ５  比較部
Ｄ１  辞書
Ｄ２  単語ベクトルデータ
ＤＣ１  文言
【先行技術文献】
【非特許文献】
【００８３】
【非特許文献１】Tomas Mikolov、Kai Chen、Greg Corrado、Jeffrey Dean、「Efficient Estimation of Word Representations in Vector Space」、ICLR 2013
【図１】
2019128789.tif 000003
【図２】
2019128789.tif 000004
【図３】
2019128789.tif 000005
【図４】
2019128789.tif 000006
【図５】
2019128789.tif 000007
【図６】
2019128789.tif 000008
【図７】
2019128789.tif 000009