IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 沖電気工業株式会社の特許一覧

特開2023-39102データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム
<>
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図1
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図2
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図3
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図4
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図5
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図6
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図7
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図8
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図9
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図10
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図11
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図12
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図13
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図14
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図15
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図16
  • 特開-データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023039102
(43)【公開日】2023-03-20
(54)【発明の名称】データ拡張用情報取得装置、及びデータ拡張用情報取得プログラム
(51)【国際特許分類】
   G06F 40/56 20200101AFI20230313BHJP
【FI】
G06F40/56
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2021146093
(22)【出願日】2021-09-08
(71)【出願人】
【識別番号】000000295
【氏名又は名称】沖電気工業株式会社
(74)【代理人】
【識別番号】100180275
【弁理士】
【氏名又は名称】吉田 倫太郎
(74)【代理人】
【識別番号】100161861
【弁理士】
【氏名又は名称】若林 裕介
(72)【発明者】
【氏名】奥村 晃弘
(72)【発明者】
【氏名】白石 哲也
(72)【発明者】
【氏名】齋藤 彰
【テーマコード(参考)】
5B091
【Fターム(参考)】
5B091CA21
(57)【要約】
【課題】 トークン置き換えの前後でトークン数が異なる場合であっても類似度の算出を可能にし、より汎用的にデータ拡張を実施できるデータ拡張用情報取得装置を提供する。
【解決手段】 本発明は、マスク言語モデルを使用して学習済みの事前学習モデルと、入力テキストをトークンに分解するトークナイザー部と、入力テキスト全体の単語分散表現を算出するエンベディング部と、事前学習モデルを使用して、入力テキストを分解したトークン列中のマスク部分を予測するマスク予測部と、トークン列中の1又は複数のトークンを、1又は複数のマスクトークンに置き換えた上で、マスク予測部を使用してマスク部分に該当するトークンを予測することを繰り返し作成した作成テキストと、入力テキストとの類似度をエンベディング部で算出し、類似度が高い順に所定数の作成テキストを出力する処理部とを有する。
【選択図】 図1
【特許請求の範囲】
【請求項1】
マスク言語モデルを使用して学習済みの事前学習モデルと、
入力テキストをトークンに分解するトークナイザー部と、
前記入力テキスト全体の単語分散表現を算出するエンベディング部と、
前記事前学習モデルを使用して、前記入力テキストを分解したトークン列中のマスク部分を予測するマスク予測部と、
前記トークン列中の1又は複数のトークンを、1又は複数のマスクトークンに置き換えた上で、前記マスク予測部を使用してマスク部分に該当するトークンを予測することを繰り返し作成した作成テキストと、前記入力テキストとの類似度を前記エンベディング部で算出し、前記類似度が高い順に所定数の前記作成テキストを出力する処理部と
を有することを特徴とするデータ拡張用情報取得装置。
【請求項2】
前記処理部は、前記マスク予測部を使用してマスク部分に該当するトークンを予測する際、マスク部分の一部を予測結果で固定して残りのマスク部分を予測することを繰り返して、前記作成テキストを作成することを特徴とする請求項1に記載のデータ拡張用情報取得装置。
【請求項3】
教師データからテキストデータを抽出するテキストデータ抽出部と、
前記入力テキストは、前記テキストデータ抽出部によって前記教師データから抽出した前記テキストデータであって、
前記処理部が作成した前記作成テキストと、前記教師データとから新たな教師データを再構成するデータ再構成部と
を有することを特徴とする請求項1又は2に記載のデータ拡張用情報取得装置。
【請求項4】
前記教師データは、テキストとテキストごとに付与されたラベルとを備えることを特徴とする請求項3に記載のデータ拡張用情報取得装置。
【請求項5】
前記教師データは、トークンとトークンごとに付与されたラベルとを備えることを特徴とする請求項3に記載のデータ拡張用情報取得装置。
【請求項6】
コンピュータを、
マスク言語モデルを使用して学習済みの事前学習モデルと、
入力テキストをトークンに分解するトークナイザー部と、
前記入力テキスト全体の単語分散表現を算出するエンベディング部と、
前記事前学習モデルを使用して、前記入力テキストを分解したトークン列中のマスク部分を予測するマスク予測部と、
前記トークン列中の1又は複数のトークンを、1又は複数のマスクトークンに置き換えた上で、前記マスク予測部を使用してマスク部分に該当するトークンを予測することを繰り返し作成した作成テキストと、前記入力テキストとの類似度を前記エンベディング部で算出し、前記類似度が高い順に所定数の前記作成テキストを出力する処理部と
して機能させることを特徴とするデータ拡張用情報取得プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ拡張用情報取得装置、及びデータ拡張用情報取得プログラムに関する。
【背景技術】
【0002】
従来、ディープラーニングなどの機械学習において、高い精度を実現するためには、大量の教師データが必要であるため、データ拡張技術が用いられるのが一般的である。例えば、画像処理では元の画像を回転、ズーム、平行移動などの処理で加工した画像を作成することにより教師データの数を増やして、データ拡張を実現している。そして、自然言語処理の分野においても、様々な手法でデータ拡張の試みがなされており、例えば、特許文献1、非特許文献1などにデータ拡張の技術が開示されている。
【0003】
近年、自然言語処理技術として、非特許文献2に記載の技術が注目されている。非特許文献2では、以下の手順により高精度な学習が可能なことを示している。
【0004】
まず、大量の文書テキストを準備し、これを教師なし学習データとしてMLM(Masked Language Model)、及びNSP(Next Sentence Prediction)の手法を用いて事前学習を行い、事前学習モデルを作成する。
【0005】
次に、必要なタスクの教師あり学習データを準備し、事前学習モデルと共にファインチューニング(学習)を行う。
【0006】
上述のMLMは、入力データをトークン単位でマスクし、マスクした部分を予測させる言語モデルである。このため、上記の手順で作成した事前学習モデルは、入力データのマスク部分を予測することが可能である。一方、上述のNSPは、詳細は省略するが、文字通り後続する文を予測するように学習する手法である。
【0007】
また、ディープラーニング用のトークナイザーとして非特許文献3に記載の技術が挙げられる。非特許文献3では、単語をさらに分解したサブワードをトークンとする手法について述べている。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2020-126360号公報
【非特許文献】
【0009】
【非特許文献1】西本慎之介,能地宏,松本裕治,「データ拡張による感情分析のアスペクト推定」,言語処理学会,第23回年次大会発表論文集,581-584ページ,2017年3月,http://www.anlp.jp/proceedings/annual_meeting/2017/pdf_dir/P10-4.pdf
【非特許文献2】Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova, “BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding” arXiv:1810.04805 (2018).
【非特許文献3】Taku Kudo, John Richardson, “SentencePiece: A simple and language independent subword tokenizer and detokenizer for Neural Text Processing” arXiv:1808.06226 (2018)
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしがら、自然言語処理におけるデータ拡張に関して、特許文献1に記載の技術(手法)は、翻訳に特化した手法であるため、他のタスクには適用できない。
【0011】
一方、非特許文献1では、単語ベクトルの類似度に基づく技術が挙げられている。ディープラーニングを用いた自然言語処理の場合、トークンをベクトルとして扱うため、この手法は非常に都合が良い反面、非特許文献3に示すようなトークナイザーを使用する場合に問題があった。以下では、この問題について具体例を用いて説明する。
【0012】
ここで、「美味と評判の店」(以下、「Tx1」と呼ぶ)と「おいしいと評判の店」」(以下、「Tx2」と呼ぶ)という2つのテキストが存在するとする。また、これらのテキストを単語に分解した例は、それぞれ、「美味/と/評判/の/店」(以下、「Ts1」と呼ぶ)、「おいしい/と/評判/の/店」(以下、「Ts2」と呼ぶ)である。「美味」という単語と「おいしい」という単語が意味的に類似していることが分かれば、単語を1個置き換えることによって、Tx1からTx2を作成することができる。これは、単語がトークンであり、トークンごとに単語分散表現(ベクトル)があれば、類似度を使用してデータ拡張を実施できることを示している。
【0013】
一方、例えば、非特許文献3に示すようなトークナイザーを使用すると、単語をさらに分解したサブワードがトークンとなる。Tx2をこのトークナイザーでトークンに分解した結果の例は、「おい/##しい/と/評判/の/店」(以下、「Ts2’」と呼ぶ)である。「##しい」の先頭の「##」は単語をさらに分解したことを示している。なお、Tx1をこのトークナイザーで分解した場合は単語に分解した場合と同じくTs1になるものとする。
【0014】
この場合、トークンを1つ置き換えることでは、Ts1からTs2を作成することはできない。「美味」というトークンと「おい」と「##しい」の2つのトークンを置き換える必要がある。1対1でベクトルの類似度を求める場合は、コサイン類似度などを使えば簡単に算出することができるが、1対2の場合は類似度の算出方法を定義する必要があり、この置き換えを見つけ出すのは非常に困難であり、問題であった。
【0015】
ディープラーニングを用いた自然言語処理において、サブワードをトークンとするのが主流となりつつあるため、この問題は非常に重大であり、解決すべき問題であった。
【0016】
そのため、トークン置き換えの前後でトークン数が異なる場合であっても、類似度の算出を可能にし、より汎用的にデータ拡張を実施できるデータ拡張用情報取得装置、及びデータ拡張用情報取得プログラムが望まれている。
【0017】
本発明は、この問題に鑑みてなされたもので、置き換えの前後でトークン数が異なる場合であっても類似度の算出を可能にし、より汎用的にデータ拡張を実施することを目的とするものである。
【課題を解決するための手段】
【0018】
第1の本発明のデータ拡張用情報取得装置は、(1)マスク言語モデルを使用して学習済みの事前学習モデルと、(2)入力テキストをトークンに分解するトークナイザー部と、(3)前記入力テキスト全体の単語分散表現を算出するエンベディング部と、(4)前記事前学習モデルを使用して、前記入力テキストを分解したトークン列中のマスク部分を予測するマスク予測部と、(5)前記トークン列中の1又は複数のトークンを、1又は複数のマスクトークンに置き換えた上で、前記マスク予測部を使用してマスク部分に該当するトークンを予測することを繰り返し作成した作成テキストと、前記入力テキストとの類似度を前記エンベディング部で算出し、前記類似度が高い順に所定数の前記作成テキストを出力する処理部とを有することを特徴とする。
【0019】
第2の本発明のデータ拡張用情報取得プログラムは、コンピュータを、(1)マスク言語モデルを使用して学習済みの事前学習モデルと、(2)入力テキストをトークンに分解するトークナイザー部と、(3)前記入力テキスト全体の単語分散表現を算出するエンベディング部と、(4)前記事前学習モデルを使用して、前記入力テキストを分解したトークン列中のマスク部分を予測するマスク予測部と、(5)前記トークン列中の1又は複数のトークンを、1又は複数のマスクトークンに置き換えた上で、前記マスク予測部を使用してマスク部分に該当するトークンを予測することを繰り返し作成した作成テキストと、前記入力テキストとの類似度を前記エンベディング部で算出し、前記類似度が高い順に所定数の前記作成テキストを出力する処理部として機能させることを特徴とする。
【発明の効果】
【0020】
本発明によれば、トークン置き換えの前後でトークン数が異なる場合であっても類似度の算出を可能にし、より汎用的にデータ拡張を実施できる。
【図面の簡単な説明】
【0021】
図1】実施形態に係るデータ拡張用情報取得装置の構成を示すブロック図である。
図2】実施形態に係るデータ拡張用情報取得装置の特徴動作を示すフローチャートである。
図3】実施形態に係るトークナイザーを用いて得られたトークンID列の一例を示す説明図である。
図4】実施形態に係るトークンID列の一部をマスクした一例を示す説明図である。
図5】実施形態に係るトークンID列のマスク部分の予測結果を記憶した配列の一例を示す説明図である。
図6】実施形態に係るマスク部分を予測結果に置き換えたトークンID列の一例を示す説明図である。
図7】実施形態に係る各トークンID列(図6)のマスク部分の類似度を示す類似度表の一例を示す説明図である。
図8】実施形態に係る入力ファイルの一例を示す説明図である。
図9】実施形態に係る出力ファイルの一例を示す説明図である。
図10】実施形態に係る文章分類タスクの教師データにデータ拡張を適用した例を示す説明図である。
図11】実施形態に係る固有表現抽出タスクの教師データに対してデータ拡張を適用した例を示す説明図である。
図12】実施形態に係るトークンID列の任意の数のトークンを任意の数のマスク部分に置き換えた一例を示す説明図である。
図13】変形実施形態に係るトークンID列のマスク部分の予測結果を記憶した配列の一例を示す説明図(その1)である。
図14】変形形態に係るトークンID列の一部をマスクした一例を示す説明図(その1)である。
図15】変形実施形態に係るトークンID列のマスク部分の予測結果を記憶した配列の一例を示す説明図(その2)である。
図16】変形形態に係るトークンID列の一部をマスクした一例を示す説明図(その2)である。
図17】変形形態に係るデータ拡張用情報取得装置の構成を示すブロック図である。
【発明を実施するための形態】
【0022】
(A)主たる実施形態
以下、本発明に係るデータ拡張用情報取得装置、及びデータ拡張用情報取得プログラムの実施形態を、図面を参照しながら詳述する。
【0023】
(A-1)実施形態の構成
図1は、実施形態に係るデータ拡張用情報取得装置の構成を示すブロック図である。
【0024】
図1において、実施形態に係るデータ拡張用情報取得装置1は、事前学習モデル11、トークナイザー12、エンベディング部13、マスク予測部14、処理部15、入力ファイル16、及び出力ファイル17を有する。
【0025】
実施形態に係る言語処理装置は、図1に示す各構成部を搭載した専用のICチップ等のハードウェアとして構成しても良いし、又は、CPUと、CPUが実行するプログラムを中心としてソフトウェア的に構成して良いが、機能的には、図1で表すことができる。
【0026】
本実施形態のデータ拡張用情報取得装置1は、入力されたテキストのトークン置き換え前後でトークンの数が異なる場合でも類似度を求めることができる点に特徴を有する。具体的に、データ拡張用情報取得装置1は、置き換え部分のトークンの類似度を計算する代わりにテキスト全体の類似度を用いる。置き換えた部分以外は同じトークンで構成されているのだから、テキスト全体を表す単語分散表現(ベクトル)の類似度は置き換え部分の違いに由来していると言える。
【0027】
なお、テキスト全体を表す単語分散表現は、例えば、非特許文献2に記載のBERT(Bidirectional Encoder Representations from Transformers)を利用すれば、取得することができる。このとき、トークンを実際に置き換えてからでないとテキスト全体の単語分散表現を算出できないため、全ての可能性について検討すると非常に多くの計算量が必要なので、MLM(マスク言語モデル)を使用した事前学習モデルを用いてマスク予測を行い、置き換え部分に当てはまる可能性が高いトークンに限定して計算することによって効率的に処理できるようにした。以下、各構成について述べる。
【0028】
事前学習モデル11は、事前学習した結果を記憶する機能部である。事前学習モデル11は、BERTを用いて(即ち、MLMを用いて)作成できる。以下、BERTを用いて作成された事前学習モデル11を、「BERT学習済みモデル」とも呼ぶものとする。また、この実施形態では、事前学習モデル11は、大量の日本語テキストから日本語の言語モデルを学習した結果を保持しているものとする。
【0029】
トークナイザー12は、テキストをトークンに分解(トークンIDへの変換を含む)する機能部である。また、トークナイザー12は、非特許文献3に記載の技術と同様にテキストを単語に分解し、さらに、サブワードに分解する。先に述べたように、ここでのサブワードはトークンとなる。なお、BERT学習済みモデル(事前学習モデル11)を利用するために、分解されたトークンからトークンIDに変換されたものがトークンID列である。
【0030】
エンベディング部13は、トークンID列から単語分散表現(ベクトル)を算出する機能部である。トークンID列の先頭は[CLS]トークンであり、このトークンに対応するベクトルはテキスト全体の分散表現になる。
【0031】
マスク予測部14は、事前学習モデル11を用いてマスク部分に該当しそうなトークンを予測する機能部である。マスク部分とは、トークンID列の中で、値が[MASK]トークンになっている部分のことである。
【0032】
上述のトークナイザー12、エンベディング部13、及びマスク予測部14は、BERTを用いて実現することができる。
【0033】
処理部15は、トークナイザー12、エンベディング部13、及びマスク予測部14を制御してデータ拡張用の情報を作成する機能部である。処理部15の詳細は動作の項で述べる。
【0034】
入力ファイル16は、データ拡張の元となるファイル(例えば、txtファイル)である。この実施形態では、入力ファイル16は、テキストデータ(txtファイル)であるものとする。入力ファイル16は、例えば、図8に示すようなデータである。
【0035】
出力ファイル17は、処理結果を記録するためのファイルである。出力ファイル17は、例えば、図9に示すようなデータである。
【0036】
(A-2)実施形態の動作
次に、以上のような構成を有する実施形態に係るデータ拡張用情報取得装置1の動作を説明する。
【0037】
(A-2-1)データ拡張用情報取得装置1の特徴動作
図2は、実施形態に係るデータ拡張用情報取得装置の特徴動作を示すフローチャートである。以下では、説明を簡易なものにするため、処理部15が入力ファイル16の1行分のテキストを処理(処理して出力ファイル17に書き込む)する例を示すものとする。なお、入力ファイル16の全ての行を処理する場合には、以下の一連の処理を繰り返すだけである。
【0038】
<ステップS101>
まず、処理部15は、トークナイザー12を用いて、入力ファイル16のテキストをトークンに分解し、トークンID列を取得する。なお、この時点でトークン列の先頭に[CLS]トークンが付与されているものとする。
【0039】
図3は、実施形態に係るトークナイザーを用いて得られたトークンID列の一例を示す説明図である。図3では、先頭の[CLS]トークンと共に、トークンに分解されたテキスト(/美味/と/評判/の/店)が示されている。なお、スラッシュ「/」は、トークンの区切りを示している。即ち、「美味と評判の店」のテキストは、「美味」、「と」、「評判」、「の」、「店」は、[CLS]トークンとは別に、5つのトークンに分解される。
【0040】
<ステップS102>
次に、処理部15は、エンベディング部13を用いて、上述のステップS101で取得したトークンID列の単語分散表現(ベクトル)を取得する。この際、処理部15は、テキスト全体の単語分散表現が[CLS]トークンのベクトルとして得られるのでこれを記憶しておく。
【0041】
<ステップS103>
次に、処理部15は、上述のステップS101で取得したトークンID列の任意の1つのトークンを2つの[MASK]トークンに置き換えて、マスク予測部14で予測する。図4は、実施形態に係るトークン列の一部をマスクした一例を示す説明図である。図4では、「美味」のトークンを2つの[MASK]トークンに置換した例を示している。
【0042】
<ステップS104>
次に、処理部15は、予測結果のうち最初のマスクの予測結果をマスクA、2つ目をマスクBとして可能性が高い順番の上位3件分を配列に入れて記憶する。
【0043】
図5は、実施形態に係るトークンID列のマスク部分の予測結果を記憶した配列の一例を示す説明図である。図5では、マスクAに「おい」、「美味」、「うま」、マスクBに「##しい」、「#い」、「だ」の予測結果が記憶されている例が示されている。なお、図5は、一例であって、予測結果を記憶する形式(データ形式)は特に限定されるものでは無い。
【0044】
<ステップS105~ステップS110>
処理部15は、マスクAの添え字を1から3まで変化させながら(ステップS105)、同様にマスクBの添え字を1から3まで変化させながら(ステップS106)、マスク部分を置き換えたトークンID列を作成し、上述のステップS102と同様の方法でテキスト全体のベクトルを算出する(ステップS107)。処理部15は、算出したベクトルと上述のステップS102で記憶した元テキストのベクトルとの類似度(ここでは、コサイン類似度を用いるが、比較手段は特に限定されない)を算出し、類似度表として記憶する(ステップS108)。
【0045】
処理部15は、上記処理を、B(マスクB)が終わるまでステップS106に戻って繰り返し(ステップS109)、同様にA(マスクA)が終わるまでステップS105に戻って繰り返す(ステップS110)。
【0046】
図6は、実施形態に係るマスク部分を予測結果に置き換えたトークンID列の一例を示す説明図である。なお、ここで、実際に作成されるのはトークンIDの列であるが、図6では、説明を簡易なものにするために、先頭の[CLS]トークンは省略している。図7は、図6の各トークンID列のマスク部分の類似度を示す類似度表の一例を示す説明図である。図7では、3つのマスクAの予測結果と、3つのマスクBの予測結果との組み合わせ(計9個中6個)に対するコサイン類似度が示されている。
【0047】
<ステップS111>
最後に、処理部15は、上述のステップS108で作成した類似度表を参照して最も類似度が高いトークンID列からテキストを作成する。このテキストと、どの部分をどう変更したかの情報とを出力ファイル17に書き込む。例えば、図7の場合には、A=1,B=1が最も類似度が高いので、図6から分かるように「おいしいと評判の店」というテキストを作成する。さらに、元テキストである「美味と評判の店」の「美味」を「おいしい」に置き換えたので、これらを作成したテキストと共に出力ファイル17に書き込む。
【0048】
以上により、データ拡張用情報取得装置1の動作を終了する。
【0049】
(A-2-2)データ拡張の補足説明
以下、データ拡張(出力ファイル17の活用方法等)について補足的に説明する。
【0050】
図9は、図8の入力ファイル(2行分のデータ)から、上述のステップS101~S111の処理により作成した出力ファイル17の一例を示す説明図である。自然言語処理には様々なタスクがあり、タスクによって教師データの形式に違いがあるが、図9に示すようなデータがあれば、簡単にデータ拡張を実施できる。
【0051】
例えば、文章分類タスクの教師データに適用した場合を図10に示すものとする。図10は元データ21から作成データ22を作成したことを示している。図10の元データ21と作成データ22とを合わせれば、データ量は2倍になりデータ拡張が実現できる。
【0052】
図10の元データ21からテキストだけを抽出すれば、図8に示すようなテキストデータ(入力ファイル16)を作成できるので、このテキストデータを上述のステップS101から順に処理することにより図9に示すようなデータ(出力ファイル17)が得られる。得られた出力ファイル17を用いて、元データ21中のテキスト部分は、図9の作成テキストに置き換えて、ラベルはそのまま使用すれば作成データ22(新たな教師データ)を得ることができる。
【0053】
さらに、固有表現抽出タスクの教師データに対して適用した例を図11に示すものとする。図11は、元データ23から作成データ24を作成したことを示している。この例ではトークンが文字単位になっており、1トークンが1行になっているが、トークンを連結することにより図8に示すようなテキストデータを作成できるので、このテキストデータを上述のステップS101から順に処理することにより図9に示すようなデータが得られる。これを用いて、トークンは図9の作成テキストを分解したときのトークンに置き換えて、ラベルの対応の処理をすれば作成データ24を得ることができる。
【0054】
上述の処理は、例えば、図17に示すデータ拡張用情報取得装置1Aで実現することができる。データ拡張用情報取得装置1Aは、データ拡張用情報取得装置1の構成に加えて、教師データ30、テキストデータ抽出部31、データ再構成部32、及び新教師データ33を有する。
【0055】
教師データ30は、上述の図10の元データ21又は上述の図11の元データ23等の教師データに該当する。また、新教師データ33は、上述の図10の作成データ22又は上述の図11の作成データ24等の教師データに該当する。
【0056】
テキストデータ抽出部31は、教師データ30からテキスト部分(テキストデータ)を抽出する機能部である。例えば、テキストデータ抽出部31は、テキストとラベルとを備える元データ21であれば、先に述べたように、テキストデータのみを抽出する。また、テキストデータ抽出部31は、文字単位のトークンと、トークンごとにラベルを備える元データ23であれば、トークンを連結することによりテキストデータを抽出する。いずれかしても教師データ30からテキストデータを抽出する手段は特に限定されるものでは無い。抽出したテキストデータは、入力ファイル16となる。
【0057】
データ再構成部32は、出力ファイルか17及び教師データ30に基づき、新教師データ33を作成(教師データを再構成)する機能部である。例えば、データ再構成部32は、テキストとラベルとを備える元データ21であれば、先に述べたように、教師データ30中の既存のテキスト部分を出力ファイル17の作成テキスト(図9の作成テキスト)に置き換えて、新教師データ33を作成する。
【0058】
(A-3)実施形態の効果
本実施形態によれば以下の効果を奏する。
【0059】
データ拡張用情報取得装置1は、事前学習によって獲得した言語モデルに基づいてマスク部分を予測するため、事前学習を行った言語として相応しいテキストを作成することができる。つまり、非文が作成されてしまうことを抑制できる。
【0060】
また、データ拡張用情報取得装置1は、トークン置き換え前後のテキスト全体の類似度を用いるので、意味が大きく異なったテキストが作成されてしまうことを抑制できる。
【0061】
さらに、データ拡張用情報取得装置1は非特許文献3に記載のトークナイザーを使用する場合に限らず、どのようなトークナイザーを使用した場合でも適用が可能であり、適用範囲が広い。また、データ拡張用情報取得装置1は、トークン置き換え前後のトークンの数に制約がなく、従来のトークンを1対1で置き換える手法を包含しているために汎用性が高く、より柔軟にデータ拡張が実施できる。
【0062】
そして、データ拡張用情報取得装置1を用いて、データ拡張を実施すれば、大量の教師データを作成できるため、ディープラーニングなどの機械学習において、高い精度の学習を実現できる。
【0063】
(B)他の実施形態
上述した実施形態においても種々の変形実施形態を言及したが、本発明は、以下の変形実施形態にも適用できる。
【0064】
(B-1)上述した実施形態では、データ拡張用情報取得装置1は、サブワードを1トークンとしたが、これに限定されるものではない。即ち、トークンは、例えば、単語単位であっても良いし、文字単位であっても良い。
【0065】
(B-2)上述した実施形態では、1つのトークンを2つのマスクに置き換える場合を例に説明したが、これに限定されるものではない。任意の数のトークンを任意の数のマスクに置き換える場合も同様に処理できる。ただし、上述した実施形態ではマスクが2つなので処理が2重ループ(上述のステップS105、S106、S109、S110)になっているのだから、N個のマスクに置き換える場合はN重ループになるのは明白である。置き換えられるトークンの数と、置き換えるトークンの数を様々に変化させた場合の置き換え後のトークン列の例を図12に示すものとする。図12は、上述の図3で示したトークンID列のあるトークンを変化させた例を示している。例えば、置き換えられるトークンの数が「2」で、置き換えるトークンの数が「3」の場合には、「美味」及び「と」の2個のトークンを3個の[MASK]トークンに置き換えた例を示している。
【0066】
(B-3)上述した実施形態では、データ拡張用情報取得装置1は、可能性が高い上位3件の組み合わせから、最も類似度が高い1件を出力するように構成したが、これに限定されるものではない。上位何件を取り扱うかは予め設定しても良いし、さらに、出力する件数も類似度が高い方から何件採用するかを予め設定しても良い。
【0067】
(B-4)上述した実施形態では、データ拡張用情報取得装置1は、2つのマスクを設定しマスクの予測は1回だけ実施するように構成したが、これに限定されるものではない。即ち、データ拡張用情報取得装置1は、マスクの片方を予測結果で順次固定した状態で、残りのマスクを再度予測するように構成しても良い。
【0068】
この場合の処理例を図13図16に示す。この例では、図13で「##しい」の予測値が最も高いので、マスクBを「##しい」で固定したトークン列(図14)を作成し、再度マスクAを予測している。この予測結果が図15である。このように図13での予測値が高い順に1か所のマスクを固定したトークン列を順次作成し(図16)、残りのマスクを再度予測していく。なお、必要があればこの時点で上位何件までと限定しても良い。この手順で処理すれば、マスクの予測回数が増えるので処理時間が増加するが、非文の作成がさらに抑制されるので、多くの件数を採用する場合に有効である。
【0069】
(B-5)また、(B-4)の変形例の場合もマスクの数や上位何件を取り扱うかは自由に設定(予め設定)しても良いため、データ拡張用情報取得装置1は、1度マスクの予測をした後に、幾つかのマスクを予測結果で順次固定した状態で、残りのマスクを再度予測するように構成しても良い。
【符号の説明】
【0070】
1、1A…データ拡張用情報取得装置、11…事前学習モデル、12…トークナイザー、13…エンベディング部、14…マスク予測部、15…処理部、16…入力ファイル、17…出力ファイル、21、23…元データ、22、24…作成データ、30…教師データ、31…テキストデータ抽出部、32…データ再構成部、33…新教師データ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17