(57)【要約】【課題】出発ドメインのテキストを目的ドメインのテキストへ変換すること。【解決手段】出発ドメインのテキストを目的ドメインのテキストへ変換するデータ生成装置１は、出発ドメインのテキストと目的ドメインを示す目的ドメイン情報とを取得するテキスト取得部１２と、機械学習用の目的ドメインのテキストと目的ドメイン情報とに基づく機械学習を行って生成された学習済みモデルに対して、取得された出発ドメインのテキストと目的ドメイン情報とに基づく入力を行うことで、出発ドメインのテキスト中の単語位置における単語候補の出現確率に関する確率情報を算出し、算出した確率情報に基づいて当該単語位置における単語を当該単語位置における単語候補に置換した置換テキストを生成するテキスト置換部１３と、生成された置換テキストを目的ドメインのテキストとして出力するテキスト出力部１４と、を備える。【選択図】図１０
2020112915.tif 000002
【特許請求の範囲】
【請求項１】
一のドメインである出発ドメインのテキストを、出発ドメインとは異なるドメインである目的ドメインのテキストへ変換するデータ生成装置であって、
機械学習用の目的ドメインのテキストと目的ドメインを示す目的ドメイン情報とに基づく機械学習を行って生成された学習済みモデルを格納する格納部と、
出発ドメインのテキストと目的ドメイン情報とを取得する取得部と、
前記格納部によって格納された学習済みモデルに対して、前記取得部によって取得された出発ドメインのテキストと目的ドメイン情報とに基づく入力を行うことで、出発ドメインのテキスト中の単語位置における単語候補の出現確率に関する確率情報を算出し、算出した確率情報に基づいて当該単語位置における単語を当該単語位置における単語候補に置換した置換テキストを生成する置換部と、
前記置換部によって生成された置換テキストを目的ドメインのテキストとして出力する出力部と、
を備えるデータ生成装置。
【請求項２】
前記置換部は、前記格納部によって格納された学習済みモデルに対して、当該置換部によって生成した置換テキストと前記取得部によって取得された目的ドメイン情報とに基づく入力を行うことで、当該置換テキスト中の単語位置における単語候補の確率情報を算出し、算出した確率情報に基づいて当該単語位置における単語を当該単語位置における単語候補に置換した置換テキストを生成する、
請求項１に記載のデータ生成装置。
【請求項３】
前記置換部は、複数の単語位置それぞれにおける単語候補の確率情報を算出し、算出した確率情報に基づいて当該複数の単語位置それぞれにおける単語を当該複数の単語位置それぞれにおける単語候補に置換した置換テキストを生成する、
請求項１又は２に記載のデータ生成装置。
【請求項４】
前記置換部は、単語位置における単語を単語位置における単語候補に含まれる複数の単語それぞれに置換した複数の置換テキストを生成する、
請求項１〜３の何れか一項に記載のデータ生成装置。
【請求項５】
前記置換部は、置換する際に、置換後のテキストについて目的ドメインのテキストとしての適切度を算出し、所定の適切度よりも高い置換後のテキストを置換テキストとして生成する、
請求項１〜４の何れか一項に記載のデータ生成装置。
【請求項６】
前記出力部は、前記置換部によって生成された置換テキストについて目的ドメインのテキストとしての適切度を算出し、所定の適切度よりも高い置換テキストを目的ドメインのテキストとして出力する、
請求項１〜５の何れか一項に記載のデータ生成装置。
【請求項７】
前記格納部によって格納された学習済みモデルは、順方向リカレントニューラルネットワークと逆方向リカレントニューラルネットワークとを備える双方向リカレントニューラルネットワークで構成され、
前記置換部が算出する確率情報は、順方向リカレントニューラルネットワークに基づいて算出した確率情報と逆方向リカレントニューラルネットワークに基づいて算出した確率情報とに基づく、
請求項１〜６の何れか一項に記載のデータ生成装置。
【請求項８】
機械学習用の目的ドメインのテキストと目的ドメインを示す目的ドメイン情報とに基づく機械学習を行って学習済みモデルを生成する生成部をさらに備え、
前記格納部は、前記生成部によって生成された学習済みモデルを格納する、
請求項１〜７の何れか一項に記載のデータ生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一のドメインである出発ドメインのテキストを、出発ドメインとは異なるドメインである目的ドメインのテキストへ変換するデータ生成装置に関する。
【背景技術】
【０００２】
下記特許文献１では、テキストデータから抽出されたｎ単語連鎖（ｎは正整数）に含まれる単語を同義語で置換することにより新たなｎ単語連鎖を生成する言語モデル生成装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−２４３２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記言語モデル生成装置は、ｎ単語連鎖に含まれる単語を置換したテキストデータを生成するが、目的とするドメインのテキストデータを生成することはできない。
【０００５】
そこで本発明はかかる課題に鑑みて為されたものであり、出発ドメインのテキストを目的ドメインのテキストへ変換することができるデータ生成装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、本発明の一側面に係るデータ生成装置は、一のドメインである出発ドメインのテキストを、出発ドメインとは異なるドメインである目的ドメインのテキストへ変換するデータ生成装置であって、機械学習用の目的ドメインのテキストと目的ドメインを示す目的ドメイン情報とに基づく機械学習を行って生成された学習済みモデルを格納する格納部と、出発ドメインのテキストと目的ドメイン情報とを取得する取得部と、格納部によって格納された学習済みモデルに対して、取得部によって取得された出発ドメインのテキストと目的ドメイン情報とに基づく入力を行うことで、出発ドメインのテキスト中の単語位置における単語候補の出現確率に関する確率情報を算出し、算出した確率情報に基づいて当該単語位置における単語を当該単語位置における単語候補に置換した置換テキストを生成する置換部と、置換部によって生成された置換テキストを目的ドメインのテキストとして出力する出力部と、を備える。
【０００７】
このようなデータ生成装置によれば、機械学習用の目的ドメインのテキストと目的ドメインを示す目的ドメイン情報とに基づく機械学習を行って生成された学習済みモデルに対して、取得された出発ドメインのテキストと目的ドメイン情報とに基づく入力を行うことで、例えば、出発ドメインのテキストを、目的ドメインにより沿ったテキストへ変換することができる。すなわち、出発ドメインのテキストを目的ドメインのテキストへ変換することができる。
【発明の効果】
【０００８】
本発明によれば、出発ドメインのテキストを目的ドメインのテキストへ変換することができる。
【図面の簡単な説明】
【０００９】
【図１】ニューラルネットワークを表現する図である。
【図２】リカレントニューラルネットワークを表現する図である。
【図３】リカレントニューラルネットワーク言語モデルの適用事例（その１）を説明する図である。
【図４】リカレントニューラルネットワーク言語モデルの適用事例（その２）を説明する図である。
【図５】リカレントニューラルネットワーク言語モデルの適用事例（その３）を説明する図である。
【図６】時間方向に展開したリカレントニューラルネットワーク言語モデルを表現する図である。
【図７】時間方向に展開したリカレントニューラルネットワーク言語モデルの適用事例を説明する図である。
【図８】双方向リカレントニューラルネットワーク言語モデルの適用事例を説明する図である。
【図９】ドメイン制約付き双方向リカレントニューラルネットワーク言語モデルの適用事例を説明する図である。
【図１０】本発明の実施形態に係るデータ生成装置の機能ブロック図である。
【図１１】本発明の実施形態に係る言語モデルの適用事例を説明する図である。
【図１２】目的ドメインのテキストの生成事例を説明する図である。
【図１３】本発明の実施形態に係るデータ生成装置で実行されるデータ生成処理を示すフローチャートである。
【図１４】本発明の実施形態に係るデータ生成装置のハードウェア構成図である。
【発明を実施するための形態】
【００１０】
以下、図面とともに本発明の実施形態に係るデータ生成装置１について詳細に説明する。なお、図面の説明においては同一要素には同一符号を付し、重複する説明を省略する。また、以下の説明における実施形態は、本発明の具体例であり、特に本発明を限定する旨の記載がない限り、これらの実施形態に限定されないものとする。
【００１１】
まず図１〜９を用いて、背景技術及びデータ生成装置１を着想した背景について説明する。
【００１２】
図１は、ニューラルネットワーク（Neural  Network：ＮＮ）を表現する図である。図１（ａ）及び図１（ｂ）は、ニューラルネットワークを表現する際によく使われる図である。図１（ａ）と図１（ｂ）とは同じニューラルネットワークを示している。図１（ａ）は、順伝搬ニューラルネットワークであり、入力は順に、４次元ベクトルの入力層、３次元ベクトルの中間層、４次元ベクトルの出力層に伝搬される。同様に、図１（ｂ）は、順伝搬ニューラルネットワークであり、入力は順に、４次元ユニットの入力層、３次元ユニットの中間層、４次元ユニットの出力層に伝搬される。本実施形態では、図１（ａ）のように、ある層のユニットを長方形の箱（ベクトル）を用いて表現するものとする。なお次元数は任意であり、本実施形態では５０，０００次元などの高次元を扱うことを想定しているが、これに限るものではない。
【００１３】
再帰構造を持つニューラルネットワークをリカレント（再帰）ニューラルネットワーク（Recurrent  Neural  Network：ＲＮＮ）と呼ぶ。図２は、リカレントニューラルネットワークを表現する図である。図２に示す通り、リカレントニューラルネットワークは、中間層が再帰結合されている構成を備える。リカレントニューラルネットワークは、可変長の入力を受け付けることができ、時系列情報をモデル化することができるため、自然言語処理及び音声認識等でよく使われる。
【００１４】
言語モデル（Language  Model：ＬＭ）について説明する。言語モデルとは、テキスト（文章、単語列）に対して、確率を付与する確率モデルである。言語モデルは、良い（文として成り立つ）テキストには高い確率を付与し、悪い（文として成り立たない）テキストには低い確率を付与する（ように適応化する）。良いテキストとは、適切なテキスト、適確なテキスト、自然なテキスト、妥当なテキスト、適当なテキスト及び相応しいテキストと読み替えることができる。一方、悪いテキストとは、不適切なテキスト、不適確なテキスト、不自然なテキスト、妥当ではないテキスト、適当ではないテキスト及び相応しくないテキストと読み替えることができる。良いテキストの一例として「昨日渋谷に行って、買い物した。欲しかったスニーカーを買えたので嬉しかった。」が挙げられる。一方、悪いテキストの一例として「買い物した昨日行って、。欲しかった嬉しかったスニーカーを渋谷に買えたので。」が挙げられる。なお、テキストの良し悪しを表す確率は、言語モデルの機械学習用の学習データに含まれるテキストに依存する。
【００１５】
リカレントニューラルネットワーク言語モデルについて説明する。リカレントニューラルネットワーク言語モデルとは、リカレントニューラルネットワークでモデル化した言語モデルである。リカレントニューラルネットワーク言語モデルは、再帰構造を備えるため、１つ前の単語（形態素解析などにより単語分割したテキストにおいて着目している単語の１つ前の単語）を考慮しながら次の単語の確率を計算することができる。また、文中の単語を１つずつ入力及び出力を繰り返すことでテキストを生成することができる。図３〜５を用いて、リカレントニューラルネットワーク言語モデルを使ってテキスト「昨日｜渋谷｜に｜行っ｜て｜、｜買い物｜し｜た｜。」に確率を付与する事例を説明する。なお、テキスト中の「｜」は、形態素解析などにより単語分割されている箇所を示す。
【００１６】
図３〜５は、リカレントニューラルネットワーク言語モデルの適用事例を説明する図である。具体的には、図３は、リカレントニューラルネットワーク言語モデルの入力層に、テキストの最初であることを示す「＜ＢＯＳ＞」（Beginning  Of  Sentence：ＢＯＳ）を入力した際に、「＜ＢＯＳ＞」の次に「昨日」が来る確率を算出する場面を示す図である。なお、入力層に単語を入力するとは、具体的には、入力層に当該単語に対応する単語ベクトルを入力するなど、一般的な言語モデルで採用されている所定の処理を行ったデータを入力することを意味し、以降の入力層に関する説明でも同様であり、以降では説明を省略する。図３に示す通り、出力層からは語彙数（出力層のベクトルの次元数）の単語及び当該単語の確率（出現確率）が出力される。なお、出力層ではＳｏｆｔｍａｘ関数など一般的な言語モデルで採用されている所定の処理を用いて適宜確率が算出されるものであり、以降の出力層に関する説明でも同様であり、以降では説明を省略する。具体的には、図３に示す通り、出力層からは、次に「渋谷」が来る（出現する）確率として「０．０３」、次に「品川」が来る確率として「０．０１」、次に「行っ」が来る確率として「０．０２」、次に「買い物」が来る確率として「０．１」、…、次に「昨日」が来る確率として「０．４」及び次に「今日」が来る確率として「０．３」が算出される。すなわち、「＜ＢＯＳ＞」の次に「昨日」が来る確率は「０．４」である。
【００１７】
図４は、リカレントニューラルネットワーク言語モデルの入力層に、１つ前の単語「昨日」を入力した際に、「＜ＢＯＳ＞昨日」の次に「渋谷」が来る確率を算出する場面を示す図である。図４に示す通り、２つ前の単語「＜ＢＯＳ＞」は中間層で再帰的に適用される（「＜ＢＯＳ＞」も考慮される）。図４に示す通り、出力層からは、次に「渋谷」が来る確率として「０．３」、次に「品川」が来る確率として「０．２」、次に「行っ」が来る確率として「０．０１」、次に「買い物」が来る確率として「０．１」、…、次に「昨日」が来る確率として「０．０１」及び次に「今日」が来る確率として「０．０１」が算出される。すなわち、「＜ＢＯＳ＞昨日」の次に「渋谷」が来る確率は「０．３」である。なお、「＜ＢＯＳ＞昨日昨日」という文は不自然なので、「＜ＢＯＳ＞昨日」の次に「昨日」が来る確率は「０．０１」と低くなる。
【００１８】
図５は、リカレントニューラルネットワーク言語モデルの入力層に、１つ前の単語「渋谷」を入力した際に、「＜ＢＯＳ＞昨日渋谷」の次に「に」が来る確率を算出する場面を示す図である。以降はテキストの最後の単語まで図３及び図４と同様の処理が繰り返し行われる。
【００１９】
図６は、時間方向に展開したリカレントニューラルネットワーク言語モデルを表現する図である。図６のように、リカレントニューラルネットワーク言語モデルを時間方向に展開した図がよく使われる。図７は、時間方向に展開したリカレントニューラルネットワーク言語モデルの適用事例を説明する図である。具体的には、図７は、時間方向に展開したリカレントニューラルネットワーク言語モデルの入力層に、テキスト「＜ＢＯＳ＞｜昨日｜渋谷｜に｜行っ｜て｜、｜買い物｜し｜た｜。」の各単語を各時刻（「ｔ＝０」から「ｔ＝１０」）に順に入力した場面を示す図である。各時刻の出力は、次の時刻の入力に使われる。時間方向に展開したリカレントニューラルネットワーク言語モデルでは、各単語に確率が付与されるので、テキストの確率を算出することができる。
【００２０】
双方向リカレントニューラルネットワーク言語モデル（Ｂｉ−ＲＮＮＬＭ）について説明する。双方向リカレントニューラルネットワーク言語モデルは、順方向リカレントニューラルネットワーク言語モデルと逆方向リカレントニューラルネットワーク言語モデルとを備える。順方向リカレントニューラルネットワーク言語モデルは、文の先頭から末尾に向けて順に単語を生成（予測）する言語モデルである。一方、逆方向リカレントニューラルネットワーク言語モデルは、文の末尾から先頭に向けて順に単語を生成（予測）する言語モデルである。図８は、双方向リカレントニューラルネットワーク言語モデルの適用事例を説明する図である。図８は、入力文「鼻｜が｜詰まっ｜て｜いる｜の｜です｜が｜、｜点鼻薬｜は｜あり｜ます｜か｜？」を順方向リカレントニューラルネットワーク言語モデル及び逆方向リカレントニューラルネットワーク言語モデルに適用した場面を示す図である（語彙数は５０，０００）。例えば、順方向リカレントニューラルネットワーク言語モデルに適用した結果、「鼻｜が」の次の単語の確率分布（出現確率）として、「鳴ら」が「０．００１」、「つる」が「０．００２」、…、「かすみ」が「０．００３」及び「痺れ」が「０．０２４」として算出されている。同様に、逆方向リカレントニューラルネットワーク言語モデルに適用した結果、「？｜か｜ます｜…｜いる｜て」の次の単語の確率分布（出現確率）として、「鳴ら」が「０．０００８」、「つる」が「０．０００９」、…、「かすみ」が「０．００１２」及び「痺れ」が「０．０３２」として算出されている。
【００２１】
上述の各種言語モデルを用いることで、例えば次の単語の確率分布に基づいて単語を置換し、元のテキスト（原文）から新しいテキスト（生成文）を生成することができる。しかしながら問題点がある。例えば元のテキスト「この指輪は天然の真珠を使用しております」について、単語「真珠」を単語「手打ち麺」に置換した場合、新しいテキストは「この指輪は天然の手打ち麺を使用しております」となる。元のテキストは小売ドメインのテキストだったにも関わらず、新しいテキストには小売ドメインとは関係無い単語が出てくる。すなわちテキストとして不自然なものとなる。ここでドメインとは、領域、分野、定義域などのことである。例えば小売ドメインのテキストは、小売のドメインでよく利用される単語及び表現（小売のドメインっぽい単語及び表現）などを含むテキストのことを示す。
【００２２】
上述の問題点を解消するために、ドメインの制約を付けたドメイン制約付き双方向リカレントニューラルネットワーク言語モデルを用いることが考えられる。図９は、ドメイン制約付き双方向リカレントニューラルネットワーク言語モデルの適用事例を説明する図である。図９に示す通り、入力文「鼻｜が｜詰まっ｜て｜いる｜の｜です｜が｜…」を単語（単語ベクトル）ごとに入力層に入力する際に、ドメインを示すドメイン情報（ドメインベクトル）もあわせて入力する。すなわち、単語ベクトル入力時にドメイン情報を付与する。なお、言語モデルの学習時には、ドメイン情報付きのコーパスを用いて学習するものとする。これにより、例えば元のテキスト「この指輪は天然の真珠を使用しております」について、入力時に小売ドメインを示すドメイン情報が付与されることで、単語「真珠」が（小売ドメインでよく用いられる）単語「ファー」に置換され、新しいテキストは「この指輪は天然のファーを使用しております」となる。すなわち、元のドメインに関係した単語が候補になりやすくなる。
【００２３】
ここで発想を転換して、テキストのドメインの変換に、言語モデルに対するドメイン情報の付与が利用できるのではないか、という着想に基づいて本発明がなされた。例えば、小売ドメインのテキスト「この指輪は天然の真珠を使用しております」について、飲食ドメインを示すドメイン情報を付与することで、単語「指輪」を飲食ドメインの単語「つけ麺」に置換し、単語「天然」を飲食ドメインの単語「自家製」に置換し、単語「真珠」を飲食ドメインの単語「手打ち麺」に置換することで（変換後のテキストがより自然になるよう複数の単語を置換する）、飲食ドメインのテキスト「このつけ麺は自家製の手打ち麺を使用しております」に変換することができる。これにより、新しいドメインのより自然なテキストを生成することができる。
【００２４】
以上が、背景技術及びデータ生成装置１を着想した背景についての説明である。
【００２５】
図１０は、データ生成装置１の機能ブロック図である。図１０に示す通り、データ生成装置１は、言語モデル生成部１０（生成部）、言語モデル格納部１１（格納部）、テキスト取得部１２（取得部）、テキスト置換部１３（置換部）及びテキスト出力部１４（出力部）を含んで構成される。データ生成装置１は、サーバなどのコンピュータ装置である。データ生成装置１は、一のドメインである出発ドメインのテキストを、出発ドメインとは異なるドメインである目的ドメインのテキストへ変換する。以下、図１０に示すデータ生成装置１の各機能ブロックについて説明する。
【００２６】
言語モデル生成部１０は、機械学習用の目的ドメインのテキスト（コーパス）と目的ドメインを示す目的ドメイン情報とに基づく機械学習を行って学習済みモデルを生成する。機械学習は一般的な技術を用いる。より具体的には、言語モデル生成部１０は、順方向リカレントニューラルネットワークと逆方向リカレントニューラルネットワークとを備える双方向リカレントニューラルネットワークの入力層に、データ生成装置１の管理者及びユーザなどから入力された目的ドメインのテキストの各単語に対応する単語ベクトルと当該目的ドメインを示す目的ドメイン情報（目的ドメインベクトル）とを入力することで、双方向リカレントニューラルネットワーク言語モデルである学習済みモデルを生成する。なお、学習済みモデルは、双方向リカレントニューラルネットワーク言語モデルに限るものではなく、片方向のリカレントニューラルネットワーク言語モデル及びその他のニューラルネットワークに基づく言語モデルであってもよい。なお、言語モデル生成部１０が生成する学習済みモデルは、目的ドメインのテキストと当該目的ドメインを示す目的ドメイン情報とに基づく言語モデルに限らず、出発ドメインのテキストなどの任意のドメインのテキストと、当該出発ドメインを示す出発ドメイン情報などの当該任意のドメインを示すドメイン情報とに基づく学習済みモデルも生成してもよい。言語モデル生成部１０による言語モデルの生成は、学習フェーズである。
【００２７】
学習済みモデルは、コンピュータプログラムとパラメータとの組み合わせである。また、学習済みモデルは、ニューラルネットワークの構造と当該ニューラルネットワークの各ニューロン間の結びつきの強さであるパラメータ（重み付け係数）との組み合わせである。また、学習済みモデルは、コンピュータに対する指令であって、一の結果を得る（所定の処理を実行する）ことができるように組み合わされたもの、すなわち、コンピュータを機能させるコンピュータプログラムである。
【００２８】
言語モデル格納部１１は、機械学習用の目的ドメインのテキストと目的ドメインを示す目的ドメイン情報とに基づく機械学習を行って生成された学習済みモデルを格納する。言語モデル格納部１１によって格納された学習済みモデルは、順方向リカレントニューラルネットワークに基づく言語モデルと逆方向リカレントニューラルネットワークに基づく言語モデルとを備える双方向リカレントニューラルネットワークに基づく言語モデルで構成されてもよいが、これに限るものではなく、片方向のリカレントニューラルネットワークに基づく言語モデル及びその他のニューラルネットワークに基づく言語モデルに基づいて構成されてもよい。言語モデル格納部１１は、言語モデル生成部１０によって生成された学習済みモデルを格納してもよいが、これに限るものではなく、予めデータ生成装置１の管理者及びユーザなどが生成した学習済みモデルを格納してもよいし、他の装置から受信した学習済みモデルを格納してもよい。なお、言語モデル格納部１１が格納する学習済みモデルは、目的ドメインのテキストと当該目的ドメインを示す目的ドメイン情報とに基づく学習済みモデルに限らず、出発ドメインのテキストなどの任意のドメインのテキストと、当該出発ドメインを示す出発ドメイン情報などの当該任意のドメインを示すドメイン情報とに基づく学習済みモデルも格納してもよい。
【００２９】
テキスト取得部１２は、出発ドメインのテキストと目的ドメイン情報とを取得する。より具体的には、テキスト取得部１２は、データ生成装置１のユーザ及び管理者などの端末からネットワークなどを介して出発ドメインのテキストと目的ドメイン情報とを取得する。テキスト取得部１２が取得する出発ドメインのテキストは、上述の通り一（任意）のドメインであり、元となるドメインのテキスト及び既に存在するドメインのテキストなどである。テキスト取得部１２が取得する目的ドメイン情報は、上述の通り目的ドメインを示す目的ドメイン情報であり、当該目的ドメインは、出発ドメインのテキストを変換させたい先のドメイン、すなわち変換後のテキストのドメインなどである。テキスト取得部１２は、取得した出発ドメインのテキストと目的ドメイン情報とを、テキスト置換部１３及びテキスト出力部１４に出力する。
【００３０】
テキスト置換部１３は、言語モデル格納部１１によって格納された学習済みモデルに対して、テキスト取得部１２によって取得（入力）された出発ドメインのテキストと目的ドメイン情報とに基づく入力を行うことで、出発ドメインのテキスト中の単語位置における単語候補の出現確率に関する確率情報を算出し、算出した確率情報に基づいて当該単語位置における単語を当該単語位置における単語候補に置換した置換テキストを生成する。なお、上述した通り、出発ドメインのテキストと目的ドメイン情報とに基づく入力とは、例えば、学習済みモデルの入力層に対する出発ドメインのテキスト中の各単語に対応する単語ベクトルと目的ドメイン情報である目的ドメインベクトルとの入力など、一般的な言語モデルで採用されている所定の処理を行ったデータの入力を意味する。テキスト置換部１３により算出される確率情報とは、学習済みモデルの出力層で出力される、当該単語位置における単語候補の出現確率に関する情報（確率分布など）などである。上述した通り、出力層ではＳｏｆｔｍａｘ関数など一般的な言語モデルで採用されている所定の処理を用いて適宜確率情報が算出されるものである。テキスト置換部１３は、算出した確率情報について、最も確率の高い単語候補に置換した置換テキストを生成してもよいし、算出した確率情報について、閾値である所定の確率よりも高い単語候補の中から所定の基準に基づいて（又はランダムに）選択した単語候補に置換した置換テキストを生成してもよい。テキスト置換部１３は、所定の基準を満たす出発ドメインのテキスト中の単語を優先的に置換してもよい。例えば、テキスト置換部１３は、出発ドメインのテキスト中の単語のうち、名詞、形容詞及び動詞の少なくとも１つである単語を優先的に置換してもよい（助詞などを置換すると処理に時間がかかったり、適切度（後述）の低い置換テキストが生成される）。テキスト置換部１３は、生成した置換テキストをテキスト出力部１４に出力する。
【００３１】
テキスト置換部１３は、言語モデル格納部１１によって格納された学習済みモデルに対して、当該テキスト置換部１３によって生成した置換テキストとテキスト取得部１２によって取得された目的ドメイン情報とに基づく入力を行うことで、当該置換テキスト中の単語位置における単語候補の確率情報を算出し、算出した確率情報に基づいて当該単語位置における単語を当該単語位置における単語候補に置換した置換テキストを生成してもよい。すなわち、テキスト置換部１３は、当該テキスト置換部１３が生成した置換テキストを再帰的に当該テキスト置換部１３に適用することで、さらに置換された置換テキストを生成してもよい。テキスト置換部１３による再帰は、任意の回数であってもよいし、生成された置換テキストの適切度（後述）が閾値である所定の適切度以上になるまで行ってもよい。なお、テキスト置換部１３は、既に置換した単語についてはフラグを立てるなど管理し、既に置換した単語は以後置換対象としないようにしてもよい。
【００３２】
テキスト置換部１３は、複数の単語位置それぞれにおける単語候補の確率情報を算出し、算出した確率情報に基づいて当該複数の単語位置それぞれにおける単語を当該複数の単語位置それぞれにおける単語候補に置換した置換テキストを生成してもよい。すなわち、テキスト置換部１３は、１回の処理で複数（２以上）の単語を置換してもよい。
【００３３】
テキスト置換部１３は、単語位置における単語を単語位置における単語候補に含まれる複数の単語それぞれに置換した複数の置換テキストを生成してもよい。すなわち、テキスト置換部１３は、１回の処理で複数（２以上）の置換テキストを生成してもよい。単語候補に含まれる複数の単語の選択方法の一例としては、閾値である所定の確率よりも高い単語候補を選択することが挙げられる。
【００３４】
テキスト置換部１３は、置換する際に、置換後のテキストについて目的ドメインのテキストとしての適切度を算出し、所定の適切度よりも高い置換後のテキストを置換テキストとして生成してもよい。適切度の算出方法の一例としては、目的ドメインのテキストに含まれる各単語に対して算出された確率の積を求める方法及びビームサーチ（ビーム幅：Ｋ）により自然な文のみ保持する方法などが挙げられるが、これらに限るものではない。
【００３５】
テキスト置換部１３が算出する確率情報は、順方向リカレントニューラルネットワークに基づいて算出した確率情報と逆方向リカレントニューラルネットワークに基づいて算出した確率情報とに基づいてもよい。例えば、テキスト置換部１３が算出する確率情報は、学習済みモデルを構成する順方向リカレントニューラルネットワーク言語モデルに基づいて算出した確率情報が示す確率と、学習済みモデルを構成する逆方向リカレントニューラルネットワーク言語モデルに基づいて算出した確率情報が示す確率との平均などであってもよいが、これに限るものではない。
【００３６】
上述の通り、テキスト置換部１３の複数の処理内容について説明したが、これらを組み合わせてテキスト置換部１３の処理を構成することができる。例えば、テキスト置換部１３が、生成した置換テキストを再帰的に当該テキスト置換部１３に適用する際に、ある再帰の処理では複数の単語を置換し、ある再帰の処理では複数の置換テキストを生成してもよいし、ある再帰の処理では所定の適切度よりも高い置換後のテキストを置換テキストとして生成してもよいし、ある再帰の処理では複数の単語を置換すると共に複数の置換テキストを生成してもよいし、ある再帰の処理では複数の単語を置換すると共に所定の適切度よりも高い置換後のテキストを置換テキストとして生成してもよいし、ある再帰の処理では複数の置換後のテキストを生成すると共に各置換後のテキストについて所定の適切度よりも高い置換後のテキストを置換テキストとして生成してもよいし、ある再帰の処理では複数の単語を置換し、複数の置換後のテキストを生成すると共に各置換後のテキストについて所定の適切度よりも高い置換後のテキストを置換テキストとして生成してもよい。また例えば、テキスト置換部１３が、再帰の処理を行わずに、ある処理では複数の単語を置換すると共に複数の置換テキストを生成してもよいし、ある処理では複数の単語を置換すると共に所定の適切度よりも高い置換後のテキストを置換テキストとして生成してもよいし、ある処理では複数の置換後のテキストを生成すると共に各置換後のテキストについて所定の適切度よりも高い置換後のテキストを置換テキストとして生成してもよいし、ある処理では複数の単語を置換し、複数の置換後のテキストを生成すると共に各置換後のテキストについて所定の適切度よりも高い置換後のテキストを置換テキストとして生成してもよい。
【００３７】
テキスト出力部１４は、テキスト置換部１３によって生成（入力）された置換テキストを目的ドメインのテキストとして出力する。より具体的には、テキスト出力部１４は、置換テキストを目的ドメインのテキストとしてデータ生成装置１の出力装置１００６（後述）に出力（表示）してもよいし、他の装置（データ生成装置１の管理者及びユーザなどの端末など）に出力してもよいが、これらに限るものではない。
【００３８】
テキスト出力部１４は、テキスト置換部１３によって生成された置換テキストについて目的ドメインのテキストとしての適切度を算出し、所定の適切度よりも高い置換テキストを目的ドメインのテキストとして出力してもよい。
【００３９】
テキスト取得部１２、テキスト置換部１３及びテキスト出力部１４による処理は、（言語モデル生成部１０による言語モデルの生成である学習フェーズに対する）テストフェーズである。
【００４０】
図１１は、学習済みモデル（言語モデル）の適用事例を説明する図である。図１１に示す通り、学習済みモデルを構成する順方向の学習済みモデル（隠れ状態ベクトルで構成）と、学習済みモデルを構成する逆方向の学習済みモデル（隠れ状態ベクトルで構成）とのそれぞれに対して、出発ドメインのテキスト「この｜指輪｜は｜天然｜の｜真珠｜を｜使用｜し｜て｜おり｜ます」の各単語の単語ベクトルを、目的ドメインのドメイン情報と共に入力することで、目的ドメインのテキストを生成している。
【００４１】
図１２は、目的ドメインのテキストの生成事例を説明する図である。図１２に示す通り、例えば、出発ドメイン「飲食」の入力文「ここではどうやって天ぷらをオーダーするんですか？」が、データ生成装置１の変換により、目的ドメイン「医療」の出力文「ここではどうやって治療を中止するんですか？」が生成される。
【００４２】
図１３は、データ生成装置１で実行されるデータ生成処理を示すフローチャートである。まず、言語モデル生成部１０によって、目的ドメインの学習用テキストと目的ドメインのドメインベクトルとを用いた機械学習により言語モデルが生成され（ステップＳ１）、生成された言語モデルが言語モデル格納部１１によって格納される。次に、テキスト取得部１２によって、出発ドメインのテキストと目的ドメインのドメインベクトルとが取得される（ステップＳ２）。次に、テキスト置換部１３によって、Ｓ２にて取得された出発ドメインのテキストと目的ドメインのドメインベクトルとが、言語モデル格納部１１によって格納された言語モデルに入力されることで、出発ドメインのテキストの単語位置における単語候補の確率分布が算出される（ステップＳ３）。次に、引き続きテキスト置換部１３によって、出発ドメインのテキストに含まれる単語が、Ｓ３にて算出された確率分布に基づいて別の単語（目的ドメインとして適切な単語）に置換され、置換テキストが生成される（ステップＳ４）。次に、テキスト出力部１４によって、Ｓ４にて生成された置換テキストが、目的ドメインのテキストとして出力される（ステップＳ５）。なお、Ｓ１とＳ２との順は逆でもよい。また、Ｓ４の後に、Ｓ４にて生成された置換テキストに基づいてＳ３及びＳ４の処理を再帰的に実行してもよい。
【００４３】
次に、本実施形態のように構成されたデータ生成装置１の作用効果について説明する。
【００４４】
本実施形態のデータ生成装置１によれば、機械学習用の目的ドメインのテキストと目的ドメインを示す目的ドメイン情報とに基づく機械学習を行って生成された学習済みモデルに対して、取得された出発ドメインのテキストと目的ドメイン情報とに基づく入力を行うことで、例えば、出発ドメインのテキストを、目的ドメインにより沿ったテキストへ変換することができる。すなわち、出発ドメインのテキストを目的ドメインのテキストへ変換することができる。
【００４５】
また、本実施形態のデータ生成装置１によれば、テキスト置換部１３は、言語モデル格納部１１によって格納された学習済みモデルに対して、当該テキスト置換部１３によって生成した置換テキストとテキスト取得部１２によって取得された目的ドメイン情報とに基づく入力を行うことで、当該置換テキスト中の単語位置における単語候補の確率情報を算出し、算出した確率情報に基づいて当該単語位置における単語を当該単語位置における単語候補に置換した置換テキストを生成する。これにより、再帰的な置換が可能となり、より適切な目的ドメインのテキストへ変換することができる。
【００４６】
また、本実施形態のデータ生成装置１によれば、テキスト置換部１３は、複数の単語位置それぞれにおける単語候補の確率情報を算出し、算出した確率情報に基づいて当該複数の単語位置それぞれにおける単語を当該複数の単語位置それぞれにおける単語候補に置換した置換テキストを生成する。これにより、複数の単語を一気に置換することができるため、より高速に目的ドメインのテキストへ変換することができる。
【００４７】
また、本実施形態のデータ生成装置１によれば、テキスト置換部１３は、単語位置における単語を単語位置における単語候補に含まれる複数の単語それぞれに置換した複数の置換テキストを生成する。これにより、複数の置換テキストを生成することができるため、より適切な目的ドメインのテキストを生成することができる可能性が向上する。
【００４８】
また、本実施形態のデータ生成装置１によれば、テキスト置換部１３は、置換する際に、置換後のテキストについて目的ドメインのテキストとしての適切度を算出し、所定の適切度よりも高い置換後のテキストを置換テキストとして生成する。これにより、より適切な（適切度が比較的高い）目的ドメインのテキストへ変換することができる。
【００４９】
また、本実施形態のデータ生成装置１によれば、テキスト出力部１４は、テキスト置換部１３によって生成された置換テキストについて目的ドメインのテキストとしての適切度を算出し、所定の適切度よりも高い置換テキストを目的ドメインのテキストとして出力する。これにより、より適切な（適切度が比較的高い）目的ドメインのテキストへ変換することができる。
【００５０】
また、本実施形態のデータ生成装置１によれば、言語モデル格納部１１によって格納された学習済みモデルは、順方向リカレントニューラルネットワークと逆方向リカレントニューラルネットワークとを備える双方向リカレントニューラルネットワークで構成され、テキスト置換部１３が算出する確率情報は、順方向リカレントニューラルネットワークに基づいて算出した確率情報と逆方向リカレントニューラルネットワークに基づいて算出した確率情報とに基づく。このように順方向リカレントニューラルネットワーク及び逆方向リカレントニューラルネットワークの両方に基づいて確率情報が算出されるため、より適切な（順方向に見ても適切であり、かつ、逆方向に見ても適切な）目的ドメインのテキストへ変換することができる。
【００５１】
また、本実施形態のデータ生成装置１によれば、機械学習用の目的ドメインのテキストと目的ドメインを示す目的ドメイン情報とに基づく機械学習を行って学習済みモデルを生成する言語モデル生成部１０をさらに備え、言語モデル格納部１１は、言語モデル生成部１０によって生成された学習済みモデルを格納する。これにより、データ生成装置１単体で学習済みモデルの生成及び格納が可能となり、利便性が向上する。
【００５２】
以上の通り、本実施形態のデータ生成装置１によれば、ドメインチューニングした言語モデルを用いて入力文のドメインを変換すること、及び、双方向言語モデルにより複数単語を置換することで自然な文を生成することができる。
【００５３】
以下、本実施形態のデータ生成装置１に関する特徴例について列挙する。データ生成装置１では、出発ドメインの特徴的な単語を目的ドメインらしい単語に置き換えることで、出発ドメインから目的ドメインへテキストを変換している。単語置換処理では、変換対象文章（出発ドメイン文章）の１単語を置き換えを行う。１単語置き換えるごとに、生成文の目的ドメインにおけるスコアを計算し、候補文選択を行う。選択された候補文を再度双方向言語モデルに入力し、（上記）単語置換処理を繰り返し行う。
【００５４】
データ生成装置１は、あるドメインのテキストデータを増やすことを目的とする。ドメイン適応された双方向言語モデルを用いて入力テキストの単語置換を行う。データ生成装置１では、各ドメインのテキストの対応付け（例えば、医療ドメインの文章Ａは、交通ドメインの文章Ｂに対応した文章であるなど）は不要である。データ生成装置１では、ドメイン適応化言語モデルを用いる。データ生成装置１では、１つの言語モデル（Ｄｅｃｏｄｅｒ）を利用する。データ生成装置１では、言語モデルを用いて、入力テキスト中の単語置換をすることで文章生成を行う。データ生成装置１では、入力文章中の単語を置換する。データ生成装置１を用いれば、複数のドメイン（例えば、医療ドメイン、小売ドメイン及び飲食ドメイン）間でテキストを相互に変換可能である。データ生成装置１による変換のメリットの例としては、変換元と変換先の対応付けが不要のため、データ作成のコストが低い点及び生成文の品質（流暢さ、文法性）がある程度担保されている点などが挙げられる。
【００５５】
なお、上記実施形態の説明に用いたブロック図は、機能単位のブロックを示している。これらの機能ブロック（構成部）は、ハードウェア及びソフトウェアの少なくとも一方の任意の組み合わせによって実現される。また、各機能ブロックの実現方法は特に限定されない。すなわち、各機能ブロックは、物理的又は論理的に結合した１つの装置を用いて実現されてもよいし、物理的又は論理的に分離した２つ以上の装置を直接的又は間接的に（例えば、有線、無線などを用いて）接続し、これら複数の装置を用いて実現されてもよい。機能ブロックは、上記１つの装置又は上記複数の装置にソフトウェアを組み合わせて実現されてもよい。
【００５６】
機能には、判断、決定、判定、計算、算出、処理、導出、調査、探索、確認、受信、送信、出力、アクセス、解決、選択、選定、確立、比較、想定、期待、見做し、報知（broadcasting）、通知（notifying）、通信（communicating）、転送（forwarding）、構成（configuring）、再構成（reconfiguring）、割り当て（allocating、mapping）、割り振り（assigning）などがあるが、これらに限られない。たとえば、送信を機能させる機能ブロック（構成部）は、送信部（transmitting  unit）や送信機（transmitter）と呼称される。いずれも、上述したとおり、実現方法は特に限定されない。
【００５７】
例えば、本開示の一実施の形態におけるデータ生成装置１などは、本開示のデータ生成方法の処理を行うコンピュータとして機能してもよい。図１４は、本開示の一実施の形態に係るデータ生成装置１のハードウェア構成の一例を示す図である。上述のデータ生成装置１は、物理的には、プロセッサ１００１、メモリ１００２、ストレージ１００３、通信装置１００４、入力装置１００５、出力装置１００６、バス１００７などを含むコンピュータ装置として構成されてもよい。
【００５８】
なお、以下の説明では、「装置」という文言は、回路、デバイス、ユニットなどに読み替えることができる。データ生成装置１のハードウェア構成は、図に示した各装置を１つ又は複数含むように構成されてもよいし、一部の装置を含まずに構成されてもよい。
【００５９】
データ生成装置１における各機能は、プロセッサ１００１、メモリ１００２などのハードウェア上に所定のソフトウェア（プログラム）を読み込ませることによって、プロセッサ１００１が演算を行い、通信装置１００４による通信を制御したり、メモリ１００２及びストレージ１００３におけるデータの読み出し及び書き込みの少なくとも一方を制御したりすることによって実現される。
【００６０】
プロセッサ１００１は、例えば、オペレーティングシステムを動作させてコンピュータ全体を制御する。プロセッサ１００１は、周辺装置とのインターフェース、制御装置、演算装置、レジスタなどを含む中央処理装置（ＣＰＵ：Central  Processing  Unit）によって構成されてもよい。例えば、上述の言語モデル生成部１０、テキスト取得部１２、テキスト置換部１３及びテキスト出力部１４などは、プロセッサ１００１によって実現されてもよい。
【００６１】
また、プロセッサ１００１は、プログラム（プログラムコード）、ソフトウェアモジュール、データなどを、ストレージ１００３及び通信装置１００４の少なくとも一方からメモリ１００２に読み出し、これらに従って各種の処理を実行する。プログラムとしては、上述の実施の形態において説明した動作の少なくとも一部をコンピュータに実行させるプログラムが用いられる。例えば、言語モデル生成部１０、テキスト取得部１２、テキスト置換部１３及びテキスト出力部１４は、メモリ１００２に格納され、プロセッサ１００１において動作する制御プログラムによって実現されてもよく、他の機能ブロックについても同様に実現されてもよい。上述の各種処理は、１つのプロセッサ１００１によって実行される旨を説明してきたが、２以上のプロセッサ１００１により同時又は逐次に実行されてもよい。プロセッサ１００１は、１以上のチップによって実装されてもよい。なお、プログラムは、電気通信回線を介してネットワークから送信されても良い。
【００６２】
メモリ１００２は、コンピュータ読み取り可能な記録媒体であり、例えば、ＲＯＭ（Read  Only  Memory）、ＥＰＲＯＭ（Erasable  Programmable  ＲＯＭ）、ＥＥＰＲＯＭ（Electrically  Erasable  Programmable  ROM）、ＲＡＭ（Random  Access  Memory）などの少なくとも１つによって構成されてもよい。メモリ１００２は、レジスタ、キャッシュ、メインメモリ（主記憶装置）などと呼ばれてもよい。メモリ１００２は、本開示の一実施の形態に係る無線通信方法を実施するために実行可能なプログラム（プログラムコード）、ソフトウェアモジュールなどを保存することができる。
【００６３】
ストレージ１００３は、コンピュータ読み取り可能な記録媒体であり、例えば、ＣＤ−ＲＯＭ（Compact  Disc  ROM）などの光ディスク、ハードディスクドライブ、フレキシブルディスク、光磁気ディスク（例えば、コンパクトディスク、デジタル多用途ディスク、Ｂｌｕ−ｒａｙ（登録商標）ディスク）、スマートカード、フラッシュメモリ（例えば、カード、スティック、キードライブ）、フロッピー（登録商標）ディスク、磁気ストリップなどの少なくとも１つによって構成されてもよい。ストレージ１００３は、補助記憶装置と呼ばれてもよい。上述の記憶媒体は、例えば、メモリ１００２及びストレージ１００３の少なくとも一方を含むデータベース、サーバその他の適切な媒体であってもよい。
【００６４】
通信装置１００４は、有線ネットワーク及び無線ネットワークの少なくとも一方を介してコンピュータ間の通信を行うためのハードウェア（送受信デバイス）であり、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュールなどともいう。通信装置１００４は、例えば周波数分割複信（ＦＤＤ：Frequency  Division  Duplex）及び時分割複信（ＴＤＤ：Time  Division  Duplex）の少なくとも一方を実現するために、高周波スイッチ、デュプレクサ、フィルタ、周波数シンセサイザなどを含んで構成されてもよい。例えば、上述の言語モデル生成部１０、テキスト取得部１２及びテキスト出力部１４などは、通信装置１００４によって実現されてもよい。
【００６５】
入力装置１００５は、外部からの入力を受け付ける入力デバイス（例えば、キーボード、マウス、マイクロフォン、スイッチ、ボタン、センサなど）である。出力装置１００６は、外部への出力を実施する出力デバイス（例えば、ディスプレイ、スピーカー、ＬＥＤランプなど）である。なお、入力装置１００５及び出力装置１００６は、一体となった構成（例えば、タッチパネル）であってもよい。
【００６６】
また、プロセッサ１００１、メモリ１００２などの各装置は、情報を通信するためのバス１００７によって接続される。バス１００７は、単一のバスを用いて構成されてもよいし、装置間ごとに異なるバスを用いて構成されてもよい。
【００６７】
また、データ生成装置１は、マイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ：Digital  Signal  Processor）、ＡＳＩＣ（Application  Specific  Integrated  Circuit）、ＰＬＤ（Programmable  Logic  Device）、ＦＰＧＡ（Field  Programmable  Gate  Array）などのハードウェアを含んで構成されてもよく、当該ハードウェアにより、各機能ブロックの一部又は全てが実現されてもよい。例えば、プロセッサ１００１は、これらのハードウェアの少なくとも１つを用いて実装されてもよい。
【００６８】
ここで、背景技術及び課題について説明する。文書分類及び機械翻訳をはじめとする自然言語処理タスクにおいて、大量かつ高品質な学習データを用いることで、機械学習モデルの性能が向上することが知られている。しかし、ドメインに依っては、データの入手が困難な場合や入手できる数が限られている場合があるため、大量の学習データを用意することは難しい。学習データ量が不十分な場合、高性能な機械学習モデルの作成は難しいため、学習データ量の不足を補うための解決策が望まれる。
【００６９】
機械学習モデルの学習データを収集する際に、ドメインに依ってデータ入手の難しさが異なるため、データに偏りが発生する。例えば、話し言葉のテキストデータを収集する場合、百貨店及びスーパーマーケットなどのショッピングドメインにおける話し言葉と病院の受付や医者との会話などの医療ドメインにおける話し言葉とでは、データの入手の難しさが異なる。例に挙げた両者は、接客の際に使われる話し言葉であるため、敬語などの言い回しは共通する部分が多々あるものの、会話で使われる語彙が異なる。したがって、一方のドメインの話し言葉のテキストデータを他方のドメインのテキストデータとして利用することは難しい。
【００７０】
このように、現実的には、ドメインに依ってデータ入手の難しさや収集できる数が異なるため、データ数に偏りが発生してしまう課題がある。また、機械学習モデルの学習データ数に偏りがある場合、データが豊富なドメインに過学習してしまい、データが少量のドメインにおける精度が低下することが知られている。そのため、データが少量のドメインの学習データ量の不足を補うための解決策が望まれる。
【００７１】
［実施例１］
以下では、実施例１に係るデータ生成装置１Ａについて説明する。なお、データ生成装置１Ａの各機能とデータ生成装置１の各機能は相互に入れ替え可能である。また、符号Ａがついた各種構成は、データ生成装置１における符号Ａが無い構成の機能を適宜有するものとする。データ生成装置１Ａは以下の構成を備える。
［項目１］
対象とする全てのドメインの学習用テキストデータを用いて、適応化言語モデルを生成する言語モデル生成部１０Ａと、出発ドメインのテキストデータに対して前記適応化言語モデルを適用し、各単語位置における単語の確率分布を計算し、前記単語の確率分布を基に、対象とする単語を別の単語に置き換えて、候補文を生成するテキスト置換部１３Ａと、を備えることを特徴とするデータ生成装置１Ａ。
［項目２］
前記候補文の中からスコアの高い文を選択し、生成文とするテキスト出力部１４Ａを備えることを特徴とする項目１に記載のデータ生成装置１Ａ。
［項目３］
前記言語モデル生成部１０Ａは、リカレントニューラルネットワークで構成された言語モデルである項目１又は２に記載のデータ生成装置１Ａ。
［項目４］
前記リカレントニューラルネットワークは、順方向と逆方向のＬＳＴＭ（Long  Short-Term  Memory）を備える双方向ＬＳＴＭで構成され、前記テキスト置換部１３Ａにおける単語の予測は、順方向と逆方向の双方の確率に基づいて決定することを特徴とする項目３に記載のデータ生成装置１Ａ。
［項目５］
前記言語モデル生成部１０Ａは、前記学習用テキストデータの各単語のベクトルと前記学習用テキストデータのドメイン情報を表すベクトルを結合したベクトルを入力とすることを特徴とする項目３又は４に記載のデータ生成装置１Ａ。
［項目６］
前記テキスト置換部１３Ａは、出発ドメインのテキストデータの各単語のベクトルと、目的ドメインの情報を表すベクトルを結合したベクトルを入力することを特徴とする項目３又は４に記載のデータ生成装置１Ａ。
［項目７］
前記テキスト置換部１３Ａは、前記単語の確率分布を基に、前記出発ドメインのテキストデータ内の１つ以上の単語を、所定のスコアが予め設定した閾値よりも高い単語へ置き換えることを特徴とする項目１又は２に記載のデータ生成装置１Ａ。
【００７２】
データ生成装置１Ａでは、ドメイン適応化された言語モデルを基に、出発ドメインのテキストデータに対して、目的ドメインに近づくように繰り返し単語置換操作をすることでテキストデータのドメイン変換を行い、出発ドメインのテキストデータから目的ドメインのテキストデータをより多く獲得する。データ生成装置１Ａは、対象とする全てのドメインの学習用コーパスを用いて言語モデルを適応化するための言語モデル生成部１０Ａと、テキストデータの変換後に目的とするドメイン情報と出発ドメインのテキストデータを入力として各単語位置における単語の確率分布を計算し、前記単語の確率分布を基にテキストデータに含まれる単語を別の単語に置き換えることで目的ドメインのテキストデータを生成するテキスト置換部１３Ａと、前記生成された目的ドメインのテキストデータの中からスコアの高いテキストを選択するテキスト出力部１４Ａと、を備える構成とした。
【００７３】
言語モデル生成部１０Ａでは、適応化された言語モデルの学習を行う。言語モデルの学習には、出発ドメインと目的ドメインのラベル付きテキストコーパスを用いる。言語モデルの学習時には、テキスト中の各単語の単語ベクトルと学習データのドメインを表すドメインベクトル（一例としては、ベクトル（０，０，１）などが挙げられる）を各タイムステップに入力する。ドメインベクトルは、ランダムな値で初期化された所定の次元数のベクトルであり、出発ドメインおよび目的ドメインのラベル付きテキストデータを基に学習することで、最終的に出発ドメインおよび目的ドメインのドメイン情報を表すドメインベクトルをそれぞれ作成できる。上記学習を行うことで、意味的に似た単語のベクトル間距離が、最初のランダムから近づいていく。それにより、圧縮によって処理が早くなる（モデルのパラメータが少なくなる、ネットワークが軽くなるなど）及び関係性がわかりやすくなる（ＡさんとＢさんの話す言葉が似ているなど）というメリットがある。
【００７４】
テキスト置換部１３Ａでは、前記言語モデル生成部１０Ａで学習済みの言語モデルに対して、出発ドメインのテキストと学習済みの目的ドメインのドメインベクトルの入力を行い、各単語位置における単語の確率分布を獲得する。前記学習済み言語モデルに目的ドメインのドメインベクトルを入力することで、前記各単語位置における単語の確率分布に対して目的ドメインに近い単語へバイアスがかかるため、次の単語を予測する際に目的ドメインの単語を出力しやすくなる効果がある。
【００７５】
テキスト置換部１３Ａは、獲得した各単語位置における単語の確率分布を基に、出発ドメインのテキストの各単語を目的ドメインの単語へ置き換える操作を行う。具体的には、まず、順方向言語モデルおよび逆方向言語モデルのそれぞれの隠れ状態ベクトルから、各単語位置における各方向の単語の確率分布をＳｏｆｔｍａｘ処理等で計算する。順方向および逆方向のそれぞれの単語の確率分布において、確率の高い上位から所定の単語数の単語を置換候補単語とする。順方向および逆方向のそれぞれにおいて、獲得した置換候補単語の中で、両方向の置換候補単語に出現する単語を置換対象単語とし、所定の単語位置の単語を置換対象単語へ置き換える。これにより、入力した出発ドメインテキストの１つの単語が置換されたテキストデータが獲得できる。その後、単語置換後のテキストデータを再帰的にテキスト置換部１３Ａへ入力を行うことで、複数の単語が置換されたテキストデータを獲得できる。ここで、最終的に生成したテキストデータを目的ドメインのテキストデータとする。
【００７６】
テキスト置換部１３Ａで単語の置換操作を行う際に、各単語位置に対して複数の置換対象単語が存在する場合も考えられる。この場合、全ての置換対象単語へ置換したテキストデータを生成し、それぞれに対して前記再帰的処理を実施する。
【００７７】
テキスト出力部１４Ａでは、前記テキスト置換部１３Ａにより生成された複数の目的ドメインのテキストデータに対して、フィルタリングの処理を行う。具体的には、言語モデルを用いて生成された文の所定のスコアを計算し、目的ドメインのテキストデータとして相応しくない文を除外する。フィルタリングで残った文のみを最終的な目的ドメインのテキストデータとする。
【００７８】
上述の通り、データ生成装置１Ａは、出発ドメインのテキストデータを目的ドメインのテキストデータに変換する汎用的なデータ生成装置を提供することを課題とし、予め収集された言語モデル学習用コーパスを用いて適応化言語モデルを生成する言語モデル生成部１０Ａと、入力文の各単語位置における単語の確率分布を計算し、各単語位置における単語の確率分布に基づいて入力文の所定の単語を別の単語に置換するテキスト置換部１３Ａと、単語置き換えにより新たに生成された候補文の中から所定のスコアが高い文を選択するテキスト出力部１４Ａとを備える。
【００７９】
データ生成装置１Ａの構成に基づく効果について説明する。データ生成装置１Ａでは、ドメインに依ってデータ数に偏りが生じてしまう問題を解決するために、一方のドメインのテキストデータを基に、他方のドメインのテキストデータをより多く生成できる汎用的なデータ生成装置を提供することができる。データ生成装置１Ａにより、目的ドメインのデータ量が少ない場合に、出発ドメインのテキストデータを変換することで、目的ドメインのデータ量の不足を補うことができ、機械学習モデルの汎化性能が向上し、過学習を防ぐことが可能となる。また、機械学習モデルが対象とする全てのドメインにおける学習データを生成し、モデルの学習に用いることで、モデルのベース性能を向上させることが可能となる。機械学習モデルの学習データの不足を補う方法として、人手で作成する方法や外部機関から購入する方法、ウェブクローリングする方法が一般的だが、データ生成装置１Ａにより、自動的に学習コーパスを生成することができるため、学習データ収集における時間的・金銭的コストを削減することが可能となる。
【００８０】
［実施例２］
実施例１に係るデータ生成装置１Ａは、一部構成を変更することで以下に説明する実施例２に係るデータ生成装置１Ｂとすることができる。なお、符号Ｂがついた各種構成は、データ生成装置１における符号Ｂが無い構成の機能を適宜有するものとする。データ生成装置１Ｂは以下の構成を備える。
［項目１］
言語モデル生成部１０Ａ、テキスト置換部１３Ａ、テキスト出力部１４Ａを備えるデータ生成装置１Ｂ。
［項目２］
言語モデル生成部１０Ａ及びテキスト置換部１３Ａで使用する言語モデルは、リカレントニューラルネットワークで構成されたものである、項目１に記載のデータ生成装置１Ｂ。
［項目３］
言語モデル生成部１０Ａ及びテキスト置換部１３Ａで使用する言語モデルは、双方向リカレントニューラルネットワークで構成されたものである、項目２に記載のデータ生成装置１Ｂ。
［項目４］
言語モデル生成部１０Ａは、単語ベクトルと出発ドメインベクトルを結合したベクトルを入力する、項目１〜３の何れか一項に記載のデータ生成装置１Ｂ。
［項目５］
テキスト置換部１３Ａは、単語ベクトルと目的ドメインベクトルを結合したベクトルを入力する、項目１〜４の何れか一項に記載のデータ生成装置１Ｂ。
［項目６］
テキスト置換部１３Ａは、算出したスコア（単語の確率分布）を基に、出発ドメインのテキストデータの１つの単語を別の単語（目的ドメインらしい単語）へ置き換える、項目１〜５の何れか一項に記載のデータ生成装置１Ｂ。
［項目７］
テキスト出力部１４Ａは、テキスト置換部１３Ａで１単語を置き換えた生成文のスコアを計算し、スコアの高い文章を選択する、項目１〜６の何れか一項に記載のデータ生成装置１Ｂ。
［項目８］
テキスト出力部１４Ａで選択された候補文をテキスト置換部１３Ａに入力し、単語値置き換え処理を再帰的に行う、項目７に記載のデータ生成装置１Ｂ。
【００８１】
［実施例３］
実施例３に係るデータ生成装置１Ｃについて説明する。なお、データ生成装置１Ｃの各機能とデータ生成装置１の各機能は相互に入れ替え可能である。また、符号Ｃがついた各種構成は、データ生成装置１における符号Ｃが無い構成の機能を有するものとする。ここでは、小売ドメインを出発ドメイン、飲食ドメインを目的ドメインとした場合の言語モデル生成部１０Ｃを示す。言語モデル生成部１０Ｃでは、各ドメインのテキストデータを用いて、言語モデルを学習する。学習の際には、各ドメインのラベル情報から作成したドメインベクトルを言語モデルの各タイムステップに単語ベクトルと合わせて入力する。ドメインのテキストデータが少ない場合、言語モデルの学習が充分にできない可能性が考えられるため、汎用コーパスなどを用いて言語モデルの事前学習を行う。
【００８２】
言語モデル生成部１０Ｃにより学習した言語モデルを用いて出発ドメインから目的ドメインへテキストを変換する方法について説明する。ここでは、小売ドメインのテキストデータから飲食ドメインのテキストデータを生成する場合の実施例を示す。まず、テキスト置換部１３Ｃへの入力として、出発ドメインである小売ドメインのテキストと目的ドメインである飲食ドメインのベクトルを与える。テキスト置換部１３Ｃでは、入力テキストの各単語位置における単語の確率分布を計算する。次に、テキスト置換部１３Ｃにより、入力テキスト中のいずれか１つの単語を置き換えた文を１つ以上生成する。最後にテキスト出力部１４Ｃにより生成された文の所定のスコアを計算し、フィルタリングを行う。
【００８３】
例えば、データ生成装置１Ｃに対して、小売ドメインのテキスト「この指輪は天然の真珠を使用しております」と飲食ドメインのベクトルが与えられると、１回目のテキスト置換部１３Ｃにより、入力テキストの「指輪」という単語を「つけ麺」に置き換えた置換テキスト「このつけ麺は天然の真珠を使用しております」を生成する。次に、１回目の操作で生成した文に対しても同様の処理を行い、「天然」という単語を「自家製」に置き換えた置換テキスト「このつけ麺は自家製の真珠を使用しております」を生成する。次に、２回目の操作で生成した文に対しても同様の処理を行い、「真珠」という単語を「手打ち麺」に置き換えた置換テキスト「このつけ麺は自家製の手打ち麺を使用しております」を生成する。このように、上記の作業を再帰的に繰り返し、最終的に出力された文を目的ドメインのテキストとする。
【００８４】
情報の通知は、本開示において説明した態様／実施形態に限られず、他の方法を用いて行われてもよい。
【００８５】
本開示において説明した各態様／実施形態の処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本開示において説明した方法については、例示的な順序を用いて様々なステップの要素を提示しており、提示した特定の順序に限定されない。
【００８６】
入出力された情報等は特定の場所（例えば、メモリ）に保存されてもよいし、管理テーブルを用いて管理してもよい。入出力される情報等は、上書き、更新、又は追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
【００８７】
本開示において説明した各態様／実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、所定の情報の通知（例えば、「Ｘであること」の通知）は、明示的に行うものに限られず、暗黙的（例えば、当該所定の情報の通知を行わない）ことによって行われてもよい。
【００８８】
以上、本開示について詳細に説明したが、当業者にとっては、本開示が本開示中に説明した実施形態に限定されるものではないということは明らかである。本開示は、請求の範囲の記載により定まる本開示の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。したがって、本開示の記載は、例示説明を目的とするものであり、本開示に対して何ら制限的な意味を有するものではない。
【００８９】
ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。
【００９０】
また、ソフトウェア、命令、情報などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、有線技術（同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ：Digital  Subscriber  Line）など）及び無線技術（赤外線、マイクロ波など）の少なくとも一方を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び無線技術の少なくとも一方は、伝送媒体の定義内に含まれる。
【００９１】
本開示において説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
【００９２】
なお、本開示において説明した用語及び本開示の理解に必要な用語については、同一の又は類似する意味を有する用語と置き換えてもよい。
【００９３】
また、本開示において説明した情報、パラメータなどは、絶対値を用いて表されてもよいし、所定の値からの相対値を用いて表されてもよいし、対応する別の情報を用いて表されてもよい。
【００９４】
上述したパラメータに使用する名称はいかなる点においても限定的な名称ではない。さらに、これらのパラメータを使用する数式等は、本開示で明示的に開示したものと異なる場合もある。
【００９５】
本開示で使用する「判断（determining）」、「決定（determining）」という用語は、多種多様な動作を包含する場合がある。「判断」、「決定」は、例えば、判定（judging）、計算（calculating）、算出（computing）、処理（processing）、導出（deriving）、調査（investigating）、探索（looking  up、search、inquiry）（例えば、テーブル、データベース又は別のデータ構造での探索）、確認（ascertaining）した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、受信（receiving）（例えば、情報を受信すること）、送信（transmitting）（例えば、情報を送信すること）、入力（input）、出力（output）、アクセス（accessing）（例えば、メモリ中のデータにアクセスすること）した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、解決（resolving）、選択（selecting）、選定（choosing）、確立（establishing）、比較（comparing）などした事を「判断」「決定」したとみなす事を含み得る。つまり、「判断」「決定」は、何らかの動作を「判断」「決定」したとみなす事を含み得る。また、「判断（決定）」は、「想定する（assuming）」、「期待する（expecting）」、「みなす（considering）」などで読み替えられてもよい。
【００９６】
「接続された（connected）」、「結合された（coupled）」という用語、又はこれらのあらゆる変形は、２又はそれ以上の要素間の直接的又は間接的なあらゆる接続又は結合を意味し、互いに「接続」又は「結合」された２つの要素間に１又はそれ以上の中間要素が存在することを含むことができる。要素間の結合又は接続は、物理的なものであっても、論理的なものであっても、或いはこれらの組み合わせであってもよい。例えば、「接続」は「アクセス」で読み替えられてもよい。本開示で使用する場合、２つの要素は、１又はそれ以上の電線、ケーブル及びプリント電気接続の少なくとも一つを用いて、並びにいくつかの非限定的かつ非包括的な例として、無線周波数領域、マイクロ波領域及び光（可視及び不可視の両方）領域の波長を有する電磁エネルギーなどを用いて、互いに「接続」又は「結合」されると考えることができる。
【００９７】
本開示において使用する「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
【００９８】
本開示において、「含む（include）」、「含んでいる（including）」及びそれらの変形が使用されている場合、これらの用語は、用語「備える（comprising）」と同様に、包括的であることが意図される。さらに、本開示において使用されている用語「又は（or）」は、排他的論理和ではないことが意図される。
【００９９】
本開示において、例えば、英語でのa、an及びtheのように、翻訳により冠詞が追加された場合、本開示は、これらの冠詞の後に続く名詞が複数形であることを含んでもよい。
【０１００】
本開示において、「ＡとＢが異なる」という用語は、「ＡとＢが互いに異なる」ことを意味してもよい。なお、当該用語は、「ＡとＢがそれぞれＣと異なる」ことを意味してもよい。「離れる」、「結合される」などの用語も、「異なる」と同様に解釈されてもよい。
【符号の説明】
【０１０１】
１…データ生成装置、１０…言語モデル生成部、１１…言語モデル格納部、１２…テキスト取得部、１３…テキスト置換部、１４…テキスト出力部。
【図１】
2020112915.tif 000003
【図２】
2020112915.tif 000004
【図３】
2020112915.tif 000005
【図４】
2020112915.tif 000006
【図５】
2020112915.tif 000007
【図６】
2020112915.tif 000008
【図７】
2020112915.tif 000009
【図８】
2020112915.tif 000010
【図９】
2020112915.tif 000011
【図１０】
2020112915.tif 000012
【図１１】
2020112915.tif 000013
【図１２】
2020112915.tif 000014
【図１３】
2020112915.tif 000015
【図１４】
2020112915.tif 000016