(57)【要約】【課題】２つのコーパスにおける各単語の単語埋め込みベクトルを効率的に学習することができる。【解決手段】基底ベクトル対応決定部２２が、コーパスＡから生成された各単語の単語埋め込みベクトルから得られる基底ベクトルと、コーパスＢから生成された各単語の単語埋め込みベクトルから得られる基底ベクトルとの対応関係を決定する。単語埋め込みベクトル統合部２４が、決定された対応関係に基づいて、コーパスＢに含まれる各単語について単語埋め込みベクトルの要素を並べ替えるように、前記コーパスＢに含まれる各単語について単語埋め込みベクトルを変更する。【選択図】図２
2020205010.tif 000002
【特許請求の範囲】
【請求項１】
コーパスＡから生成された、前記コーパスＡに含まれる各単語についての単語埋め込みベクトルと、前記コーパスＡとは異なるコーパスＢから生成された、前記コーパスＢに含まれる各単語についての単語埋め込みベクトルとに基づいて、前記コーパスＡに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルと、前記コーパスＢに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルとの対応関係を決定する基底ベクトル対応決定部と、
前記決定された前記対応関係に基づいて、前記コーパスＢに含まれる各単語について単語埋め込みベクトルの要素を並べ替えるように、前記コーパスＢに含まれる各単語について単語埋め込みベクトルを変更する単語埋め込みベクトル統合部と、
を含む単語埋め込みベクトル統合装置。
【請求項２】
前記コーパスＡと、前記コーパスＢとは、言語又はドメインが異なる請求項１記載の単語埋め込みベクトル統合装置。
【請求項３】
前記基底ベクトル対応決定部は、前記コーパスＡに含まれる単語の単語埋め込みベクトルの基底ベクトルに関連する単語と、前記コーパスＢに含まれる単語の単語埋め込みベクトルの基底ベクトルに関連する単語とを提示して、前記対応関係の入力を受け付ける請求項１又は請求項２記載の単語埋め込みベクトル統合装置。
【請求項４】
前記単語埋め込みベクトル統合部は、前記コーパスＡと前記コーパスＢとで共通する単語については、前記コーパスＡでの前記単語の単語埋め込みベクトルと、前記変更した前記コーパスＢでの前記単語の単語埋め込みベクトルとの平均ベクトルを、前記単語の単語埋め込みベクトルとする請求項１〜請求項３の何れか１項記載の単語埋め込みベクトル統合装置。
【請求項５】
基底ベクトル対応決定部が、コーパスＡから生成された、前記コーパスＡに含まれる各単語についての単語埋め込みベクトルと、前記コーパスＡとは異なるコーパスＢから生成された、前記コーパスＢに含まれる各単語についての単語埋め込みベクトルとに基づいて、前記コーパスＡに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルと、前記コーパスＢに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルとの対応関係を決定し、
単語埋め込みベクトル統合部が、前記決定された前記対応関係に基づいて、前記コーパスＢに含まれる各単語について単語埋め込みベクトルの要素を並べ替えるように、前記コーパスＢに含まれる各単語について単語埋め込みベクトルを変更する
単語埋め込みベクトル統合方法。
【請求項６】
コーパスＡから生成された、前記コーパスＡに含まれる各単語についての単語埋め込みベクトルと、前記コーパスＡとは異なるコーパスＢから生成された、前記コーパスＢに含まれる各単語についての単語埋め込みベクトルとに基づいて、前記コーパスＡに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルと、前記コーパスＢに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルとの対応関係を決定し、
前記決定された前記対応関係に基づいて、前記コーパスＢに含まれる各単語について単語埋め込みベクトルの要素を並べ替えるように、前記コーパスＢに含まれる各単語について単語埋め込みベクトルを変更する
ことをコンピュータに実行させるための単語埋め込みベクトル統合プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、単語埋め込みベクトル統合装置、単語埋め込みベクトル統合方法、及び単語埋め込みベクトル統合プログラムに関する。
【背景技術】
【０００２】
単語埋め込みベクトルとは単語をある固定次元のベクトルとして表現する手法であり、様々なベクトル化の手法が提案されている。具体的には、行列分解（例えば、Ｓｉｎｇｕｌａｒ  Ｖａｌｕｅ  Ｄｅｃｏｍｐｏｓｉｔｉｏｎ（ＳＶＤ）、Ｎｏｎｎｅｇａｔｉｖｅ  Ｍａｔｒｉｘ  Ｆａｃｔｏｒｉｚａｔｉｏｎ  （ＮＭＦ））を用いる手法や、ＬＤＡなどトピックモデルを用いることで、単語埋め込みベクトルを得ることができる。ただし、こうした手法は計算時間を要するため、最近ではＷｏｒｄ２Ｖｅｃ（非特許文献１）やＧｌｏＶｅ（非特許文献２）がよく用いられる。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Tomas Mikolov, and Ilya Sutskever and Kai Chen and Greg Corrado S and Jeff Dean, Jeff. 2013. "Distributed Representations of Words and Phrases and their Compositionality" In Proceedings of the Advances in Neural Information Processing Systems 26, pp.3111‐3119
【非特許文献２】Jeffrey Pennington, Richard Socher, and Christopher-Manning. 2014. "Glove: Global vectors for wordrepresentation." In Proceedings of the 2014 Conference on Empirical Methods in Natural Language-Processing (EMNLP), pp. 1532-1543
【発明の概要】
【発明が解決しようとする課題】
【０００４】
単語埋め込みベクトルを得るための学習は、一つの大規模なコーパスを対象として行われる。よって、一旦単語埋め込みベクトルを学習した後、新たな単語の単語埋め込みベクトルをそこに追加しようとすると、その単語を含む新たなコーパスを用意し、先に利用したコーパスと新たなコーパスをまとめた上で１つのコーパスとして、再度、単語埋め込みベクトルを学習し直す必要がある。また、先に学習した単語埋め込みベクトルと異なる言語の単語を追加しようと、２つの言語をまとめたコーパスを作成して単語ベクトルを学習したとしても、そもそもその学習自体がうまくいかない。
【０００５】
開示の技術は、上記の点に鑑みてなされたものであり、２つのコーパスにおける各単語の単語埋め込みベクトルを効率的に学習することができる単語埋め込みベクトル統合装置、単語埋め込みベクトル統合方法、及び単語埋め込みベクトル統合プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本開示の第１態様は、単語埋め込みベクトル統合装置であって、コーパスＡから生成された、前記コーパスＡに含まれる各単語についての単語埋め込みベクトルと、前記コーパスＡとは異なるコーパスＢから生成された、前記コーパスＢに含まれる各単語についての単語埋め込みベクトルとに基づいて、前記コーパスＡに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルと、前記コーパスＢに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルとの対応関係を決定する基底ベクトル対応決定部と、前記決定された前記対応関係に基づいて、前記コーパスＢに含まれる各単語について単語埋め込みベクトルの要素を並べ替えるように、前記コーパスＢに含まれる各単語について単語埋め込みベクトルを変更する単語埋め込みベクトル統合部と、を含む。
【０００７】
本開示の第２態様は、単語埋め込みベクトル統合方法であって、基底ベクトル対応決定部が、コーパスＡから生成された、前記コーパスＡに含まれる各単語についての単語埋め込みベクトルと、前記コーパスＡとは異なるコーパスＢから生成された、前記コーパスＢに含まれる各単語についての単語埋め込みベクトルとに基づいて、前記コーパスＡに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルと、前記コーパスＢに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルとの対応関係を決定し、単語埋め込みベクトル統合部が、前記決定された前記対応関係に基づいて、前記コーパスＢに含まれる各単語について単語埋め込みベクトルの要素を並べ替えるように、前記コーパスＢに含まれる各単語について単語埋め込みベクトルを変更する。
【０００８】
本開示の第３態様は、単語埋め込みベクトル統合プログラムであって、コーパスＡから生成された、前記コーパスＡに含まれる各単語についての単語埋め込みベクトルと、前記コーパスＡとは異なるコーパスＢから生成された、前記コーパスＢに含まれる各単語についての単語埋め込みベクトルとに基づいて、前記コーパスＡに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルと、前記コーパスＢに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルとの対応関係を決定し、前記決定された前記対応関係に基づいて、前記コーパスＢに含まれる各単語について単語埋め込みベクトルの要素を並べ替えるように、前記コーパスＢに含まれる各単語について単語埋め込みベクトルを変更することをコンピュータに実行させるためのプログラムである。
【発明の効果】
【０００９】
開示の技術によれば、２つのコーパスにおける各単語の単語埋め込みベクトルを効率的に学習することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態の単語埋め込みベクトル統合装置として機能するコンピュータの一例の概略ブロック図である。
【図２】本実施形態の単語埋め込みベクトル統合装置の構成を示すブロック図である。
【図３】単語埋め込みベクトル生成部による処理を説明するための図である。
【図４】基底ベクトル対応決定部による処理を説明するための図である。
【図５】単語埋め込みベクトルの要素を並べ替える方法を説明するための図である。
【図６】本実施形態の単語埋め込みベクトル統合装置の単語埋め込みベクトル統合処理ルーチンを示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、開示の技術の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一又は等価な構成要素及び部分には同一の参照符号を付与している。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【００１２】
＜本実施形態の単語埋め込みベクトル統合装置の構成＞
図１は、本実施形態の単語埋め込みベクトル統合装置１０のハードウェア構成を示すブロック図である。
【００１３】
図１に示すように、単語埋め込みベクトル統合装置１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３、ストレージ１４、入力部１５、表示部１６及び通信インタフェース（Ｉ／Ｆ）１７を有する。各構成は、バス１９を介して相互に通信可能に接続されている。
【００１４】
ＣＰＵ１１は、中央演算処理ユニットであり、各種プログラムを実行したり、各部を制御したりする。すなわち、ＣＰＵ１１は、ＲＯＭ１２又はストレージ１４からプログラムを読み出し、ＲＡＭ１３を作業領域としてプログラムを実行する。ＣＰＵ１１は、ＲＯＭ１２又はストレージ１４に記憶されているプログラムに従って、上記各構成の制御及び各種の演算処理を行う。本実施形態では、ＲＯＭ１２又はストレージ１４には、２つのコーパスの単語埋め込みベクトルを統合するための単語埋め込みベクトル統合プログラムが格納されている。単語埋め込みベクトル統合プログラムは、１つのプログラムであっても良いし、複数のプログラム又はモジュールで構成されるプログラム群であっても良い。
【００１５】
ＲＯＭ１２は、各種プログラム及び各種データを格納する。ＲＡＭ１３は、作業領域として一時的にプログラム又はデータを記憶する。ストレージ１４は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）又はＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。
【００１６】
入力部１５は、マウス等のポインティングデバイス、及びキーボードを含み、各種の入力を行うために使用される。
【００１７】
表示部１６は、例えば、液晶ディスプレイであり、各種の情報を表示する。表示部１６は、タッチパネル方式を採用して、入力部１５として機能しても良い。
【００１８】
通信インタフェース１７は、他の機器と通信するためのインタフェースであり、例えば、イーサネット（登録商標）、ＦＤＤＩ、Ｗｉ−Ｆｉ（登録商標）等の規格が用いられる。
【００１９】
次に、単語埋め込みベクトル統合装置１０の機能構成について説明する。
【００２０】
図２は、単語埋め込みベクトル統合装置１０の機能構成の例を示すブロック図である。
【００２１】
図２に示すように、単語埋め込みベクトル統合装置１０は、機能構成として、単語埋め込みベクトル生成部２０、基底ベクトル対応決定部２２、及び単語埋め込みベクトル統合部２４を有する。各機能構成は、ＣＰＵ１１がＲＯＭ１２又はストレージ１４に記憶された単語埋め込みベクトル統合プログラムを読み出し、ＲＡＭ１３に展開して実行することにより実現される。
【００２２】
単語埋め込みベクトル生成部２０は、入力部１５により入力されたコーパスＡを受け取り、コーパスＡに含まれる各単語についての単語埋め込みベクトルからなる単語埋め込みベクトルの集合を生成し、基底ベクトル対応決定部２２へと渡す。また、単語埋め込みベクトル生成部２０は、入力部１５により入力された、コーパスＡとは異なるコーパスＢを受け取り、コーパスＢに含まれる各単語についての単語埋め込みベクトルからなる単語埋め込みベクトルの集合を生成し、基底ベクトル対応決定部２２へと渡す。
【００２３】
具体的には、単語埋め込みベクトル生成部２０は、以下の手順で異なる２つの単語埋め込みベクトルの集合を生成する。
【００２４】
まず、単語埋め込みベクトル生成部２０は、コーパスＡから単語埋め込みベクトルの集合を生成する。なお、単語埋め込みベクトルはｄ次元のベクトルとして表現されるものとし、コーパスＡ中の単語の異なり総数をｎとする（図３参照）。コーパスＡ中の単語の異なり総数とは、コーパスＡ中に出現する単語の種類数である。コーパスＡに含まれる各単語についての単語埋め込みベクトルからなる単語埋め込みベクトルの集合を、ｎ×ｄ行列とみなすことができるので、この行列をＳと表す。次に、単語埋め込みベクトル生成部２０は、別のコーパスＢを用いて同じくｄ次元の単語埋め込みベクトルの集合を生成する。なお、コーパスＢ中の単語の異なり総数はｍとする。コーパスＢに含まれる各単語についての単語埋め込みベクトルからなる単語埋め込みベクトルの集合を、ｍ×ｄ行列とみなすことができるので、この行列をＴと表す。このように単語埋め込みベクトル生成部２０は行列Ｓ、Ｔを生成し、基底ベクトル対応決定部２２へと渡す。単語埋め込みベクトルの生成には非特許文献１、２などの既存の技術を利用すれば良い。
【００２５】
ここで、コーパスＡと、コーパスＢとは、言語又はドメインが異なるものとする。
【００２６】
基底ベクトル対応決定部２２は、コーパスＡに含まれる各単語についての単語埋め込みベクトルを表す行列Ｓと、コーパスＢに含まれる各単語についての単語埋め込みベクトルを表す行列Ｔとに基づいて、行列Ｓの縦ベクトルとして得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルと、行列Ｔの縦ベクトルとして得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルとの対応関係を決定する。
【００２７】
具体的には、基底ベクトル対応決定部２２は、以下に説明するように、基底ベクトルの対応関係を決定する。
【００２８】
行列Ｓのｉ番目の横ベクトルＳｉ，：はｉ番目の単語埋め込みベクトルを表し、行列Ｓのｊ番目の縦ベクトルＳ：，ｊはｊ番目の基底ベクトルとなる。行列Ｔについても横ベクトルが単語埋め込みベクトルであり、縦ベクトルが基底ベクトルである。行列Ｓも行列Ｔも基底ベクトルの数はｄであることから、行列Ｓと行列Ｔの基底ベクトルとの間の１対１の対応関係を決定することができれば、異なる２つの行列の間で基底ベクトルが対応することになるので２つの単語埋め込みベクトルの集合を統合することができる。基底ベクトルの１対１対応関係は、既存技術、たとえば、Ｍａｔｃｈｉｎｇ  ＣＣＡ  （非特許文献３）、Ｋｅｒｎｅｌｉｚｅｄ  Ｓｏｔｒｉｎｇ（非特許文献４）などを利用すればよい。
【００２９】
［非特許文献３］Aria Haghighiand Percy Liang and Taylor Berg-Kirkpatrick and Dan Klein, 2008, "Learning Bilingual Lexicons from Monolingual Cor-pora" In Proceedings of ACL-08:HLT,pp. 771-779
【００３０】
［非特許文献４］Novi Quadrianto and Le Song and Alex J. Smola, 2009, "Kernelized Sorting" In Proceedings of the Advances in Neural Information Processing Systems 21
【００３１】
なお、Ｍａｔｃｈｉｎｇ  ＣＣＡ、又はＫｅｒｎｅｌｉｚｅｄ  Ｓｏｒｔｉｎｇを利用する場合には、確度の高い対応関係を得るために、シードとなる基底ベクトルの対応関係を人手で与える必要がある。
【００３２】
この場合、基底ベクトル対応決定部２２は、コーパスＡに含まれる単語の単語埋め込みベクトルの基底ベクトルに関連する単語と、コーパスＢに含まれる単語の単語埋め込みベクトルの基底ベクトルに関連する単語とを提示して、基底ベクトルの対応関係を受け付ける。例えば、基底ベクトル対応決定部２２は、コーパスＡに含まれる単語のうち、各基底ベクトルに対応する要素のスコアが高いｋ個の単語を、基底ベクトル毎にユーザに提示する。また、基底ベクトル対応決定部２２は、コーパスＢに含まれる単語のうち、各基底ベクトルに対応する要素のスコアが高いｋ個の単語を、基底ベクトル毎にユーザに提示する。そして、基底ベクトル対応決定部２２は、ユーザから、関連する単語の意味が似ている基底ベクトルの対応関係を受け付けることにより、基底ベクトルの対応関係を決定する。このように決定した基底ベクトルの対応関係を単語埋め込みベクトル統合部２４へと渡す。１対１の対応関係は図４下部の表のように表せる。ただし、あるセルが１をとる場合、その上下左右どのセルも１をとることができない。
【００３３】
単語埋め込みベクトル統合部２４は、基底ベクトルの対応関係を受け取り、コーパスＡ側の単語埋め込みベクトルの要素を固定し、対応関係に従って、コーパスＢ側の単語埋め込みベクトルの要素を並べ替えるように、コーパスＢに含まれる各単語について単語埋め込みベクトルを変更する。これにより、コーパスＡ側の単語埋め込みベクトルの集合と、コーパスＢ側の単語埋め込みベクトルの集合とが統合される。
【００３４】
例えば、基底ベクトルの対応関係として、（Ｓ：，１；  Ｔ：，３）、（Ｓ：，２；Ｔ：，１）、（Ｓ：，３；Ｔ：，４）、（Ｓ：，４；Ｔ：，２）、という対応関係が得られた場合には、図５に示すように、行列Ｔの基底ベクトルを並べ替え、Ｔｓｏｒｔ＝［Ｔ：，３Ｔ：，１Ｔ：，４Ｔ：，２］を得ることにより、コーパスＢ側の単語埋め込みベクトルの要素を並べ替える。このように、基底ベクトルの対応関係が定まると、コーパスＡ、Ｂに含まれるどの単語も同一のベクトル空間に存在することになる。つまり、異なるコーパスから独立に得た単語埋め込みベクトルの集合を同一の空間にマップすることができる。なお、コーパスＡとコーパスＢに同一の単語がある場合には、平均ベクトルをその単語の埋め込みベクトルとする。具体的には、単語埋め込みベクトル統合部２４は、コーパスＡとコーパスＢとで共通する単語が存在する場合、当該単語については、コーパスＡでの単語の単語埋め込みベクトルと、変更したコーパスＢでの単語の単語埋め込みベクトルとの平均ベクトルを、当該単語の単語埋め込みベクトルとする。
【００３５】
＜本実施形態の単語埋め込みベクトル統合装置の作用＞
次に、単語埋め込みベクトル統合装置１０の作用について説明する。
【００３６】
図６は、単語埋め込みベクトル統合装置１０による単語埋め込みベクトル統合処理の流れを示すフローチャートである。ＣＰＵ１１がＲＯＭ１２又はストレージ１４から単語埋め込みベクトル統合プログラムを読み出して、ＲＡＭ１３に展開して実行することにより、単語埋め込みベクトル統合処理が行なわれる。
【００３７】
ステップＳ１００において、ＣＰＵ１１は、単語埋め込みベクトル生成部２０として、入力部１５により入力されたコーパスＡを受け取り、コーパスＡに含まれる各単語についての単語埋め込みベクトルからなる単語埋め込みベクトルの集合を生成する。
【００３８】
ステップＳ１０２において、ＣＰＵ１１は、単語埋め込みベクトル生成部２０として、入力部１５により入力されたコーパスＢを受け取り、コーパスＢに含まれる各単語についての単語埋め込みベクトルからなる単語埋め込みベクトルの集合を生成する。
【００３９】
ステップＳ１０４において、ＣＰＵ１１は、基底ベクトル対応決定部２２として、コーパスＡに含まれる各単語についての単語埋め込みベクトルを表す行列Ｓと、前記コーパスＢに含まれる各単語についての単語埋め込みベクトルを表す行列Ｔとに基づいて、行列Ｓの縦ベクトルとして得られる基底ベクトルと、行列Ｔの縦ベクトルとして得られる基底ベクトルとの対応関係を決定する。
【００４０】
ステップＳ１０６において、ＣＰＵ１１は、単語埋め込みベクトル統合部２４として、基底ベクトルの対応関係を受け取り、コーパスＡ側の単語埋め込みベクトルの要素を固定し、対応関係に従って、コーパスＢ側の単語埋め込みベクトルの要素を並べ替えるように、コーパスＢに含まれる各単語について単語埋め込みベクトルを変更する。
【００４１】
以上説明したように、本実施形態の単語埋め込みベクトル統合装置は、コーパスＡに含まれる各単語の単語埋め込みベクトルから得られる基底ベクトルと、コーパスＢに含まれる各単語の単語埋め込みベクトルから得られる基底ベクトルとの対応関係を決定する。また、単語埋め込みベクトル統合装置は、決定された対応関係に基づいて、コーパスＢに含まれる各単語について単語埋め込みベクトルの要素を並べ替えるように、コーパスＢに含まれる各単語について単語埋め込みベクトルを変更する。これにより、２つのコーパスにおける各単語の単語埋め込みベクトルを効率的に学習することができる。特に、一旦、あるコーパスについて単語埋め込みベクトルを学習した後、そこに言語を問わず新たな単語を追加するように、単語埋め込みベクトルを学習することができる。
【００４２】
また、独立に作成した２つの単語埋め込みベクトルの集合を統合し、１つの単語埋め込みベクトルの集合として扱うことができる。単語埋め込みベクトルは独立に作成してよいので、計算効率が良い。また、２つの単語埋め込みベクトルを作成するためのコーパスは言語、ドメインを限らないため、異なる言語間で単語の類似性を計算する、同一言語で異なるドメインの単語の類似性を計算する、といったことが可能となる。
【００４３】
また、独立に学習した２つの単語埋め込みベクトルの集合を再学習することなく１つの単語埋め込みベクトルの集合として扱うことができる。また、２つのコーパスから得られた単語埋め込みベクトルの基底ベクトルの１対１対応を決定することで、２つのコーパスから得られた単語埋め込みベクトルを統合することができる。
【００４４】
なお、上記各実施形態でＣＰＵがソフトウェア（プログラム）を読み込んで実行した単語埋め込みベクトル統合処理を、ＣＰＵ以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等の製造後に回路構成を変更可能なＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）、及びＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、単語埋め込みベクトル統合処理を、これらの各種のプロセッサのうちの１つで実行してもよいし、同種又は異種の２つ以上のプロセッサの組み合わせ（例えば、複数のＦＰＧＡ、及びＣＰＵとＦＰＧＡとの組み合わせ等）で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
【００４５】
また、上記各実施形態では、単語埋め込みベクトル統合プログラムがストレージ１４に予め記憶（インストール）されている態様を説明したが、これに限定されない。プログラムは、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ−ＲＯＭ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、及びＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリ等の非一時的（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ）記憶媒体に記憶された形態で提供されてもよい。また、プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
【００４６】
また、単語埋め込みベクトル統合装置において、コーパスから単語埋め込みベクトルの集合を生成する場合を例に説明したが、これに限定されるものではない。外部装置において生成された、あるコーパスの単語埋め込みベクトルの集合を入力として受け付けるようにしてもよい。
【００４７】
以上の実施形態に関し、更に以下の付記を開示する。
【００４８】
（付記項１）
メモリと、
前記メモリに接続された少なくとも１つのプロセッサと、
を含み、
前記プロセッサは、
コーパスＡから生成された、前記コーパスＡに含まれる各単語についての単語埋め込みベクトルと、前記コーパスＡとは異なるコーパスＢから生成された、前記コーパスＢに含まれる各単語についての単語埋め込みベクトルとに基づいて、前記コーパスＡに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルと、前記コーパスＢに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルとの対応関係を決定し、
前記決定された前記対応関係に基づいて、前記コーパスＢに含まれる各単語について単語埋め込みベクトルの要素を並べ替えるように、前記コーパスＢに含まれる各単語について単語埋め込みベクトルを変更する、
ように構成されている単語埋め込みベクトル統合装置。
【００４９】
（付記項２）
単語埋め込みベクトル統合処理を実行するようにコンピュータによって実行可能なプログラムを記憶した非一時的記憶媒体であって、
前記単語埋め込みベクトル統合処理は、
コーパスＡから生成された、前記コーパスＡに含まれる各単語についての単語埋め込みベクトルと、前記コーパスＡとは異なるコーパスＢから生成された、前記コーパスＢに含まれる各単語についての単語埋め込みベクトルとに基づいて、前記コーパスＡに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルと、前記コーパスＢに含まれる各単語の単語埋め込みベクトルから得られる、各単語の単語埋め込みベクトルにおける同一要素の値からなる基底ベクトルとの対応関係を決定し、
前記決定された前記対応関係に基づいて、前記コーパスＢに含まれる各単語について単語埋め込みベクトルの要素を並べ替えるように、前記コーパスＢに含まれる各単語について単語埋め込みベクトルを変更する、
非一時的記憶媒体。
【符号の説明】
【００５０】
１０   単語埋め込みベクトル統合装置
２０   単語埋め込みベクトル生成部
２２   基底ベクトル対応決定部
２４   単語埋め込みベクトル統合部
【図１】
2020205010.tif 000003
【図２】
2020205010.tif 000004
【図３】
2020205010.tif 000005
【図４】
2020205010.tif 000006
【図５】
2020205010.tif 000007
【図６】
2020205010.tif 000008