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

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

▶ 株式会社リコーの特許一覧

特開2023-48325情報処理方法、情報処理装置、プログラム
<>
  • 特開-情報処理方法、情報処理装置、プログラム 図1
  • 特開-情報処理方法、情報処理装置、プログラム 図2
  • 特開-情報処理方法、情報処理装置、プログラム 図3
  • 特開-情報処理方法、情報処理装置、プログラム 図4
  • 特開-情報処理方法、情報処理装置、プログラム 図5
  • 特開-情報処理方法、情報処理装置、プログラム 図6
  • 特開-情報処理方法、情報処理装置、プログラム 図7
  • 特開-情報処理方法、情報処理装置、プログラム 図8
  • 特開-情報処理方法、情報処理装置、プログラム 図9
  • 特開-情報処理方法、情報処理装置、プログラム 図10
  • 特開-情報処理方法、情報処理装置、プログラム 図11
  • 特開-情報処理方法、情報処理装置、プログラム 図12
  • 特開-情報処理方法、情報処理装置、プログラム 図13
  • 特開-情報処理方法、情報処理装置、プログラム 図14
  • 特開-情報処理方法、情報処理装置、プログラム 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023048325
(43)【公開日】2023-04-07
(54)【発明の名称】情報処理方法、情報処理装置、プログラム
(51)【国際特許分類】
   G06F 40/232 20200101AFI20230331BHJP
   G06F 40/216 20200101ALI20230331BHJP
