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

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

▶ 富士フイルム株式会社の特許一覧

特開2024-145589情報処理装置、情報処理方法、及び情報処理プログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024145589
(43)【公開日】2024-10-15
(54)【発明の名称】情報処理装置、情報処理方法、及び情報処理プログラム
(51)【国際特許分類】
   G06F 40/289 20200101AFI20241004BHJP
   G06F 40/216 20200101ALI20241004BHJP
【FI】
G06F40/289
G06F40/216
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2023058014
(22)【出願日】2023-03-31
(71)【出願人】
【識別番号】306037311
【氏名又は名称】富士フイルム株式会社
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】三沢 翔太郎
(72)【発明者】
【氏名】狩野 竜示
(72)【発明者】
【氏名】鑓水 大和
(72)【発明者】
【氏名】谷口 友紀
(72)【発明者】
【氏名】小野田 浩平
(57)【要約】
【課題】文書データを適切な区切り位置で区切ることができる情報処理装置、情報処理方法、及び情報処理プログラムを得る。
【解決手段】情報処理装置は、第1の文書データを異なる長さで区切ることによって第1の文字列集合を生成し、第1の文字列集合と、第1の文書データから目的に沿って作成された第2の文書データとを用いて、第1の文字列集合を構成する各文字列の評価値を導出し、導出した評価値に基づいて、第1の文字列集合の中から複数の文字列を、文書データを入力とし、入力の文書データに含まれる複数の文字列を含む第2の文字列集合を出力とする生成モデルの正解データとして選択する。
【選択図】図7
【特許請求の範囲】
【請求項1】
少なくとも一つのプロセッサを備える情報処理装置であって、
前記プロセッサは、
第1の文書データを取得し、
前記第1の文書データを異なる長さで区切ることによって第1の文字列集合を生成し、
前記第1の文字列集合と、前記第1の文書データから目的に沿って作成された第2の文書データとを用いて、前記第1の文字列集合を構成する各文字列の評価値を導出し、
導出した評価値に基づいて、前記第1の文字列集合の中から複数の文字列を、文書データを入力とし、入力の文書データに含まれる複数の文字列を含む第2の文字列集合を出力とする生成モデルの正解データとして選択する
情報処理装置。
【請求項2】
前記プロセッサは、
前記第1の文書データをそれぞれ異なる長さで区切ることによって複数の前記第1の文字列集合を生成し、
前記評価値に基づいて、前記複数の前記第1の文字列集合のうちの何れかを前記生成モデルの正解データとして選択する
請求項1に記載の情報処理装置。
【請求項3】
前記プロセッサは、
前記第1の文字列集合の評価値として、前記第1の文字列集合を構成する各文字列の評価値の合計値を導出し、
前記第1の文字列集合に含まれるが前記第2の文書データに含まれない文字列の分量、及び前記第2の文書データに含まれるが前記第1の文字列集合に含まれない文字列の分量の少なくとも一方に応じて、導出した前記第1の文字列集合の評価値を減少させる
請求項2に記載の情報処理装置。
【請求項4】
前記プロセッサは、
前記第1の文書データを区切る処理を、区切る長さを異ならせながら繰り返し行うことによって1つの前記第1の文字列集合を生成し、
導出した評価値に基づいて、前記第1の文字列集合の中から複数の文字列を重複する箇所がない状態で前記生成モデルの正解データとして選択する
請求項1に記載の情報処理装置。
【請求項5】
前記評価値は、第1の文字列集合を構成する各文字列と、第2の文書データとの一致度が高いほど評価が高くなる値である
請求項1から請求項4の何れか1項に記載の情報処理装置。
【請求項6】
前記評価値は、第1の文字列集合を構成する各文字列が長いほど評価が高くなる値である
請求項1から請求項4の何れか1項に記載の情報処理装置。
【請求項7】
前記プロセッサは、
前記生成モデルに対して前記第1の文書データを入力することによって前記第1の文書データに対応する第2の文字列集合を生成し、
前記第2の文字列集合と、前記第1の文字列集合の中から選択した複数の文字列との誤差が最小化されるように前記生成モデルを学習させる
請求項1から請求項4の何れか1項に記載の情報処理装置。
【請求項8】
第1の文書データを取得し、
前記第1の文書データを異なる長さで区切ることによって第1の文字列集合を生成し、
前記第1の文字列集合と、前記第1の文書データから目的に沿って作成された第2の文書データとを用いて、前記第1の文字列集合を構成する各文字列の評価値を導出し、
導出した評価値に基づいて、前記第1の文字列集合の中から複数の文字列を、文書データを入力とし、入力の文書データに含まれる複数の文字列を含む第2の文字列集合を出力とする生成モデルの正解データとして選択する
処理を情報処理装置が備えるプロセッサが実行する情報処理方法。
【請求項9】
第1の文書データを取得し、
前記第1の文書データを異なる長さで区切ることによって第1の文字列集合を生成し、
前記第1の文字列集合と、前記第1の文書データから目的に沿って作成された第2の文書データとを用いて、前記第1の文字列集合を構成する各文字列の評価値を導出し、
導出した評価値に基づいて、前記第1の文字列集合の中から複数の文字列を、文書データを入力とし、入力の文書データに含まれる複数の文字列を含む第2の文字列集合を出力とする生成モデルの正解データとして選択する
処理を情報処理装置が備えるプロセッサに実行させるための情報処理プログラム。
【請求項10】
少なくとも一つのプロセッサを備える情報処理装置であって、
前記プロセッサは、
第1の文書データを取得し、
文書データを入力とし、入力の文書データに含まれる複数の文字列を含む文字列集合を出力とする生成モデルに対して前記第1の文書データを入力することによって前記第1の文書データに対応する文字列集合を生成し、
生成した文字列集合と、前記第1の文書データから目的に沿って作成された第2の文書データとを用いて、前記文字列集合の評価値を、前記生成モデルを強化学習させる際の報酬として導出する
情報処理装置。
【請求項11】
前記プロセッサは、
前記文字列集合と、前記第2の文書データとを用いて、前記文字列集合を構成する各文字列の評価値を導出し、
前記文字列集合の評価値として、前記文字列集合を構成する各文字列の評価値の合計値を導出し、
前記文字列集合に含まれるが前記第2の文書データに含まれない文字列の分量、及び前記第2の文書データに含まれるが前記文字列集合に含まれない文字列の分量の少なくとも一方に応じて、導出した前記文字列集合の評価値を減少させる
請求項10に記載の情報処理装置。
【請求項12】
第1の文書データを取得し、
文書データを入力とし、入力の文書データに含まれる複数の文字列を含む文字列集合を出力とする生成モデルに対して前記第1の文書データを入力することによって前記第1の文書データに対応する文字列集合を生成し、
生成した文字列集合と、前記第1の文書データから目的に沿って作成された第2の文書データとを用いて、前記文字列集合の評価値を、前記生成モデルを強化学習させる際の報酬として導出する
処理を情報処理装置が備えるプロセッサが実行する情報処理方法。
【請求項13】
第1の文書データを取得し、
文書データを入力とし、入力の文書データに含まれる複数の文字列を含む文字列集合を出力とする生成モデルに対して前記第1の文書データを入力することによって前記第1の文書データに対応する文字列集合を生成し、
生成した文字列集合と、前記第1の文書データから目的に沿って作成された第2の文書データとを用いて、前記文字列集合の評価値を、前記生成モデルを強化学習させる際の報酬として導出する
処理を情報処理装置が備えるプロセッサに実行させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【0002】
特許文献1には、文書から要約を生成する要約装置において、文書を解析して文書データを生成し、生成した文書データから、重要スコアが高い複数の文を重要文として抽出する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2019-121139号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
例えば、文書データの文字列に対してユーザがコピー操作を行う際に、ユーザはコピーしたい文字列の範囲を選択することを行う。この際、ユーザが文書データの特定の位置にマウスカーソルを合わせた場合等、ユーザが文書データの特定の箇所を指定した場合、ユーザが所望する文字列の範囲を自動的に選択することができると、ユーザの操作を支援するうえで好ましい。すなわち、文書データをユーザが所望する適切な区切り位置で区切ることが好ましい。
【0005】
しかしながら、特許文献1に記載の技術では、形態素解析及び構文解析等の予め設定されたルールに従って文書データを区切っているため、文書データを適切な区切り位置で区切ることができない場合があった。
【0006】
本開示は、以上の事情を鑑みてなされたものであり、文書データを適切な区切り位置で区切ることができる情報処理装置、情報処理方法、及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本開示の情報処理装置は、少なくとも一つのプロセッサを備える情報処理装置であって、プロセッサは、第1の文書データを取得し、第1の文書データを異なる長さで区切ることによって第1の文字列集合を生成し、第1の文字列集合と、第1の文書データから目的に沿って作成された第2の文書データとを用いて、第1の文字列集合を構成する各文字列の評価値を導出し、導出した評価値に基づいて、第1の文字列集合の中から複数の文字列を、文書データを入力とし、入力の文書データに含まれる複数の文字列を含む第2の文字列集合を出力とする生成モデルの正解データとして選択する。
【0008】
また、本開示の情報処理方法は、第1の文書データを取得し、第1の文書データを異なる長さで区切ることによって第1の文字列集合を生成し、第1の文字列集合と、第1の文書データから目的に沿って作成された第2の文書データとを用いて、第1の文字列集合を構成する各文字列の評価値を導出し、導出した評価値に基づいて、第1の文字列集合の中から複数の文字列を、文書データを入力とし、入力の文書データに含まれる複数の文字列を含む第2の文字列集合を出力とする生成モデルの正解データとして選択する処理を情報処理装置が備えるプロセッサが実行するものである。
【0009】
また、本開示の情報処理プログラムは、第1の文書データを取得し、第1の文書データを異なる長さで区切ることによって第1の文字列集合を生成し、第1の文字列集合と、第1の文書データから目的に沿って作成された第2の文書データとを用いて、第1の文字列集合を構成する各文字列の評価値を導出し、導出した評価値に基づいて、第1の文字列集合の中から複数の文字列を、文書データを入力とし、入力の文書データに含まれる複数の文字列を含む第2の文字列集合を出力とする生成モデルの正解データとして選択する処理を情報処理装置が備えるプロセッサに実行させるためのものである。
【0010】
また、本開示の情報処理装置は、少なくとも一つのプロセッサを備える情報処理装置であって、プロセッサは、第1の文書データを取得し、文書データを入力とし、入力の文書データに含まれる複数の文字列を含む文字列集合を出力とする生成モデルに対して第1の文書データを入力することによって第1の文書データに対応する文字列集合を生成し、生成した文字列集合と、第1の文書データから目的に沿って作成された第2の文書データとを用いて、文字列集合の評価値を、生成モデルを強化学習させる際の報酬として導出する。
【0011】
また、本開示の情報処理方法は、第1の文書データを取得し、文書データを入力とし、入力の文書データに含まれる複数の文字列を含む文字列集合を出力とする生成モデルに対して第1の文書データを入力することによって第1の文書データに対応する文字列集合を生成し、生成した文字列集合と、第1の文書データから目的に沿って作成された第2の文書データとを用いて、文字列集合の評価値を、生成モデルを強化学習させる際の報酬として導出する処理を情報処理装置が備えるプロセッサが実行するものである。
【0012】
また、本開示の情報処理プログラムは、第1の文書データを取得し、文書データを入力とし、入力の文書データに含まれる複数の文字列を含む文字列集合を出力とする生成モデルに対して第1の文書データを入力することによって第1の文書データに対応する文字列集合を生成し、生成した文字列集合と、第1の文書データから目的に沿って作成された第2の文書データとを用いて、文字列集合の評価値を、生成モデルを強化学習させる際の報酬として導出する処理を情報処理装置が備えるプロセッサに実行させるためのものである。
【発明の効果】
【0013】
本開示によれば、文書データを適切な区切り位置で区切ることができる。
【図面の簡単な説明】
【0014】
図1】情報処理装置のハードウェア構成の一例を示すブロック図である。
図2】生成モデルを説明するための図である。
図3】変形例に係る生成モデルを説明するための図である。
図4】第1の文書データ及び第2の文書データの一例を示す図である。
図5】第1実施形態に係る学習フェーズにおける情報処理装置の機能的な構成の一例を示すブロック図である。
図6】第1実施形態に係る第1の文字列集合の生成処理を説明するための図である。
図7】評価値の導出処理を説明するための図である。
図8】第1実施形態に係る学習処理の一例を示すフローチャートである。
図9】運用フェーズにおける情報処理装置の機能的な構成の一例を示すブロック図である。
図10】表示画面の一例を示す図である。
図11】変形例に係る表示画面の一例を示す図である。
図12】変形例に係る表示画面の一例を示す図である。
図13】変形例に係る表示画面の一例を示す図である。
図14】変形例に係る表示画面の一例を示す図である。
図15】変形例に係る表示画面の一例を示す図である。
図16】操作支援処理の一例を示すフローチャートである。
図17】第2実施形態に係る学習フェーズにおける情報処理装置の機能的な構成の一例を示すブロック図である。
図18】第2実施形態に係る第1の文字列集合の生成処理を説明するための図である。
図19】文字列の選択処理を説明するための図である。
図20】第2実施形態に係る学習処理の一例を示すフローチャートである。
図21】第3実施形態に係る学習フェーズにおける情報処理装置の機能的な構成の一例を示すブロック図である。
図22】第3実施形態に係る学習処理の一例を示すフローチャートである。
図23】変形例に係る文字列集合の提示処理を説明するための図である。
図24】変換モデルを説明するための図である。
【発明を実施するための形態】
【0015】
以下、図面を参照して、本開示の技術を実施するための形態例を詳細に説明する。
【0016】
[第1実施形態]
まず、図1を参照して、本実施形態に係る情報処理装置10のハードウェア構成を説明する。情報処理装置10の例としては、パーソナルコンピュータ又はサーバコンピュータ等のコンピュータが挙げられる。図1に示すように、情報処理装置10は、CPU(Central Processing Unit)20、メモリ21、記憶部22、ディスプレイ23、入力装置24、及びネットワークI/F(InterFace)25を含む。
【0017】
CPU20は、後述する記憶部22に記憶されるプログラムを実行することにより、後述する機能的な構成を実現する。CPU20は、開示の技術に係るプロセッサの一例である。
【0018】
メモリ21は、記憶部22及びRAM(Random Access Memory)26を含む。RAM26は、一次記憶用のメモリであり、例えば、SRAM(Static Random Access Memory)又はDRAM(Dynamic Random Access Memory)等のRAMである。
【0019】
記憶部22は、不揮発性のメモリであり、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、及びフラッシュメモリ等の少なくとも1つによって実現される。記憶媒体としての記憶部22には、情報処理プログラム30が記憶される。CPU20は、記憶部22から情報処理プログラム30を読み出してからメモリ21に展開し、展開した情報処理プログラム30を実行する。
【0020】
また、記憶部22には、生成モデル32、文書データ34、及び文書データ36が記憶される。文書データ34は、開示の技術に係る第1の文書データの一例であり、文書データ36は、開示の技術に係る第2の文書データの一例である。
【0021】
ディスプレイ23は、各種画面を表示する装置であり、例えば、液晶ディスプレイ又はEL(Electro Luminescence)ディスプレイである。入力装置24は、ユーザが入力を行うための装置であり、例えば、キーボード、マウス、音声入力用のマイク、接触を含む近接入力用のタッチパッド、ジェスチャー入力用のカメラの少なくともいずれかである。ネットワークI/F25は、ネットワークに接続するためのインタフェースである。バス27は、CPU20、メモリ21、記憶部22、ディスプレイ23、入力装置24、及びネットワークI/F25を接続する。
【0022】
図2に示すように、生成モデル32は、文書データを入力とし、入力の文書データに含まれる複数の文字列を含む文字列集合を出力とする。本実施形態では、生成モデル32は、入力の文書データから異なる複数の文字列を抽出することによって文字列集合を出力する場合について説明するが、開示の技術はこの態様に限定されない。例えば、図3に示すように、生成モデル32は、入力の文書データに対して区切り位置を表す記号(図3の例では<SEP>)を挿入することによって、区切り位置で区切られた異なる複数の文字列を含む文字列集合を出力してもよい。生成モデル32は、後述する学習フェーズにおいて、所望の区切り位置で区切られた文字列集合が出力されるように学習される。
【0023】
文書データ34は、ソースの文書データである。図4に示すように、文書データ36は、文書データ34から目的に沿って作成された文書データである。本実施形態では、文書データ36は、文書データ34が要約された文書データである。例えば、文書データ36は、ユーザによって作成される。
【0024】
次に、図5を参照して、学習フェーズにおける情報処理装置10の機能的な構成について説明する。図5に示すように、情報処理装置10は、取得部40、第1生成部42、導出部44、選択部46、第2生成部48、及び学習部50を含む。CPU20が情報処理プログラム30を実行することにより、取得部40、第1生成部42、導出部44、選択部46、第2生成部48、及び学習部50として機能する。
【0025】
取得部40は、文書データ34を記憶部22から取得する。第1生成部42は、文書データ34を異なる長さで区切ることによって文字列集合(以下、「第1の文字列集合」という)を生成する。図6に示すように、本実施形態に係る第1生成部42は、文書データ34をそれぞれ異なる長さで区切ることによって複数の第1の文字列集合を生成する。具体的には、第1生成部42は、例えば、1単語ずつ、3単語ずつのように、それぞれ異なる長さの単位で文書データ34を区切ることによって複数の第1の文字列集合を生成する。すなわち、1つの第1の文字列集合に含まれる文字列同士は重複する部分が含まれない。また、第1の文字列集合Aに含まれる文字列と第1の文字列集合Bに含まれる文字列との間では、重複する部分が含まれるが文字列の長さが異なる。
【0026】
導出部44は、第1生成部42により生成された第1の文字列集合と、文書データ36とを用いて、第1の文字列集合を構成する各文字列の評価値を導出する。具体的には、図7に示すように、導出部44は、文書データ36を文単位で分割し、文書データ36に含まれる各文の第1の文字列集合を構成する文字列に対する一致度の最大値をその文字列の評価値として導出する。すなわち、この評価値は、第1の文字列集合を構成する各文字列と、文書データ36との一致度が高いほど評価が高くなる値である。この一致度の例としては、編集距離、BLEU(BiLingual Evaluation Understudy)、ROUGE(Recall-Oriented Understudy for Gisting Evaluation)、又はBERT(Bidirectional Encoder Representations from Transformers)スコア等が挙げられる。そして、導出部44は、第1の文字列集合の評価値として、第1の文字列集合を構成する各文字列の評価値の合計値を導出する。
【0027】
選択部46は、導出部44により導出された評価値に基づいて、第1生成部42により生成された複数の第1の文字列集合のうちの何れかを生成モデル32の正解データとして選択する。本実施形態では、選択部46は、第1生成部42により生成された複数の第1の文字列集合の中から、導出部44により導出された評価値が最も大きい文字列集合を生成モデル32の正解データとして選択する。
【0028】
なお、第1の文字列集合の評価値は、第1の文字列集合を構成する各文字列が長いほど評価が高くなる値であってもよい。例えば、導出部44は、前述したように導出した第1の文字列集合の評価値を、第1の文字列集合に含まれる文字列の個数で除算することによって第1の文字列集合の新たな評価値を導出してもよい。第1の文字列集合に含まれる文字列の個数は、第1の文字列集合を構成する各文字列が長いほど小さい値となる。このように、導出部44は、文字列の個数で除算することによって、第1の文字列集合を構成する各文字列が長いほど評価値を大きい値としてもよい。また、導出部44は、文字列を構成する文字数が多いほど評価値を大きい値としてもよい。また、導出部44は、基準文字数を設け、文字列を構成する文字数と基準文字数との差分に応じて減点することによって評価値を導出してもよい。また、生成モデル32を異なる基準文字数ごとに用意していてもよい。この場合、導出部44は、ユーザの過去の選択履歴における文字数に最も近い基準文字数に対応する生成モデル32を選択する。この場合の選択履歴における文字数は、平均値又は中央値等の統計値であってもよい。
【0029】
また、第1の文字列集合を構成する各文字列の評価値として、文書データ36の各文に対する精度及び再現率の少なくとも一方を用いてもよい。ここでいう精度とは、第1の文字列集合を構成する文字列の内容が文書データ36の文にどの程度網羅されているかを表す指標値である。また、ここでいう再現率とは、文書データ36の文の内容が第1の文字列集合を構成する文字列にどの程度網羅されているかを表す指標値である。
【0030】
第2生成部48は、取得部40により取得された文書データ34を生成モデル32に対して入力することによって文書データ34に対応する文字列集合(以下、「第2の文字列集合」という)を生成する。
【0031】
学習部50は、第2生成部48により生成された第2の文字列集合と、選択部46により選択された第1の文字列集合との誤差が最小化されるように生成モデル32を学習させる。
【0032】
次に、図8を参照して、学習フェーズにおける情報処理装置10の作用を説明する。CPU20が情報処理プログラム30を実行することによって、図8に示す学習処理が実行される。図8に示す学習処理は、例えば、ユーザにより実行開始の指示が入力された場合に実行される。
【0033】
図8のステップS10で、取得部40は、文書データ34を記憶部22から取得する。ステップS12で、第1生成部42は、前述したように、ステップS10で取得された文書データ34を異なる長さで区切ることによって第1の文字列集合を生成する。
【0034】
ステップS14で、導出部44は、前述したように、ステップS12で生成された第1の文字列集合と、文書データ36とを用いて、第1の文字列集合を構成する各文字列の評価値を導出する。また、導出部44は、導出した評価値の合計値を第1の文字列集合の評価値として導出する。
【0035】
ステップS16で、選択部46は、前述したように、ステップS14で導出された評価値に基づいて、ステップS12で生成された複数の第1の文字列集合のうちの何れかを生成モデル32の正解データとして選択する。
【0036】
ステップS18で、第2生成部48は、ステップS10で取得された文書データ34を生成モデル32に対して入力することによって文書データ34に対応する第2の文字列集合を生成する。ステップS20で、学習部50は、ステップS18で生成された第2の文字列集合と、ステップS16で選択された第1の文字列集合との誤差が最小化されるように生成モデル32を学習させる。ステップS20の処理が終了すると、学習処理が終了する。この学習処理が異なる複数の文書データ34及び文書データ36の組み合わせのそれぞれについて実行されることにより、生成モデル32の精度が向上する。
【0037】
次に、図9を参照して、運用フェーズにおける情報処理装置10の機能的な構成について説明する。図9に示すように、情報処理装置10は、第3生成部60、受付部62、特定部64、及び提示部66を含む。CPU20が情報処理プログラム30を実行することにより、第3生成部60、受付部62、特定部64、及び提示部66として機能する。
【0038】
第3生成部60は、処理対象の文書データを生成モデル32に対して入力することによって、文字列集合を生成する。処理対象の文書データとは、例えば、ユーザが参照中の文書データである。
【0039】
受付部62は、ユーザにより指定された文書データ内の位置を受け付ける。ユーザは、例えば、文書データの所定の位置にマウスカーソルを合わせる操作、及び文書データの所定の位置をクリックする操作等を行うことによって、文書データ内の所定の位置を指定する。
【0040】
特定部64は、第3生成部60により生成された文字列集合に含まれる文字列の中から、受付部62により受け付けられた位置に記載されている文字列を特定する。
【0041】
提示部66は、特定部64により特定された文字列をユーザに提示する。一例として図10に示すように、提示部66は、ディスプレイ23に表示された文書データにおいて、特定部64により特定された文字列を範囲選択した状態にすることによって、その文字列をユーザに提示する。これにより、ユーザによるコピー操作の際の文字列を選択する操作の手間を低減することができる。また、この際の文字列は、前述した学習フェーズにより学習された生成モデル32により生成されるため、適切な区切り位置で区切られたものである。従って、ユーザの操作を効果的に支援することができる。
【0042】
なお、提示部66は、文書データ上の特定された文字列を、それ以外の文字列に対して相対的に強調される表示を行うことでユーザに提示することを例示したが、開示の技術はこの態様に限定されない。例えば、提示部66は、特定された文字列をポップアップ表示等のように文書データとは異なる表示枠で表示しても良い。また、提示部66は、文書データの表示画面と、サマリ文書等の新規文書作成画面とが表示される画面において、文書データの表示画面を指定すると、新規文書作成画面上に特定された文字列が記載されるようにしても良い。例えば、図11に示すように、文書データを表示する文書データ表示画面と、サマリ文書等の新規文書を作成するための新規文書作成画面を有する表示画面が提示され、文書データ表示画面上でポインタ等による位置の指定を受け付けると、図12に示すように、提示部66は、新規文書作成画面上に上記位置に記載された特定された文字列を編集可能な文字列として提示する。図13に示すように、提示部66は、ユーザにより入力装置24を介した確定選択を受け付けることで、選択された文字列を新規文書の一部として保存しても良い。なお、図12及び図13の例示では、新規文書作成画面における編集可能な文字列が破線で囲まれた表示態様とし、確定された文字列が破線で囲まれない表示態様としたが、編集可能な文字列と確定された文字列が区別出来れば、表示態様はこの例に限定されない。
【0043】
さらに、生成モデル32は、複数の異なる区切り位置候補と、その複数の区切り位置候補それぞれの確信度を出力するようにしても良い。例えば、生成モデル32は、「7/7(水) 工場Aグループ2」の確信度90%、「7/7(水)」の確信度70%、「7/7(水) 工場A」の確信度50%を出力しても良い。また、第3生成部60は、学習用データ生成時における分割する際のシード又は文字列の長さに対する重みづけ等の条件を変えた生成モデル32を複数有し、生成モデル32毎に複数の異なる区切り位置候補を出力しても良い。この場合、特定部64は、ユーザにより指定された位置に応じて、複数の異なる文字列を特定する。提示部66は、特定部64により特定された複数の異なる文字列をユーザに提示しても良い。例えば、図14及び図15に示すように、提示部66は、特定された複数の異なる長さの文字列をユーザに提示する。この際に、提示部66は、最も優先度の高い生成モデル32が導出した区切り位置候補、又は、最も確信度の高い区切り位置候補に対応する特定された文字列を選択した状態で提示し、マウスのクリック操作等のユーザによる切り替え操作を受け付ける事で、選択中の区切り位置候補とは異なる区切り位置候補に対応する特定された文字列を選択することができるようにしてもよい。なお、文字列を選択することとは、文字列をコピーして、サマリ文書へのペースト操作によりサマリ文書へ反映出来る状態にすること、及びサマリ文書へ編集可能な状態で反映することを含む。図14及び図15の例示では、特定された複数の異なる文字列をポップアップウィンドウによって提示する表示態様を示しているが、表示態様はこの例に限定されない。また、図14及び図15の例示では、選択中の文字列が破線で囲まれた表示態様としたが、選択中の文字列と非選択中の文字列が区別することが出来れば、表示態様はこの例に限定されない。
【0044】
次に、図16を参照して、運用フェーズにおける情報処理装置10の作用を説明する。CPU20が情報処理プログラム30を実行することによって、図16に示す操作支援処理が実行される。図16に示す操作支援処理は、例えば、文書データをダブルクリックする操作等の文書データのファイルが開かれる操作がユーザにより行われた場合に、その文書データを処理対象として実行される。
【0045】
図16のステップS30で、第3生成部60は、処理対象の文書データを生成モデル32に対して入力することによって、文字列集合を生成する。ステップS32で、受付部62は、ユーザにより指定された文書データ内の位置を受け付ける。
【0046】
ステップS34で、特定部64は、ステップS30で生成された文字列集合に含まれる文字列の中から、ステップS32で受け付けられた位置に記載されている文字列を特定する。ステップS36で、提示部66は、前述したように、ステップS34で特定された文字列をユーザに提示する。ステップS36の処理が終了すると、操作支援処理が終了する。
【0047】
以上説明したように、本実施形態によれば、文書データを適切な区切り位置で区切ることができる。この結果、ユーザの操作を効果的に支援することができる。
【0048】
[第2実施形態]
開示の技術の第2実施形態を説明する。なお、本実施形態に係る情報処理装置10のハードウェア構成は、第1実施形態と同一であるため、説明を省略する。
【0049】
図17を参照して、学習フェーズにおける情報処理装置10の機能的な構成について説明する。第1実施形態に係る情報処理装置10と同一の機能を有する機能部については、同一の符号を付して説明を省略する。図17に示すように、情報処理装置10は、取得部40、第1生成部42A、導出部44A、選択部46A、第2生成部48、及び学習部50を含む。CPU20が情報処理プログラム30を実行することにより、取得部40、第1生成部42A、導出部44A、選択部46A、第2生成部48、及び学習部50として機能する。
【0050】
第1生成部42Aは、文書データ34を異なる長さで区切ることによって第1の文字列集合を生成する。図18に示すように、本実施形態に係る第1生成部42Aは、文書データ34を区切る処理を、区切る長さを異ならせながら繰り返し行うことによって1つの第1の文字列集合を生成する。具体的には、第1生成部42Aは、例えば、1単語ずつ文書データ34を区切る処理及び3単語ずつ文書データ34を区切る処理のように、ある長さの単位で文書データ34を区切る処理を、長さを異ならせながら繰り返し行うことによって1つの第1の文字列集合を生成する。すなわち、1つの第1の文字列集合に含まれる文字列には、重複する部分を含むが長さが異なる文字列が含まれる。
【0051】
導出部44Aは、第1生成部42Aにより生成された第1の文字列集合と、文書データ36とを用いて、第1の文字列集合を構成する各文字列の評価値を導出する。この評価値の導出処理は、第1実施形態と同じであるため、説明を省略する。
【0052】
選択部46Aは、導出部44Aにより導出された評価値に基づいて、第1生成部42Aにより生成された第1の文字列集合の中から、複数の文字列を重複する箇所がない状態で生成モデル32の正解データとして選択する。
【0053】
具体的には、図19に示すように、まず、選択部46Aは、第1生成部42Aにより生成された第1の文字列集合の中から、重複する箇所がない複数の文字列の組み合わせを列挙する。図19では、第1の文字列集合に含まれる文字列は、短・中・長の3段階で区切られた例を示している。図19における文字列A1、A2は、3段階のうちの最も短い長さで区切られた文字列を示し、文字列B1は、3段階のうちの中間の長さで区切られた文字列を示し、文字列C1、C2は、3段階のうちの最も長い長さで区切られた文字列を示している。また、図19における各文字列の下の矢印は、その文字列の文書データ36における記載位置を示し、矢印の長さはその文字列の長さを示している。また、図19における各文字列の下の矢印の下の数値は、その文字列について導出部44Aにより導出された評価値を示している。
【0054】
次に、選択部46Aは、列挙した複数の文字列の組み合わせのそれぞれについて、各文字列の評価値の合計値を導出する。そして、選択部46Aは、導出した合計値が最も大きい組み合わせの複数の文字列を生成モデル32の正解データとして選択する。
【0055】
次に、図20を参照して、学習フェーズにおける情報処理装置10の作用を説明する。CPU20が情報処理プログラム30を実行することによって、図20に示す学習処理が実行される。図20に示す学習処理は、例えば、ユーザにより実行開始の指示が入力された場合に実行される。図20における図8と同一の処理を実行するステップについては、同一のステップ番号を付して説明を省略する。
【0056】
図8におけるステップS12、S14、S16に代えて、図20におけるステップS12A、S14A、S16Aが実行される。ステップS12Aで、第1生成部42Aは、前述したように、文書データ34を異なる長さで区切ることによって第1の文字列集合を生成する。
【0057】
ステップS14Aで、導出部44Aは、ステップS12Aで生成された第1の文字列集合と、文書データ36とを用いて、第1の文字列集合を構成する各文字列の評価値を導出する。ステップS16Aで、選択部46Aは、前述したように、ステップS14Aで導出された評価値に基づいて、第1生成部42Aにより生成された第1の文字列集合の中から、複数の文字列を重複する箇所がない状態で生成モデル32の正解データとして選択する。
【0058】
運用フェーズにおける情報処理装置10の機能的な構成及び作用は第1実施形態と同じであるため、説明を省略する。
【0059】
以上説明したように、本実施形態によれば、第1実施形態と同じ効果を得ることができる。
【0060】
[第3実施形態]
開示の技術の第3実施形態を説明する。なお、本実施形態に係る情報処理装置10のハードウェア構成は、第1実施形態と同一であるため、説明を省略する。本実施形態では、情報処理装置10は、生成モデル32を強化学習させる。
【0061】
図21を参照して、学習フェーズにおける情報処理装置10の機能的な構成について説明する。第1実施形態に係る情報処理装置10と同一の機能を有する機能部については、同一の符号を付して説明を省略する。図21に示すように、情報処理装置10は、取得部40、導出部44B、第2生成部48A、及び学習部50Aを含む。CPU20が情報処理プログラム30を実行することにより、取得部40、導出部44B、第2生成部48A、及び学習部50Aとして機能する。
【0062】
第2生成部48Aは、取得部40により取得された文書データ34を生成モデル32に対して入力することによって文書データ34に対応する文字列集合を生成する。
【0063】
導出部44Bは、第2生成部48Aにより生成された文字列集合と、文書データ36とを用いて、文字列集合を構成する各文字列の評価値を導出する。この評価値の導出処理は、第1実施形態と同じであるため、説明を省略する。そして、導出部44Bは、文字列集合の評価値として、文字列集合を構成する各文字列の評価値の合計値を導出する。導出部44Bは、この文字列集合の評価値を、生成モデル32を強化学習させる際の報酬として導出する。
【0064】
学習部50Aは、導出部44Bにより導出された評価値を報酬として、生成モデル32を強化学習させる。
【0065】
次に、図22を参照して、学習フェーズにおける情報処理装置10の作用を説明する。CPU20が情報処理プログラム30を実行することによって、図22に示す学習処理が実行される。図22に示す学習処理は、例えば、ユーザにより実行開始の指示が入力された場合に実行される。
【0066】
図22のステップS40で、取得部40は、文書データ34を記憶部22から取得する。ステップS42で、第2生成部48Aは、ステップS40で取得された文書データ34を生成モデル32に対して入力することによって文書データ34に対応する文字列集合を生成する。
【0067】
ステップS44で、導出部44Bは、第2生成部48Aにより生成された文字列集合と、文書データ36とを用いて、文字列集合を構成する各文字列の評価値を導出する。また、導出部44Bは、導出した評価値の合計値を文字列集合の評価値として導出する。ステップS46で、学習部50Aは、ステップS44で導出された評価値を報酬として、生成モデル32を強化学習させる。ステップS46の処理が終了すると、学習処理が終了する。
【0068】
運用フェーズにおける情報処理装置10の機能的な構成及び作用は第1実施形態と同じであるため、説明を省略する。
【0069】
以上説明したように、本実施形態によれば、第1実施形態と同じ効果を得ることができる。
【0070】
なお、上記第1実施形態において、導出部44は、第1の文字列集合に含まれるが文書データ36に含まれない文字列(以下、「過抽出文字列」という)の分量、及び文書データ36に含まれるが第1の文字列集合に含まれない文字列(以下、「不足文字列」という)の分量の少なくとも一方に応じて、導出した第1の文字列集合の評価値を減少させてもよい。この場合、例えば、導出部44は、これらの文字列の分量が多いほど、第1の文字列集合の評価値を大きく減少させる。文字列の分量の例としては、文字列の個数又は文字列の合計文字数等が挙げられる。図7の例では、「7/8(木) 工場Bグループ2/3」が不足文字列に相当し、「7/12(月) 通常運転」が過抽出文字列に相当する。
【0071】
同様に、上記第3実施形態において、導出部44Bは、文字列集合に含まれるが文書データ36に含まれない過抽出文字列の分量、及び文書データ36に含まれるが文字列集合に含まれない不足文字列の分量の少なくとも一方に応じて、導出した文字列集合の評価値を減少させてもよい。
【0072】
このように、文書データ34からの過抽出を完全に排除するのではなく、一部を排除するように生成モデル32が学習されることによって、文書データを適切な区切り位置で区切ることができる。
【0073】
また、CPU20は、生成モデル32を用いて、電子カルテ等の医療文書に相当する文書データ34からサマリの文書データ用の候補文を提示する場合、過抽出文字列の分量が多すぎるとユーザによる候補文の選択を妨げることになるため、過抽出文字列を除くようにしてもよい。
【0074】
また、運用フェーズの変形例として、図23に示すように、提示部66は、処理対象の文書データを生成モデル32に対して入力することによって生成された文字列集合を、処理対象の文書データが要約されたサマリ文書データの候補文としてユーザに提示してもよい。この場合、ユーザは、提示された候補文を選択することによってサマリ文書データを作成することができる。
【0075】
この形態例において、生成モデル32を複数用意してもよい。例えば、過抽出文字列の分量に応じた文字列集合の評価値の減少幅を異ならせて学習された生成モデル32を複数用意してもよい。具体的には、例えば、1つ目の生成モデル32は、過抽出文字列の個数が1個多くなるごとに、5%減少させた評価値に基づいて選択された文字列集合を用いて学習されたモデルである。また、例えば、2つ目の生成モデル32は、過抽出文字列の個数が1個多くなるごとに、10%減少させた評価値に基づいて選択された文字列集合を用いて学習されたモデルである。すなわち、生成モデル32毎に、過抽出への許容度が異なる。
【0076】
この場合、CPU20は、生成モデル32を用いて提示されたサマリの文書データ用の候補文に対するユーザの選択履歴に応じて、生成モデル32を切り替えてもよい。例えば、CPU20は、サマリの文書データ用の候補文において、ユーザによる候補文の非選択の度合いが高くなるほど、過抽出への許容度が低い生成モデル32が使用されるように生成モデル32を切り替えてもよい。非選択の度合いの例としては、「非選択の文字列の個数/候補文の個数」又は「選択された文字列の個数/候補文の個数」等が挙げられる。
【0077】
また、この場合、CPU20は、ユーザによる候補文の非選択の度合いが一定の度合い以上となった場合、ユーザにより選択された候補文を正解データとして、生成モデル32を再学習させてもよい。
【0078】
上記第2実施形態において、導出部44Aは、文字列の評価値の導出処理において、ROUGE-F値等のF値を評価値として導出し、Precisionを罰則としてもよいし、F値の計算におけるPrecisionを0以上1未満の倍率とすることによって罰則を低下させてもよい。
【0079】
また、上記各実施形態において、導出部44、44A、44Bは、ユーザの過去の操作傾向に応じて、文字列集合に含まれる文字列の評価値を変えてもよい。例えば、導出部44、44A、44Bは、ユーザの過去の操作履歴に基づいて、ユーザが文字列を選択する際の長さが長いほど、長い文字列の評価が高くなるように評価値を導出してもよい。この場合のユーザが文字列を選択する際の長さとして、平均値又は中央値等の統計値を用いてもよい。また、ユーザが文字列を選択する際の長さの統計値を基準文字数として、基準文字数との差分に応じて減点することによって評価値を導出しても良い。また、予め基準文字数の異なる複数のモデルを用意し、ユーザが文字列を選択する際の長さの統計値に基づいてモデルを切り替えるとしても良い。
【0080】
また、上記各実施形態において、導出部44、44A、44Bは、文字列同士の一致度が一定値以下の場合、その一致度をゼロにしてもよい。
【0081】
また、上記第3実施形態において、図24に示すように、生成モデル32の出力を変換モデル38に対する入力としてもよい。変換モデル38は、文字列集合を入力とし、入力の文字列集合を文書データ36と同じ記載形式の文字列の集合に変換した文字列集合を出力とするモデルである。変換モデル38は、教師データを用いた機械学習によって得られる。この場合、導出部44Bは、変換モデル38から出力された文字列集合と、文書データ36とを用いて、文字列集合を構成する各文字列の評価値を導出する。
【0082】
また、上記各実施形態において、例えば、情報処理装置10の各機能部のような各種の処理を実行する処理部(processing unit)のハードウェア的な構造としては、次に示す各種のプロセッサ(processor)を用いることができる。上記各種のプロセッサには、前述したように、ソフトウェア(プログラム)を実行して各種の処理部として機能する汎用的なプロセッサであるCPUに加えて、FPGA(Field Programmable Gate Array)等の製造後に回路構成を変更可能なプロセッサであるプログラマブルロジックデバイス(Programmable Logic Device:PLD)、ASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が含まれる。
【0083】
1つの処理部は、これらの各種のプロセッサのうちの1つで構成されてもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGAの組み合わせや、CPUとFPGAとの組み合わせ)で構成されてもよい。また、複数の処理部を1つのプロセッサで構成してもよい。
【0084】
複数の処理部を1つのプロセッサで構成する例としては、第1に、クライアント及びサーバ等のコンピュータに代表されるように、1つ以上のCPUとソフトウェアの組み合わせで1つのプロセッサを構成し、このプロセッサが複数の処理部として機能する形態がある。第2に、システムオンチップ(System on Chip:SoC)等に代表されるように、複数の処理部を含むシステム全体の機能を1つのIC(Integrated Circuit)チップで実現するプロセッサを使用する形態がある。このように、各種の処理部は、ハードウェア的な構造として、上記各種のプロセッサの1つ以上を用いて構成される。
【0085】
更に、これらの各種のプロセッサのハードウェア的な構造としては、より具体的には、半導体素子などの回路素子を組み合わせた電気回路(circuitry)を用いることができる。
【0086】
また、上記各実施形態では、情報処理プログラム30が記憶部22に予め記憶(インストール)されている態様を説明したが、これに限定されない。情報処理プログラム30は、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の記録媒体に記録された形態で提供されてもよい。また、情報処理プログラム30は、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
【0087】
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
少なくとも一つのプロセッサを備える情報処理装置であって、
前記プロセッサは、
第1の文書データを取得し、
前記第1の文書データを異なる長さで区切ることによって第1の文字列集合を生成し、
前記第1の文字列集合と、前記第1の文書データから目的に沿って作成された第2の文書データとを用いて、前記第1の文字列集合を構成する各文字列の評価値を導出し、
導出した評価値に基づいて、前記第1の文字列集合の中から複数の文字列を、文書データを入力とし、入力の文書データに含まれる複数の文字列を含む第2の文字列集合を出力とする生成モデルの正解データとして選択する
情報処理装置。
【0088】
(付記2)
前記プロセッサは、
前記第1の文書データをそれぞれ異なる長さで区切ることによって複数の前記第1の文字列集合を生成し、
前記評価値に基づいて、前記複数の前記第1の文字列集合のうちの何れかを前記生成モデルの正解データとして選択する
付記1に記載の情報処理装置。
【0089】
(付記3)
前記プロセッサは、
前記第1の文字列集合の評価値として、前記第1の文字列集合を構成する各文字列の評価値の合計値を導出し、
前記第1の文字列集合に含まれるが前記第2の文書データに含まれない文字列の分量、及び前記第2の文書データに含まれるが前記第1の文字列集合に含まれない文字列の分量の少なくとも一方に応じて、導出した前記第1の文字列集合の評価値を減少させる
付記2に記載の情報処理装置。
【0090】
(付記4)
前記プロセッサは、
前記第1の文書データを区切る処理を、区切る長さを異ならせながら繰り返し行うことによって1つの前記第1の文字列集合を生成し、
導出した評価値に基づいて、前記第1の文字列集合の中から複数の文字列を重複する箇所がない状態で前記生成モデルの正解データとして選択する
付記1に記載の情報処理装置。
【0091】
(付記5)
前記評価値は、第1の文字列集合を構成する各文字列と、第2の文書データとの一致度が高いほど評価が高くなる値である
付記1から付記4の何れか1つに記載の情報処理装置。
【0092】
(付記6)
前記評価値は、第1の文字列集合を構成する各文字列が長いほど評価が高くなる値である
付記1から付記5の何れか1つに記載の情報処理装置。
【0093】
(付記7)
前記プロセッサは、
前記生成モデルに対して前記第1の文書データを入力することによって前記第1の文書データに対応する第2の文字列集合を生成し、
前記第2の文字列集合と、前記第1の文字列集合の中から選択した複数の文字列との誤差が最小化されるように前記生成モデルを学習させる
付記1から付記6の何れか1つに記載の情報処理装置。
【0094】
(付記8)
第1の文書データを取得し、
前記第1の文書データを異なる長さで区切ることによって第1の文字列集合を生成し、
前記第1の文字列集合と、前記第1の文書データから目的に沿って作成された第2の文書データとを用いて、前記第1の文字列集合を構成する各文字列の評価値を導出し、
導出した評価値に基づいて、前記第1の文字列集合の中から複数の文字列を、文書データを入力とし、入力の文書データに含まれる複数の文字列を含む第2の文字列集合を出力とする生成モデルの正解データとして選択する
処理を情報処理装置が備えるプロセッサが実行する情報処理方法。
【0095】
(付記9)
第1の文書データを取得し、
前記第1の文書データを異なる長さで区切ることによって第1の文字列集合を生成し、
前記第1の文字列集合と、前記第1の文書データから目的に沿って作成された第2の文書データとを用いて、前記第1の文字列集合を構成する各文字列の評価値を導出し、
導出した評価値に基づいて、前記第1の文字列集合の中から複数の文字列を、文書データを入力とし、入力の文書データに含まれる複数の文字列を含む第2の文字列集合を出力とする生成モデルの正解データとして選択する
処理を情報処理装置が備えるプロセッサに実行させるための情報処理プログラム。
【0096】
(付記10)
少なくとも一つのプロセッサを備える情報処理装置であって、
前記プロセッサは、
第1の文書データを取得し、
文書データを入力とし、入力の文書データに含まれる複数の文字列を含む文字列集合を出力とする生成モデルに対して前記第1の文書データを入力することによって前記第1の文書データに対応する文字列集合を生成し、
生成した文字列集合と、前記第1の文書データから目的に沿って作成された第2の文書データとを用いて、前記文字列集合の評価値を、前記生成モデルを強化学習させる際の報酬として導出する
情報処理装置。
【0097】
(付記11)
前記プロセッサは、
前記文字列集合と、前記第2の文書データとを用いて、前記文字列集合を構成する各文字列の評価値を導出し、
前記文字列集合の評価値として、前記文字列集合を構成する各文字列の評価値の合計値を導出し、
前記文字列集合に含まれるが前記第2の文書データに含まれない文字列の分量、及び前記第2の文書データに含まれるが前記文字列集合に含まれない文字列の分量の少なくとも一方に応じて、導出した前記文字列集合の評価値を減少させる
付記10に記載の情報処理装置。
【0098】
(付記12)
第1の文書データを取得し、
文書データを入力とし、入力の文書データに含まれる複数の文字列を含む文字列集合を出力とする生成モデルに対して前記第1の文書データを入力することによって前記第1の文書データに対応する文字列集合を生成し、
生成した文字列集合と、前記第1の文書データから目的に沿って作成された第2の文書データとを用いて、前記文字列集合の評価値を、前記生成モデルを強化学習させる際の報酬として導出する
処理を情報処理装置が備えるプロセッサが実行する情報処理方法。
【0099】
(付記13)
第1の文書データを取得し、
文書データを入力とし、入力の文書データに含まれる複数の文字列を含む文字列集合を出力とする生成モデルに対して前記第1の文書データを入力することによって前記第1の文書データに対応する文字列集合を生成し、
生成した文字列集合と、前記第1の文書データから目的に沿って作成された第2の文書データとを用いて、前記文字列集合の評価値を、前記生成モデルを強化学習させる際の報酬として導出する
処理を情報処理装置が備えるプロセッサに実行させるための情報処理プログラム。
【符号の説明】
【0100】
10 情報処理装置
20 CPU
21 メモリ
22 記憶部
23 ディスプレイ
24 入力装置
25 ネットワークI/F
26 RAM
27 バス
30 情報処理プログラム
32 生成モデル
34、36 文書データ
38 変換モデル
40 取得部
42、42A 第1生成部
44、44A、44B 導出部
46、46A 選択部
48、48A 第2生成部
50、50A 学習部
60 第3生成部
62 受付部
64 特定部
66 提示部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24