【FI】
G06F40/232
G06F40/216
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021157577
(22)【出願日】2021-09-28
(71)【出願人】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】伊東 秀夫
【テーマコード(参考)】
5B091
【Fターム(参考)】
5B091AA11
5B091AA15
5B091EA01
(57)【要約】
【課題】単語の推定の精度を向上させることを目的とする。
【解決手段】情報処理装置による情報処理方法であって、前記情報処理装置が、入力テキストデータに含まれる単語列と、前記単語列から変換されたラベル列と、に基づき、前記単語列における特定の単語の位置を示す位置決め用の文字列と、前記特定の単語とを対応付け、前記位置決め用の文字列と、前記特定の単語とを含む入力データを生成し、前記特定の単語と置き換える単語を推定するテキスト推定モデルに入力する。
【選択図】図9
【特許請求の範囲】
【請求項1】
情報処理装置による情報処理方法であって、前記情報処理装置が、
入力テキストデータに含まれる単語列と、前記単語列から変換されたラベル列と、に基づき、前記単語列における特定の単語の位置を示す位置決め用の文字列と、前記特定の単語とを対応付け、
前記位置決め用の文字列と、前記特定の単語とを含む入力データを生成し、前記特定の単語と置き換える単語を推定するテキスト推定モデルに入力する、情報処理方法。
【請求項2】
前記情報処理装置が、
前記単語列における前記特定の単語と、前記位置決め用の文字列とを、対応付け用の第一の文字列及び第二の文字列で囲った入力データを生成し、前記テキスト推定モデルに入力する、請求項1記載の情報処理方法。
【請求項3】
前記情報処理装置が、
前記対応付け用の第一の文字列の直後に、前記位置決め用の文字列を配置し、前記位置決め用の文字列の直後に前記特定の単語を配置し、前記特定の単語の直後に前記対応付け用の第二の文字列を配置する、請求項2記載の情報処理方法。
【請求項4】
前記ラベル列に含まれるラベルは、前記単語列に含まれる単語の置換、削除、及び追加の何れか1つを示し、
前記特定の単語は、前記単語の置換を示すラベルに変換された単語である、請求項1乃至3の何れか一項に記載の情報処理方法。
【請求項5】
前記情報処理装置が、
前記単語列に含まれる各単語を、単語の文字の種類に基づいて定義されたラベルに変換する、請求項1乃至4の何れか一項に記載の情報処理方法。
【請求項6】
前記ラベルは、前記単語の先頭の文字の種類を示す情報と、末尾の文字の種類を示す情報と、を含む、請求項5記載の情報処理方法。
【請求項7】
前記文字の種類は、ひらがな、漢字、カタカナ、及び英字のすくとも1つを含む、請求項5又は6記載の情報処理方法。
【請求項8】
情報処理装置による情報処理方法であって、前記情報処理装置が、
入力テキストデータから取得される単語列に含まれる各単語を、前記単語の文字の種類に基づいて定義された、前記単語の置換、削除、及び追加を示す何れかのラベルに変換する、情報処理方法。
【請求項9】
入力テキストデータに含まれる単語列と、前記単語列から変換されたラベル列と、に基づき、前記単語列における特定の単語の位置を示す位置決め用の文字列と、前記特定の単語とを対応付ける対応付け部と
前記位置決め用の文字列と、前記特定の単語とを含む入力データを生成し、前記特定の単語と置き換える単語を推定するテキスト推定モデルに入力するデータ生成部と、を有する情報処理装置。
【請求項10】
入力テキストデータに含まれる単語列と、前記単語列から変換されたラベル列と、に基づき、前記単語列における特定の単語の位置を示す位置決め用の文字列と、前記特定の単語とを対応付け、
前記位置決め用の文字列と、前記特定の単語とを含む入力データを生成し、前記特定の単語と置き換える単語を推定するテキスト推定モデルに入力する、処理を情報処理装置に実行させる、情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理方法、情報処理装置、プログラムに関する。
【背景技術】
【0002】
従来から、例えば人間が作成したテキストデータや、音声認識処理、文字認識処理の結果として生成されたテキストデータを入力とし、入力されたテキストデータ中の誤りを自動訂正して出力する技術が知られている。この技術では、具体的には、例えば、入力されたテキストデータに含まれる特定の文字列をマスクし、マスクされた文字列を推定した文字列に変換したテキストデータを出力する。
【発明の概要】
【発明が解決しようとする課題】
【0003】
上述した従来の技術では、マスクされた文字列を推定する際に参照される情報が限られており、精度の高い推定を行うことが困難である。
【0004】
開示の技術は、上記事情に鑑みたものであり、単語の推定の精度を向上させることを目的とする。
【課題を解決するための手段】
【0005】
開示の技術は、情報処理装置による情報処理方法であって、前記情報処理装置が、入力テキストデータに含まれる単語列と、前記単語列から変換されたラベル列と、に基づき、前記単語列における特定の単語の位置を示す位置決め用の文字列と、前記特定の単語とを対応付け、前記位置決め用の文字列と、前記特定の単語とを含む入力データを生成し、前記特定の単語と置き換える単語を推定するテキスト推定モデルに入力する。
【発明の効果】
【0006】
単語の推定の精度を向上させることができる。
【図面の簡単な説明】
【0007】
図1】第一の実施形態の情報処理システムのシステム構成の一例を示す図である。
図2】情報処理装置のハードウェア構成の一例を示す図である。
図3】端末装置のハードウェア構成の一例を示す図である。
図4】第一の実施形態の情報処理装置の機能を説明する図である。
図5】第一の実施形態の情報処理装置の動作を説明する第一のフローチャートである。
図6】第一の実施形態のラベル推定モデルについて説明する図である。
図7】第一の実施形態における単語列とラベル列の一例を示す図である。
図8】テキスト変換部の処理を説明するフローチャートである。
図9】テキスト推定モデルに対する入力データの一例を示す図である。
図10】テキスト推定モデルによる推定結果の一例を示す図である。
図11】出力テキストデータの一例を示す図である。
図12】第二の実施形態の情報処理装置の機能を説明する図である。
図13】文字の種類の定義について説明する図である。
図14】第二の実施形態におけるラベルを決定するための処理を説明するフローチャートである。
図15】第二の実施形態の単語群とラベル列の一例を示す図である。
【発明を実施するための形態】
【0008】
(第一の実施形態)
以下に、図面を参照して、実施形態について説明する。図1は、第一の実施形態の情報処理システムのシステム構成の一例を示す図である。
【0009】
本実施形態の情報処理システム100は、情報処理装置200と、端末装置300とを含む。情報処理システム100において、情報処理装置200と端末装置300とは、ネットワーク等を介して接続される。
【0010】
本実施形態の情報処理装置200は、例えば、端末装置300からテキストデータが入力されると、テキストデータに含まれる単語(文字列)の正誤を推定する。また、情報処理装置200は、推定結果に基づき正しい単語を推定し、推定された単語を含むテキストデータを端末装置300に出力する。
【0011】
なお、本実施形態では、独立した形で意味を持つ言語の最小単位であってよく、単語には、句読点が含まれてもよい。また、本実施形態の言語は、日本語以外の言語であってもよく、プログラミング言語等であってもよい。
【0012】
具体的には、本実施形態の情報処理装置200は、モデル記憶部210と、テキスト変換処理部220と、を有する。
【0013】
モデル記憶部210には、入力されたテキストデータの正誤を推定するためのモデルや、正しい単語を推定するためのモデルが格納される。これらのモデルには、例えば、ニューラルネット技術が用いられてもよい。
【0014】
テキスト変換処理部220は、モデル記憶部210に格納されたモデルを用いて、端末装置300から入力されたテキストデータに含まれる単語(文字列)の正誤を判定し、判定結果に応じて、正しい単語を推定し、推定された正しい単語を含むテキストデータを出力する。なお、正しいと推定された単語とは、単語列における位置が保持される単語であってよく、誤っていると推定された単語とは、削除される、他の単語と置換される、何らの文字が追加される、単語であってよい。
【0015】
このとき、本実施形態のテキスト変換処理部220は、他の単語と置換されるべき単語を、正しい単語(置換後の単語)を推定するためのモデルに入力として与える。
【0016】
本実施形態では、このように、元々のテキストデータに含まれている単語をモデルの入力に与えることで、正しい単語の推定の精度を向上させる。
【0017】
なお、図1の例では、情報処理システム100に含まれる端末装置300は1台としているが、情報処理システム100に含まれる端末装置300は任意の台数であってよい。
【0018】
また、図1の例では、情報処理装置200に対して、端末装置300からテキストデータが入力されるものとしたが、これに限定されない。情報処理装置200は、情報処理装置200が有する入力装置等からテキストデータの入力を受け付けてもよく、その場合には、端末装置300と通信しなくてもよい。
【0019】
また、図1の例では、モデル記憶部210は、情報処理装置200が有するものとしたが、これに限定されない。モデル記憶部210は、情報処理装置200の外部に設けられていてもよい。また、テキスト変換処理部220は、複数の情報処理装置によって実現されてもよい。言い換えれば、情報処理装置200は、複数の情報処理装置を含んでもよい。
【0020】
次に、図2図3を参照して、本実施形態の情報処理装置200と端末装置300のハードウェア構成について説明する。
【0021】
図2は、情報処理装置のハードウェア構成の一例を示す図である。情報処理装置200は、コンピュータによって構築されており、図2に示されているように、CPU201、ROM202、RAM203、HD204、HDD(Hard Disk Drive)コントローラ205、ディスプレイ206、外部機器接続I/F(Interface)208、ネットワークI/F209、バスラインB1、キーボード211、ポインティングデバイス212、DVD-RW(Digital Versatile Disk Rewritable)ドライブ214、メディアI/F216を備えている。
【0022】
これらのうち、CPU201は、情報処理装置200全体の動作を制御する。ROM202は、IPL等のCPU201の駆動に用いられるプログラムを記憶する。RAM203は、CPU201のワークエリアとして使用される。HD204は、プログラム等の各種データを記憶する。HDDコントローラ205は、CPU201の制御にしたがってHD204に対する各種データの読み出し又は書き込みを制御する。
【0023】
ディスプレイ206は、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示する。外部機器接続I/F208は、各種の外部機器を接続するためのインターフェースである。この場合の外部機器は、例えば、USB(Universal Serial Bus)メモリやプリンタ等である。ネットワークI/F209は、通信ネットワークを利用してデータ通信をするためのインターフェースである。バスラインB1は、図2に示されているCPU201等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
【0024】
また、キーボード211は、文字、数値、各種指示などの入力のための複数のキーを備えた入力手段の一種である。ポインティングデバイス212は、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行う入力手段の一種である。DVD-RWドライブ214は、着脱可能な記録媒体の一例としてのDVD-RW213に対する各種データの読み出し又は書き込みを制御する。なお、DVD-RWに限らず、DVD-R等であってもよい。メディアI/F216は、フラッシュメモリ等の記録メディア215に対するデータの読み出し又は書き込み(記憶)を制御する。
【0025】
図3は、端末装置のハードウェア構成の一例を示す図である。本実施形態の端末装置300は、CPU301、ROM302、RAM303、EEPROM304、CMOSセンサ305、撮像素子I/F306、加速度・方位センサ307、メディアI/F309、GPS受信部311を備えている。
【0026】
これらのうち、CPU301は、端末装置300全体の動作を制御する演算処理装置である。ROM302は、CPU301やIPL等のCPU301の駆動に用いられるプログラムを記憶する。RAM303は、CPU301のワークエリアとして使用される。EEPROM304は、CPU301の制御にしたがって、スマートフォン用プログラム等の各種データの読み出し又は書き込みを行う。ROM302、RAM303、EEPROM304は、端末装置300の記憶装置の一例である。
【0027】
CMOS(Complementary Metal Oxide Semiconductor)センサ305は、CPU301の制御に従って被写体(主に自画像)を撮像して画像データを得る内蔵型の撮像手段の一種である。なお、CMOSセンサではなく、CCD(Charge Coupled Device)センサ等の撮像手段であってもよい。
【0028】
撮像素子I/F306は、CMOSセンサ305の駆動を制御する回路である。加速度・方位センサ307は、地磁気を検知する電子磁気コンパスやジャイロコンパス、加速度センサ等の各種センサである。メディアI/F309は、フラッシュメモリ等の記録メディア308に対するデータの読み出し又は書き込み(記憶)を制御する。GPS受信部311は、GPS衛星からGPS信号を受信する。
【0029】
また、端末装置300は、遠距離通信回路312、遠距離通信回路312のアンテナ312a、CMOSセンサ313、撮像素子I/F314、マイク315、スピーカ316、音入出力I/F317、ディスプレイ318、外部機器接続I/F(Interface)319、近距離通信回路320、近距離通信回路320のアンテナ320a、及びタッチパネル321を備えている。
【0030】
これらのうち、遠距離通信回路312は、通信ネットワークを介して、他の機器と通信する回路である。CMOSセンサ313は、CPU301の制御に従って被写体を撮像して画像データを得る内蔵型の撮像手段の一種である。撮像素子I/F314は、CMOSセンサ313の駆動を制御する回路である。マイク315は、音を電気信号に変える内蔵型の回路である。スピーカ316は、電気信号を物理振動に変えて音楽や音声などの音を生み出す内蔵型の回路である。音入出力I/F317は、CPU301の制御に従ってマイク315及びスピーカ316との間で音信号の入出力を処理する回路である。
【0031】
ディスプレイ318は、被写体の画像や各種アイコン等を表示する液晶や有機EL(Electro Luminescence)などの表示手段の一種である。外部機器接続I/F319は、各種の外部機器を接続するためのインターフェースである。近距離通信回路430は、NFC(Near Field Communication)やBluetooth(登録商標)等の通信回路である。タッチパネル321は、利用者がディスプレイ318を押下することで、端末装置300を操作する入力手段の一種である。ディスプレイ318は、端末装置300の有する表示部の一例である。
【0032】
なお、本実施形態では、端末装置300は、スマートフォンやタブレット端末としたが、これに限定されない。端末装置300は、図2に示す情報処理装置200と同様のハードウェア構成を有する一般的なコンピュータであってもよい。
【0033】
次に、図4を参照して、情報処理装置200の機能について説明する。図4は、第一の実施形態の情報処理装置の機能を説明する図である。
【0034】
本実施形態の情報処理装置200は、モデル記憶部210と、テキスト変換処理部220と、を有する。本実施形態のモデル記憶部210は、ラベル推定モデル240と、テキスト推定モデル250と、が格納されている。
【0035】
はじめに、テキスト変換処理部220の機能について説明する。
【0036】
本実施形態のテキスト変換処理部220は、テキスト入力部221、ラベル変換部222、テキスト変換部223、テキスト出力部224を有する。
【0037】
テキスト入力部221は、情報処理装置200に対して入力されたテキストデータを受け付ける。以下の説明では、情報処理装置200に対して入力されたテキストデータを入力テキストデータと表現する場合がある。
【0038】
ラベル変換部222は、入力テキストデータを解析して、単語単位に分割し、単語列を生成する。そして、ラベル変換部222は、単語列をモデル記憶部210に格納されたラベル推定モデル240に入力し、ラベル推定モデル240から出力されたラベル列を取得する。ラベル列とは、単語列に含まれる各単語を、単語の保持、削除、置換、追加等のうち、何れか一つを示すラベルに変換することで取得される。
【0039】
テキスト変換部223は、対応付け部225と、データ生成部226とを有する。対応付け部225は、単語列における特定の単語と、特定の単語の位置を示す文字列とを対応付ける。
【0040】
データ生成部226は、テキスト推定モデル250への入力データを生成する。具体的には、データ生成部226は、特定の単語と、特定の単語の位置を示す文字列と、を含む入力データを生成する。
【0041】
また、テキスト変換部223は、テキスト推定モデル250から出力された出力データを編集して、テキスト推定モデル250による推定結果を反映させたテキストデータを生成する。以下の説明では、テキスト推定モデル250による推定結果を反映させたテキストデータを、出力テキストデータと表現する場合がある。
【0042】
テキスト出力部224は、テキスト変換部223が生成した出力テキストデータを端末装置300に出力する。言い換えれば、テキスト出力部224は、出力テキストデータを、入力テキストデータの入力元に対して出力する。
【0043】
次に、モデル記憶部210に格納された各モデルについて説明する。
【0044】
ラベル推定モデル240は、ラベル変換部222で生成された単語列が入力されると、この単語列に含まれる単語をラベルに変換したラベル列をラベル変換部222に対して出力する。ラベル推定モデル240の詳細は後述する。
【0045】
テキスト推定モデル250は、テキスト変換部223が生成した入力データが入力されると、入力データに基づき、出力する単語を推定し、推定結果をテキスト変換部223へ出力する。テキスト推定モデル250の詳細は後述する。
【0046】
次に、図5を参照して、本実施形態の情報処理装置200の動作について説明する。図5は、第一の実施形態の情報処理装置の動作を説明する第一のフローチャートである。
【0047】
本実施形態の情報処理装置200において、テキスト変換処理部220は、テキスト入力部221により、端末装置300から入力テキストデータを取得する(ステップS501)。続いて、テキスト変換処理部220は、ラベル変換部222により、入力テキストデータから単語列を生成する(ステップS502)。
【0048】
続いて、ラベル変換部222は、ラベル推定モデル240に対して単語列を入力し(ステップS503)、ラベル推定モデル240から出力されるラベル列を取得する(ステップS504)。
【0049】
続いて、ラベル変換部222は、テキスト変換部223に対して、取得したラベル列と入力テキストデータとを出力する(ステップS505)。なお、このとき、テキスト変換部223は、単語列もテキスト変換部223に出力してもよい。
【0050】
続いて、テキスト変換処理部220は、テキスト変換部223により、テキスト推定モデル250に対する入力データを生成し、テキスト推定モデル250に入力する(ステップS506)。続いて、テキスト変換部223は、テキスト推定モデル250から推定結果を取得し(ステップS507)、推定結果に基づき出力テキストデータを生成する(ステップS508)。ステップS506からステップS508の処理の詳細は後述する。
【0051】
続いて、テキスト変換処理部220は、テキスト出力部224により、テキスト変換部223において生成された出力テキストデータを端末装置300に出力する(ステップS509)。
【0052】
次に、図6を参照して、本実施形態のラベル推定モデル240について説明する。図6は、第一の実施形態のラベル推定モデルについて説明する図である。
【0053】
本実施形態のラベル推定モデル240は、例えば、BERT(Bidirectional Encoder Representations from Transformers)などのMasked Language Modelと呼ばれるニューラルネット技術が用いられてもよい。
【0054】
また、本実施形態では、MT-DNN(Multi Task Deep Neural Networks)を始めとしたBERTを拡張したモデルをはじめとするとトランスフォーマを利用したモデルを用いてもよいし、アテンション付きのRNN シーケンス・トゥー・シーケンスモデルを用いてもよく、その他の言語理解に関する何らかのモデルを適用してもよい。
【0055】
図6では、本実施形態で用いるニューラルネットワークの概略図を示している。図6において、入力列「W1、W2、・・・、WN」は、ラベル推定モデル240に入力される単語列であり、出力列「T1、T2、・・・、TN」は、ラベル推定モデル240から出力されるラベル列である。
【0056】
また、図6に示すニューラルネットワークでは、中間に状態ベクトル「Vec」を保持するノードが層状に配置されている。状態ベクトル「Vec」の値は、単語列とラベル列との関係を示す学習データに基づいて、予め学習しておく。学習の方法は、例えば、バックプロパゲーション法(誤差逆伝搬法)等であってよい。
【0057】
ラベル推定モデル240では、保持(K)、削除(D)、置換(R)および、直後への単語の追加(KA又はRA)がラベルとして定義されている。
【0058】
ラベル「K」は、該当する単語を保持することを示し、ラベル「D」は、該当する単語を削除することを示し、ラベル「R」は、該当する単語を他の単語に置き換える(置換)することを示す。
【0059】
また、ラベル「KA」は、該当する単語を保持し、該当する単語の直後に何らかの単語を追加することを示し、ラベル「RA」は、該当する単語を他の単語に置換し、置換された単語の直後に何らかの単語を追加することを示す。何らかの単語とは、例えば、テキスト推定モデル250等の学習モデルにより推定された単語であってよい。
【0060】
以下に、図7を参照して、本実施形態のラベル推定モデル240に入力される単語列と、ラベル推定モデル240から出力されるラベル列の例を示す。図7は、第一の実施形態における単語列とラベル列の一例を示す図である。
【0061】
図7の例では、入力テキストデータが「テレビを見たかのは未明。」であり、入力テキストデータから単語列71が生成されている。単語列71は、「テレビ」、「見」、「た」、「か」、「の」、「は」、「未明」、「。」である。
【0062】
ラベル変換部222は、この単語列71をラベル推定モデル240に入力し、ラベル列72を取得すると、単語列71とラベル列72とをテキスト変換部223へ出力する。
【0063】
次に、図8を参照して、テキスト変換部223の処理について説明する。図8は、テキスト変換部の処理を説明するフローチャートである。言い換えれば、図8では、図5のステップS506の処理を説明する図である。
【0064】
本実施形態のテキスト変換部223は、ラベル変換部222から入力データを取得すると、ラベル列の先頭から順に、ラベルの種別を判定する(ステップS801)。
【0065】
ここで、テキスト変換部223は、ラベル「K」である場合は、後述するステップS805に進む。テキスト変換部223は、ラベル「KA」である場合、後述するステップS804に進む。
【0066】
テキスト変換部223は、対応付け部225により、ラベル「R」又はラベル「RA」である場合、文字列「[BR][MASK]置換元単語[ER]」を生成する(ステップS802)。
【0067】
続いて、テキスト変換部223は、ラベルの種別がラベル「RA」であるか否かを判定する(ステップS803)。
【0068】
ラベルの種別がラベル「RA」でない場合、テキスト変換部223は、後述するステップS805に進む。
【0069】
ステップS803において、ラベルの種別がラベル「RA」である場合、テキスト変換部223は、データ生成部226により、文字列[MASK]を生成する(ステップS804)。文字列[MASK]は、単語群において、テキスト推定モデル250により推定された単語に置き換えられる位置を示すための位置決め用文字列である。言い換えれば、文字列[MASK]は、入力テキストデータに含まれる単語のうち、他の単語に置き換えられる単語の位置を特定するための文字列である。
【0070】
続いて、テキスト変換部223は、ラベル列に含まれる全てのラベルについて処理したか否かを判定する(ステップS805)。
【0071】
ステップS805において、全てのラベルについて処理を行っていない場合、テキスト変換部223は、次のラベルを選択し(ステップS806)、ステップS801へ戻る。
【0072】
ステップS805において、全てのラベルについて処理を行った場合、テキスト変換部223は、処理を終了する。
【0073】
なお、テキスト変換部223は、ラベルの種別がラベル「D」である場合には、対応する単語を単語列から削除する。
【0074】
本実施形態では、このようにして、テキスト変換部223により、テキスト推定モデル250に対する入力データが生成される。
【0075】
以下に、図9を参照して、本実施形態の入力データについて説明する。図9は、テキスト推定モデルに対する入力データの一例を示す図である。
【0076】
図9に示す入力データ91は、図7のラベル列72に対して、図8の処理を行って、生成された入力データである。
【0077】
入力データ91では、単語群において、ラベル「D」に変換された単語「か」は削除されており、ラベル「KA」に変換された単語「の」の直後の位置に、文字列「MASK」が配置されている。また、入力データ91では、ラベル「R」に変換された単語が配置されていた箇所に、文字列「[BR][MASK]未明[ER]」が配置されている。
【0078】
ここで、単語「未明」は、入力テキストデータに含まれる単語のうち、ラベル「R」に変換された単語である。つまり、単語「未明」は、何らかの単語に置き換えられる元となる置換元の単語である。
【0079】
また、文字列[BR]、[ER]は、文字列[MASK]と置換元の単語とを対応付けるための文字列である。言い換えれば、文字列[BR]、[ER]は、位置決め用の文字列と、置換元の単語とを対応付ける対応付け用の文字列である。
【0080】
例えば、ラベル群に、文字列[MASK]に置き換えられる箇所が複数存在する場合に等には、単語列において、単語を置き換える位置と、置換元となる単語との対応関係を特定できない場合がある。
【0081】
本実施形態では、位置決め用の文字列である文字列[MASK]と、置換元の単語とを、文字列[BR]、[ER]で囲うことで、テキスト推定モデル250に入力される入力データにおいて、両者の対応関係が明確になる。
【0082】
言い換えれば、本実施形態では、対応付け用の第一の文字列[BR]の直後に、位置決め用の文字列[MASK]と配置し、位置決め用の文字列[MASK]の直後に、置換の対象となる特定の単語を配置し、特定の単語の直後に対応付け用の第二の文字列[ER]を配置することで、位置決め用の文字列[MASK]と特定の単語とを対応付ける。
【0083】
そのため、本実施形態では、テキスト推定モデル250による単語の推定の精度を向上させることができる。
【0084】
本実施形態のテキスト推定モデル250は、ラベル推定モデル240と同様のニューラルネット技術が用いられてもよい。すなわち、テキスト推定モデル250は、図9に例示した入力データ(入力単語列)を入力として、位置決め用の文字列(プレースホルダ)「MASK」の箇所に現れる単語を推定し出力する。
【0085】
このテキスト推定モデル250は、プレースホルダを含む入力単語列と、プレースホルダが示す位置の単語を正解の単語に置き換えた出力単語列とを学習データとして、バックプロパゲーション法(誤差逆伝搬法)等によって予め学習させた学習モデルである。
【0086】
本実施形態のテキスト変換部223は、入力データ91を生成すると、テキスト推定モデル250に対し、入力データ91を入力し、テキスト推定モデル250から推定結果を取得する。
【0087】
以下に、図10を参照して、本実施形態のテキスト推定モデル250の推定結果について説明する。図10は、テキスト推定モデルによる推定結果の一例を示す図である。
【0088】
図10に示す出力データ101では、入力データ91における文字列「[BR][MASK]未明[ER]」が、文字列「[BR]不明 未明[ER]」に変換されている。つまり、出力データ101では、置換元の単語である「未明」から、テキスト推定モデル250によって推定された単語が「不明」であることがわかる。
【0089】
本実施形態では、このように、テキスト推定モデル250による推定結果と、置換元の単語とを、文字列[BR]、[ER]で対応付けたまま出力する。
【0090】
本実施形態のテキスト変換部223は、この出力データ101から、文字列[BR]、[ER]と、置換元の単語である「未明」を削除することで、出力テキストデータを生成する。
【0091】
図11は、出力テキストデータの一例を示す図である。図11に示す出力テキストデータ111は、入力テキストデータに含まれる単語列と、ラベル推定モデル240が出力したラベル列と、から生成された入力データに基づき、テキスト推定モデル250が、正しいと推定した結果のテキストデータである。
【0092】
本実施形態では、テキスト出力部224により、この出力テキストデータが端末装置300に出力される。言い換えれば、出力テキストデータ111は、入力テキストデータの送信元に対して出力される。
【0093】
このように、本実施形態によれば、置換する位置毎に置換元の単語を参照することができるため、単語の推定の精度を向上させることができる。また、本実施形態のテキスト推定モデル250は、予め行う学習によって、置換元の単語と置換後の単語の関係も学習されているため、このような手がかりがあることで、単語(マスクされた文字列)の推定の精度を向上させることができる。
【0094】
(第二の実施形態)
以下に図面を参照して、第二の実施形態について説明する。第二の実施形態では、入力テキストデータから生成された単語列をラベルに変換する際に、単語列に含まれる文字の種類を示す情報をラベルに含める点が、第一の実施形態と相違する。よって、以下の第二の実施形態の説明では、第一の実施形態と同様の機能構成を有するものには、第一の実施形態の説明で用いた符号を付与し、その説明を省略する。
【0095】
図12は、第二の実施形態の情報処理装置の機能を説明する図である。
【0096】
本実施形態の情報処理装置200Aは、モデル記憶部210Aと、テキスト変換処理部220と、を有する。本実施形態のモデル記憶部210は、ラベル推定モデル240Aと、テキスト推定モデル250と、が格納されている。
【0097】
本実施形態のラベル推定モデル240Aは、ラベル変換部222から単語列が入力されると、各単語を、単語の先頭及び最後の文字の種類を示す情報を含むラベルに変換する。
【0098】
具体的には、ラベル推定モデル240Aでは、文字の種類が数値として定義されており、この定義に基づき、単語列を、文字の種類を示す情報をラベル列に変換してもよい。
【0099】
つまり、本実施形態では、単語列に含まれる各単語に対し、単語の文字の種類に基づいて定義されたラベルに変換する。
【0100】
図13は、文字の種類の定義について説明する図である。本実施形態では、文字の種類と、番号(数値)とを対応付けることで、文字の種類を定義している。
【0101】
具体的には、数値「0」は、文字の種類がひらがなであることを示し、数値「1」は、文字の種類が漢字であることを示す。
【0102】
また、本実施形態では、ラベル「K」についてのみ、単語の文字の種類を示す情報を含めたラベルKnmとする。
【0103】
したがって、本実施形態では、保持(Knm)、削除(D)、置換(R)および、直後への単語の追加(KnmA又はRA)がラベルとして定義されている。
【0104】
次に、図14を参照して、ラベル推定モデル240Aによる単語列の変換について説明する。図14は、第二の実施形態におけるラベルを決定するための処理を説明するフローチャートである。本実施形態のラベル推定モデル240Aは、入力される単語列と、出力されるラベル列とを含む学習データに基づき、バックプロパゲーション法(誤差逆伝搬法)によって予め学習することで生成される。
【0105】
図14に示す処理は、この学習データを用いて学習するときの学習部の処理を示している。なお、学習部は、情報処理装置200が有していてもよいし、他の情報処理装置が有していてもよい。
【0106】
本実施形態において、学習部は、入力テキストデータから生成された単語列が取得されると、ラベルの種類を特定する(ステップS1401)。ステップS1401において、ラベルの種類が「削除」である場合、この単語をラベル「D」に変換し(ステップS1402)、後述するステップS1408に進む。
【0107】
ステップS1401において、ラベルの種類が「置換」である場合、この単語をラベル「R」に変換し(ステップS1403)、後述するステップS1406に進む。
【0108】
ステップS1401において、ラベルの種類が「保持」である場合、学習部は、この単語の先頭の文字の種類を示す値nと、この単語の末尾の文字の種類を示す値mとを特定する(ステップS1404)。続いて、学習部は、この単語をラベル「Knm」に変換する(ステップS1405)。
【0109】
続いて、学習部は、この単語の直後に追加すべき単語が存在するか否かを判定する(ステップS1406)。ステップS1406において、追加すべき単語が存在しない場合、学習部は、後述するステップS1408に進む。
【0110】
ステップS1406において、追加すべき単語が存在する場合、学習部は、ラベル末尾に「A」を追加する(ステップS1407)。
【0111】
続いて、学習部は、入力された単語列に含まれる全ての単語についてラベルに変換したか否かを判定する(ステップS1408)。
【0112】
ステップS1408において、全ての単語についてラベルに変換していない場合、学習部は、次の単語を選択して、ステップS1401へ戻る。
【0113】
ステップS1408において、全ての単語についてラベルに変換した場合、学習部は、処理を終了する。
【0114】
本実施形態では、このようにして学習されたラベル推定モデル240Aを用いて、単語をラベルに変換する。
【0115】
以下に、図15を参照して、本実施形態のラベル推定モデル240Aから出力されるラベル列について説明する。
【0116】
図15は、第二の実施形態の単語群とラベル列の一例を示す図である。図15に示すラベル列72Aは、ラベル推定モデル240Aに単語列71を入力した場合にラベル推定モデル240Aから出力されるラベル列の一例である。
【0117】
ラベル列72Aでは、単語「テレビ」と対応するラベルが、ラベル「K22」となっており、単語の最初と末尾の文字の種類がカタカナであることがわかる。
【0118】
本実施形態では、このように、ラベルに文字の種類を示す情報が含まれているため、ラベル列に基づくテキスト推定モデル250による推定の精度が向上する。
【0119】
具体的には、例えば、入力テキストデータから生成された単語列が、「本」、「書く」であった場合を例として、本実施形態の効果について説明する。
【0120】
一般に、「書く」のような和語動詞には、ひらがなの助詞が前置されることが多い。また、この単語列において、単語「書く」の直前の単語「本」のラベルは「K11」である。このため、単語「書く」の直前にはひらがなではなく漢字が出現していることがわかる。したがって、本実施形態では、単語「書く」の前に、助詞を追加するために、単語「本」のラベルを「K11A」と推定することができる。
【0121】
このように、本実施形態では、単語の先頭と末尾の文字の種類を示す情報をラベルに含めることで、単語列に基づき推定されるラベル列の推定の精度を向上させることができる。
【0122】
また、本実施形態によれば、文字の種類を示す情報を含むラベル列と、単語列とから、テキスト推定モデル250への入力データが生成される。したがって、テキスト推定モデル250に入力される入力データの情報量を増やすことができ、テキスト推定モデル250による単語の推定の精度を向上させることができる。
【0123】
なお、本実施形態は、第一の実施形態と組み合わせて情報処理装置200Aに適用されても良いし、本実施形態のみが情報処理装置200Aに適用されてもよい。
【0124】
上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(digital signal processor)、FPGA(field programmable gate array)や従来の回路モジュール等のデバイスを含むものとする。
【0125】
また、実施形態に記載された装置群は、本明細書に開示された実施形態を実施するための複数のコンピューティング環境のうちの1つを示すものにすぎない。
【0126】
ある実施形態では、情報処理装置200は、サーバクラスタといった複数のコンピューティングデバイスを含む。複数のコンピューティングデバイスは、ネットワークや共有メモリなどを含む任意のタイプの通信リンクを介して互いに通信するように構成されており、本明細書に開示された処理を実施する。同様に、情報処理装置200は、互いに通信するように構成された複数のコンピューティングデバイスを含むことができる。
【0127】
さらに、情報処理装置200は、開示された処理ステップを様々な組み合わせで共有するように構成できる。例えば、情報処理装置200によって実行されるプロセスは、他の情報処理装置によって実行され得る。同様に、情報処理装置200の機能は、他の情報処理装置によって実行することができる。また、情報処理装置と他の情報処理装置の各要素は、1つの情報処理装置にまとめられていても良いし、複数の装置に分けられていても良い。
【0128】
以上、各実施形態に基づき本発明の説明を行ってきたが、上記実施形態に示した要件に本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することができ、その応用形態に応じて適切に定めることができる。
【符号の説明】
【0129】
100 情報処理システム
200、200A 情報処理装置
210 モデル記憶部
220 テキスト変換処理部
221 テキスト入力部
222 ラベル変換部
223 テキスト変換部
224 テキスト出力部
240、240A ラベル推定モデル
250 テキスト推定モデル
300 端末装置
【先行技術文献】
【非特許文献】
【0130】
【非特許文献1】Felix: Flexible Text Editing Through Tagging and Insertion、Jonathan Mallinson, Aliaksei Severyn, Eric Malmi, Guillermo Garrido[令和3年9月6日検索]、インターネット〈URL: https://arxiv.org/abs/2003.10687〉
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15