(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024178844
(43)【公開日】2024-12-25
(54)【発明の名称】文書の要約を生成するシステムおよび方法
(51)【国際特許分類】
G06F 40/279 20200101AFI20241218BHJP
G06F 40/216 20200101ALI20241218BHJP
G06N 20/00 20190101ALI20241218BHJP
【FI】
G06F40/279
G06F40/216
G06N20/00 130
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2023097303
(22)【出願日】2023-06-13
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110002365
【氏名又は名称】弁理士法人サンネクスト国際特許事務所
(72)【発明者】
【氏名】高瀬 諒一
(72)【発明者】
【氏名】尾崎 太亮
(72)【発明者】
【氏名】笹沢 裕一
(72)【発明者】
【氏名】今一 修
(72)【発明者】
【氏名】曽我部 将義
(72)【発明者】
【氏名】寺沢 賢司
(72)【発明者】
【氏名】井ノ口 弘毅
(72)【発明者】
【氏名】佐藤 悠人
(57)【要約】
【課題】文書の要約を、ユーザの観点に沿って、高精度に行うことが可能な技術を提供する。
【解決手段】文書要約生成システムは、文書の要約を生成するシステムであって、少なくともプロセッサと記憶デバイスとを備えるコンピュータが、ユーザが当該文書の要約に含めたい箇所を表すユーザの観点を把握するユーザ観点把握処理と、当該文書からユーザの観点が含まれる文を重要文として抽出するための抽出モデルを構築する抽出要約モデル学習処理と、構築された抽出モデルを用いて、当該文書から重要文を抽出する要約学習データ生成処理と、抽出された重要文を教師データとして用いて、当該文書の要約を生成するために用いる要約言語モデルを再学習させる要約言語モデル教師あり学習処理とを実行する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
文書の要約を生成する文書要約生成システムであって、
少なくともプロセッサと記憶デバイスとを備えるコンピュータが、
ユーザが当該文書の要約に含めたい箇所を表すユーザの観点を把握するユーザ観点把握処理と、
当該文書から前記ユーザの観点が含まれる文を重要文として抽出するための抽出モデルを構築する抽出要約モデル学習処理と、
前記構築された抽出モデルを用いて、当該文書から重要文を抽出する要約学習データ生成処理と、
前記抽出された重要文を教師データとして用いて、当該文書の要約を生成するために用いる要約言語モデルを再学習させる要約言語モデル教師あり学習処理と
を実行する、
文書要約生成システム。
【請求項2】
前記ユーザの観点は、当該ユーザから当該文書における重要箇所を指定する入力操作を受け付けることによって把握される、請求項1に記載の文書要約生成システム。
【請求項3】
前記抽出された重要文を画面上に表示して、当該重要文への修正操作を当該ユーザから受け付ける、請求項1に記載の文書要約生成システム。
【請求項4】
前記ユーザの観点に基づいて報酬関数を設計し、当該報酬関数を用いて前記再学習させた要約言語モデルに対して強化学習を施す要約言語モデル強化学習処理をさらに実行する、請求項1に記載の文書要約生成システム。
【請求項5】
前記文書を表すデータは、当該ユーザが所有する文書データと、当該ユーザのドメインデータとの少なくともいずれか一つである、請求項1に記載の文書要約生成システム。
【請求項6】
前記ユーザの観点は、当該文書に含まれる5W1Hの少なくともいずれか一つを表す単語を含む、請求項1に記載の文書要約生成システム。
【請求項7】
文書の要約を生成する文書要約生成方法であって、
少なくともプロセッサと記憶デバイスとを備えるコンピュータが、
ユーザが当該文書の要約に含めたい箇所を表すユーザの観点を把握し、
当該文書から前記ユーザの観点が含まれる文を重要文として抽出するための抽出モデルを構築し、
前記構築された抽出モデルを用いて、当該文書から重要文を抽出し、
前記抽出された重要文を教師データとして用いて、当該文書の要約を生成するために用いる要約言語モデルを再学習させる
文書要約生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文書の要約を生成するための技術に関する。
【背景技術】
【0002】
今日、自然言語処理技術は、社会のさまざまな場面で活用されている。とりわけ、昨今では、生産性の向上や時間効率化等に資する重要な技術として、注目度が増している。そうした、主に生産性の向上や時間効率化等を目的とした自然言語処理技術の活用法の具体例として、各種報道機関が日々インターネットを介して配信するニュース記事や、コールセンターにおける顧客との対話ログ等といった大量の文章データから有用な情報を抽出するために、その内容を要約してユーザに提示する機能を有する各種システム(以下、「文書要約システム」と総称する)が挙げられる。
【0003】
この文書要約システムの開発は、近年、とくに興隆が目覚ましく、現在では、大規模な言語モデルを用いることによって文章全体の意味を捉え、尤もらしい要約文を生成することができる、抽象型の文書要約システムが登場し、さらなる進展を遂げている(例えば特許文献1~2)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】米国特許出願公開第2021/0192126号明細書
【特許文献2】特開2021-131769号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
一般に、文書要約システムが行う要約学習は、翻訳学習と比較してデータセットが大規模でないことが多く、ドメイン過学習が起きやすい、という性質を有する。ドメイン過学習が起きると、要約学習時のドメインと、ユーザの文書データのドメインとが不一致となり、要約精度が低下する、という問題が生じる。この問題について、従来の文書要約システムは、要約言語モデルを学習する際、例えばニュース記事等の既存の要約学習データを用いて一般的な要約機能を学習した後で、当該システムにデプロイ(配備)するため、デプロイ前にあらかじめユーザの文書データのドメインを把握し、学習させておくことが難しかった。
【0006】
また、例えば、文書要約システムのユーザが企業等の業務担当者である場合に、当該ユーザが「自社のビジネスに関連した箇所を中心に文書を要約したい」と考えるように、文書要約システムのユーザは、通常、文書を要約する際に特に重視する観点(以下、「ユーザの観点」と称する)を有していることが多い。そして、このユーザの観点は、ユーザごとに異なっていることが通常であるため、各ユーザの観点に沿うように要約内容を調整するためには、ユーザごとに異なる観点を全て事前に把握したうえで、要約言語モデルを学習させる必要がある。しかしながら、ユーザの観点を事前に全て把握した上で、要約言語モデルを学習させることは困難であるため、従来の文書要約システムは、ユーザの観点に沿うように要約内容を調整することが難しかった。
【0007】
本発明は、上記の課題に鑑みてなされたものであり、文書の要約を、ユーザの観点に沿って、高精度に行うことが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明による文書要約生成システムは、文書の要約を生成するシステムであって、少なくともプロセッサと記憶デバイスとを備えるコンピュータが、ユーザが当該文書の要約に含めたい箇所を表すユーザの観点を把握するユーザ観点把握処理と、当該文書からユーザの観点が含まれる文を重要文として抽出するための抽出モデルを構築する抽出要約モデル学習処理と、構築された抽出モデルを用いて、当該文書から重要文を抽出する要約学習データ生成処理と、抽出された重要文を教師データとして用いて、当該文書の要約を生成するために用いる要約言語モデルを再学習させる要約言語モデル教師あり学習処理とを実行する。
【0009】
その他、本願が開示する課題、およびその解決方法は、発明を実施するための形態の欄、および図面により明らかにされる。
【発明の効果】
【0010】
本発明によれば、文書の要約を、ユーザの観点に沿って、高精度に行うことができる。
【図面の簡単な説明】
【0011】
【
図1】文書要約生成システムのハードウェア構成の一例を示す図である。
【
図2】文書要約生成システムの機能ブロックの一例を示す図である。
【
図3】文書要約生成システムの動作の一例を示す図である。
【
図5】ユーザの観点把握時における表示画面の一例を示す図である。
【
図6】ユーザ観点把握処理の流れの一例を示すフローチャートである。
【
図7】抽出要約モデル学習処理の流れの一例を示すフローチャートである。
【
図8】要約学習データ生成処理の流れの一例を示すフローチャートである。
【
図9】要約言語モデル教師あり学習処理の流れの一例を示すフローチャートである。
【
図10】要約言語モデル強化学習処理の流れの一例を示すフローチャートである。
【
図11】抽出要約文生成処理の流れの一例を示すフローチャートである。
【
図12】生成要約文生成処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下の説明では、「インターフェースデバイス」は、一つ以上のインターフェースデバイスでよい。当該一つ以上のインターフェースデバイスは、下記のうちの少なくとも一つでよい。
・一つ以上のI/O(Input/Output)インターフェースデバイス。I/O(Input/Output)インターフェースデバイスは、I/Oデバイスと遠隔の表示用計算機とのうちの少なくとも一つに対するインターフェースデバイスである。表示用計算機に対するI/O(Input/Output)インターフェースデバイスは、通信インターフェースデバイスでよい。少なくとも一つのI/Oデバイスは、ユーザーインターフェースデバイス、例えば、キーボードおよびポインティングデバイスのような入力デバイスと、表示デバイスのような出力デバイスとのうちのいずれでもよい。
・一つ以上の通信インターフェースデバイス。一つ以上の通信インターフェースデバイスは、一つ以上の同種の通信インターフェースデバイス(例えば一つ以上のNIC(Network Interface Card))であってもよいし二つ以上の異種の通信インターフェースデバイス(例えばNICとHBA(Host Bus Adapter))であってもよい。
【0013】
また、以下の説明では、「メモリ」は、一つ以上の記憶デバイスの一例である一つ以上のメモリデバイスであり、典型的には主記憶デバイスでよい。メモリにおける少なくとも一つのメモリデバイスは、揮発性メモリデバイスであってもよいし不揮発性メモリデバイスであってもよい。
【0014】
また、以下の説明では、「永続記憶デバイス」は、一つ以上の記憶デバイスの一例である一つ以上の永続記憶デバイスでよい。永続記憶デバイスは、典型的には、不揮発性の記憶デバイス(例えば補助記憶デバイス)でよく、具体的には、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、NVME(Non-Volatile Memory Express)ドライブ、または、SCM(Storage Class Memory)でよい。
【0015】
また、以下の説明では、「記憶デバイス」は、メモリと永続記憶デバイスの少なくともメモリでよい。
【0016】
また、以下の説明では、「プロセッサ」は、一つ以上のプロセッサデバイスでよい。少なくとも一つのプロセッサデバイスは、典型的には、CPU(Central Processing Unit)のようなマイクロプロセッサデバイスでよいが、GPU(Graphics Processing Unit)のような他種のプロセッサデバイスでもよい。少なくとも一つのプロセッサデバイスは、シングルコアでもよいしマルチコアでもよい。少なくとも一つのプロセッサデバイスは、プロセッサコアでもよい。少なくとも一つのプロセッサデバイスは、処理の一部または全部を行うハードウェア記述言語によりゲートアレイの集合体である回路(例えばFPGA(Field-Programmable Gate Array)、CPLD(Complex Programmable Logic Device)またはASIC(Application Specific Integrated Circuit))といった広義のプロセッサデバイスでもよい。
【0017】
また、以下の説明では、「xxxテーブル」といった表現にて、入力に対して出力が得られる情報を説明することがあるが、当該情報は、どのような構造のテーブルでもよいし、入力に対する出力を発生するニューラルネットワーク、遺伝的アルゴリズムやランダムフォレストに代表されるような学習モデルでもよい。従って、「xxxテーブル」を「xxx情報」と言うことができる。また、以下の説明において、各テーブルの構成は一例であり、一つのテーブルは、二つ以上のテーブルに分割されてもよいし、二つ以上のテーブルの全部または一部が一つのテーブルであってもよい。
【0018】
また、以下の説明では、「yyy部」の表現にて機能を説明することがあるが、機能は、一つ以上のコンピュータプログラムがプロセッサによって実行されることで実現されてもよいし、一つ以上のハードウェア回路(例えばFPGAまたはASIC)によって実現されてもよいし、それらの組合せによって実現されてもよい。プログラムがプロセッサによって実行されることで機能が実現される場合、定められた処理が、適宜に記憶デバイスおよび/またはインターフェースデバイス等を用いながら行われるため、機能はプロセッサの少なくとも一部とされてもよい。機能を主語として説明された処理は、プロセッサあるいはそのプロセッサを有する装置が行う処理としてもよい。プログラムは、プログラムソースからインストールされてもよい。プログラムソースは、例えば、プログラム配布計算機または計算機が読み取り可能な記録媒体(例えば非一時的な記録媒体)であってもよい。各機能の説明は一例であり、複数の機能が一つの機能にまとめられたり、一つの機能が複数の機能に分割されたりしてもよい。
【0019】
また、以下の説明では、「プログラム」を主語として処理を説明する場合があるが、プログラムを主語として説明された処理は、プロセッサあるいはそのプロセッサを有する装置が行う処理としてもよい。また、二つ以上のプログラムが一つのプログラムとして実現されてもよいし、一つのプログラムが二つ以上のプログラムとして実現されてもよい。
【0020】
また、以下の説明では、「文書要約生成システム」は、一つ以上の物理的な計算機で構成されたシステムでもよいし、物理的な計算リソース群(例えば、クラウド基盤)上に実現されたシステム(例えば、クラウドコンピューティングシステム)を含んでいてもよい。文書要約生成システムが表示用情報を「表示する」ことは、計算機が有する表示デバイスに表示用情報を表示することであってもよいし、計算機が表示用計算機に表示用情報を送信することであってもよい(後者の場合は表示用計算機によって表示用情報が表示される)。
【0021】
以下、図面を参照しつつ、本実施形態を詳細に説明する。
【0022】
なお、以下の説明においては、同一の、または類似する構成に共通の符号を付すことにより、重複した説明を省略することがある。
【0023】
また、同一あるいは同様の機能を有する要素が複数存在する場合に、当該複数の要素を区別するために、同一の符号に異なる添字を付して説明することがある。他方、当該複数の要素を区別する必要がない場合には、添字を省略して説明することがある。
【0024】
<文書要約生成システム100の構成例>
まず、本実施形態に係る文書要約生成システム100の構成例について、
図1~2を参照しつつ説明する。
図1は、文書要約生成システム100のハードウェア構成の一例を示した図である。また、
図2は、文書要約生成システム100の機能ブロックの一例を示した図である。
【0025】
(システム全体の構成例)
本実施形態の文書要約生成システム100は、文書の要約を生成することが可能なコンピュータシステムであり、後述の各構成を備えるコンピュータ装置またはサーバ装置によって実現される。
【0026】
文書要約生成システム100は、後述する入力データ201の取得先である他のコンピュータ装置やサーバ装置等(以下、「他の装置」とも称する)と、インターネットや専用線等の適宜な通信ネットワークを介して相互にデータ通信可能に接続されている。
【0027】
なお、文書要約生成システム100および他の装置と、通信ネットワークとは、それぞれ周知の通信用機器(不図示)を介して有線で接続されるが、無線で接続されてもよい。
【0028】
また、この文書要約生成システム100に対して、例えば、文書要約生成システム100のユーザである企業の業務担当者が保有するラップトップPCやタブレット、スマートフォン等のユーザ端末(不図示)が、インターネットや専用線等の適宜な通信ネットワークを介して相互にデータ通信可能に接続されていてもよい。この場合、ユーザ端末と通信ネットワークとは無線で接続されてもよいし、有線で接続されてもよい。
【0029】
なお、本実施形態では、文書要約生成システム100が一つの装置からなるものとして説明した。しかしながら、例えば、文書要約生成システム100は、複数の装置から構成されていてもよい。
【0030】
また、本実施形態では、文書要約生成システム100と他の装置とが別々の装置からなるものとして説明した。しかしながら、文書要約生成システム100と、他の装置とは、同一の装置によって構成されていてもよい。この場合、文書要約生成システムは、例えば、他の装置を含むシステムとして構成されていてもよい。また、例えば、文書要約生成システムは、他の装置が担う一部または全部の機能を含む形で構成されていてもよい。
【0031】
(ハードウェア構成例)
次に、本実施形態に係る文書要約生成システム100のハードウェア構成の一例について、
図1を参照しつつ説明する。
【0032】
本実施形態の文書要約生成システム100は、
図1に例示したように、一台の汎用コンピュータ装置によって実現される。以下の説明は、文書要約生成システム100が、一つ以上のプロセッサ101、一つ以上の記憶デバイス102、一つ以上のインターフェースデバイス(103、104、105)、およびそれらを連結する有線または無線の通信線106を備える一台の汎用コンピュータ装置により実現されているものとして行う。
【0033】
すなわち、文書要約生成システム100は、永続記憶デバイスおよび/またはメモリを含む記憶デバイス102と、入力デバイス103、出力デバイス104および/または通信インターフェースデバイス105を含むインターフェースデバイスと、それらに接続されたプロセッサ101とを有する。
【0034】
永続記憶デバイスは、フラッシュメモリ(Flash Memory)のような不揮発性記憶素子からなる補助記憶デバイスである。永続記憶デバイスの具体例としては、SSD(Solid State Drive)やHDD(Hard Disk Drive)等が挙げられる。永続記憶デバイスは、少なくとも文書要約生成プログラムを格納する。文書要約生成プログラムは、文書要約生成システム100として必要な機能を実装するためのコンピュータプログラムである。
【0035】
すなわち、文書要約生成プログラムがプロセッサ101により実行されることで、
図3および
図6~12に関連してそれぞれ後述するユーザの観点212の把握に係る処理(以下、「ユーザ観点把握処理」と称する)や、抽出モデル223の学習に係る処理(以下、「抽出要約モデル学習処理」と称する)、要約学習データ233の生成に係る処理(以下、「要約学習データ生成処理」と称する)、要約言語モデル243の教師あり学習に係る処理(以下、「要約言語モデル教師あり学習処理」と称する)、要約言語モデル243の強化学習に係る処理(以下、「要約言語モデル強化学習処理」と称する)、抽出要約文251の生成に係る処理(以下、「抽出要約文生成処理」と称する)、生成要約文252の生成に係る処理(以下、「生成要約文生成処理」と称する)、等を含む各種処理が行われる。
【0036】
なお、文書要約生成プログラムは、プログラムソースからインストールされてもよい。プログラムソースは、例えばプログラム配布計算機や計算機が読み取り可能な記録媒体等であってもよい。また、文書要約生成プログラムは、デバイスドライバ、オペレーティングシステム、それらの上位層に位置する各種アプリケーションプログラム、また、これらのプログラムに共通機能を提供するライブラリによって構成されてもよい。さらに、二つ以上のプログラムが一つの文書要約生成プログラムとして実現されてもよいし、一つの文書要約生成プログラムが二つ以上のプログラムとして実現されてもよい。
【0037】
メモリは、主にRAM(Random Access Memory)のような揮発性記憶素子からなる主記憶デバイスである。メモリには、永続記憶デバイスから読み込んだ各種情報を表すデータや、入力デバイス103および/または通信インターフェースデバイス105を介して取得した各種データが一時的に保持される。
【0038】
プロセッサ101は、CPU(Central Processing Unit)および各種コプロセッサ(Co-processor)等のプロセッサデバイスである。このプロセッサ101は、文書要約生成プログラムをメモリに呼び出して実行することにより、文書要約生成システム100自体の統括制御を行なうとともに、演算処理や判定処理等の各種処理を行う制御部200を司る。
【0039】
インターフェースデバイスは、通信ネットワークに接続して他の装置や端末等と通信を行う通信インターフェースデバイス105と、入力デバイス103および出力デバイス104からなるI/O(Input/Output)インターフェースデバイスとを含む。
【0040】
(機能ブロック例)
次に、本実施形態に係る文書要約生成システム100が備える各種機能のブロックの一例について、
図2を参照しつつ説明する。なお、以下に説明する各ブロックは、ハードウェア単位の構成ではなく、機能単位のブロックを示している。
【0041】
文書要約生成システム100は、制御部200、記憶部203および通信部(不図示)と、入力部および出力部からなるユーザーインターフェース部(いずれも不図示)との各機能ブロックを備えて構成される。
【0042】
制御部200は、記憶部203が格納しているプログラムやデータ、および、通信部により取得されたデータに基づいて各種データ処理を実行する。また、制御部200は、例えば、前述したユーザ観点把握処理(
図3および
図6に関連して詳細後述)や、抽出要約モデル学習処理(
図3および
図7に関連して詳細後述)、要約学習データ生成処理(
図3および
図8に関連して詳細後述)、要約言語モデル教師あり学習処理(
図3および
図9に関連して詳細後述)、要約言語モデル強化学習処理(
図3および
図10に関連して詳細後述)、抽出要約文生成処理(
図11に関連して詳細後述)、生成要約文生成処理(
図12に関連して詳細後述)等の各種処理を実行する。制御部200は、記憶部203および通信部のインターフェースとしても機能する。
【0043】
制御部200は、
図2に示すように、抽出要約部202および生成要約部204の各機能ブロックを有する。
【0044】
抽出要約部202は、抽出学習データ生成部221および抽出モデル学習部222の各機能ブロックを含む。
【0045】
抽出学習データ生成部221は、ユーザ観点把握処理(
図3および
図6に関連して詳細後述)を含む、抽出学習データ231の生成に係る各種処理を実行する。
【0046】
抽出モデル学習部222は、抽出要約モデル学習処理(
図3および
図7に関連して詳細後述)を含む、抽出モデル223の学習に係る各種処理を実行する。
【0047】
生成要約部204は、要約学習データ生成部241および要約言語モデル学習部242の各機能ブロックを含む。
【0048】
要約学習データ生成部241は、要約学習データ生成処理(
図3および
図8に関連して詳細後述)を実行する。
【0049】
要約言語モデル学習部242は、要約言語モデル教師あり学習処理(
図3および
図9に関連して詳細後述)や要約言語モデル強化学習処理(
図3および
図10に関連して詳細後述)といった、要約言語モデル243の学習に係る各種処理を実行する。
【0050】
また、生成要約部204は、上記の要約言語モデル強化学習処理においてユーザの観点212に基づいた報酬関数を設計する報酬計算部(不図示)をさらに備えていてもよい。
【0051】
制御部200は、プロセッサ101を用いて構成され、所定の文書要約生成プログラムを実行することによって、これらの機能ブロックを実現することができる。なお、プロセッサ101の代わりに、例えばFPGA(Field Programmable Gate Array)等の論理回路を用いて制御部200を構成してもよい。また、プロセッサ101と論理回路との組合せによって制御部200を構成してもよい。
【0052】
記憶部203は、例えば永続記憶デバイスおよびメモリからなる記憶デバイス102を用いて構成されており、制御部200に各種処理命令を供給するプログラム、および制御部200が実行する処理において用いられる各種情報を表すデータを格納する。
【0053】
記憶部203は、例えば、抽出学習データ231、抽出モデルストア232、要約学習データ233、および、要約言語モデルストア234を少なくとも格納する。
【0054】
制御部200は、これらの情報を記憶部203に読み書きすることで、前述のユーザ観点把握処理(
図6に関連して詳細後述)や、抽出要約モデル学習処理(
図7に関連して詳細後述)、要約学習データ生成処理(
図8に関連して詳細後述)、要約言語モデル教師あり学習処理(
図9に関連して詳細後述)、要約言語モデル強化学習処理(
図10に関連して詳細後述)、抽出要約文生成処理(
図11に関連して詳細後述)、生成要約文生成処理(
図12に関連して詳細後述)等の各種処理を実行することができる。
【0055】
通信部は、インターネット(通信ネットワークの一例)を介して行われる、ユーザ端末や他の装置との通信処理を担当する。通信部は、例えばNIC(Network Interface Card)やHBA(Host Bus Adapter)等を用いて構成される。
【0056】
ユーザーインターフェース部(不図示)は、入力部および出力部の各機能ブロックを含んで構成される。
【0057】
入力部は、ユーザーインターフェースに関する処理のうち、ユーザからの入力操作の受け付け等、入力に関する処理を担当する。入力部は、例えばキーボードやポインティングデバイス、タッチパネル等を用いて構成され、ユーザからの各種操作を検出する。
【0058】
出力部は、ユーザーインターフェースに関する処理のうち、表示装置への各種画面の表示や音声出力等、出力に関する処理を担当する。出力部は、例えば液晶ディスプレイやタッチスクリーン等を用いて構成される。
【0059】
文書要約生成システム100は、入力部および/または通信部を介して、文書データ211、ユーザの観点212、設定情報213等といった各種入力データ201を取得する。
【0060】
文書要約生成システム100は、出力部および/または通信部を介して、抽出要約文251、生成要約文252、正解ラベル例253等といった各種出力データ205を出力する。
【0061】
すなわち、文書要約生成システム100の各構成要素は、プロセッサ101、メモリや永続記憶デバイスといった記憶デバイス102、それらを連結する有線または無線の通信線106やインターフェースデバイスを含むハードウェアと、記憶デバイス102に格納され、演算器に処理命令を供給するソフトウェアによって実現される。
【0062】
本実施形態では、文書要約生成システム100の各機能が一台のコンピュータ装置により一体的に実現されているものとして説明した。しかしながら、これらの各機能は相互に接続された複数台のコンピュータ装置またはサーバ装置によって実現されてもよい。また、文書要約生成システム100は、ラップトップPC等の汎用コンピュータ装置と、これにインストールされたウェブブラウザとを含む構成であってもよいし、ウェブサーバや各種携帯機器を含む構成であってもよい。
【0063】
また、文書要約生成システム100が、上述した各種機能に加えて、さらに別の機能を備えていてもよい。
【0064】
<文書要約生成システム100の動作例>
次に、文書要約生成システム100の動作について、
図3を参照して説明する。
図3は、本実施形態に係る文書要約生成システム100が実行する処理全体の流れを示すフローチャートである。なお、以下の説明では、前述の各機能またはプログラムを主語として処理を説明する場合があるが、機能またはプログラムを主語として説明した処理は、プロセッサ101、あるいはそのプロセッサ101を有する装置が行う処理としてもよい。
【0065】
ステップS301において、制御部200は、抽出要約部202の抽出学習データ生成部221により、ユーザ観点把握処理を実行する。これにより、当該文書について要約データを生成する際に、重要箇所、すなわち、当該ユーザにとって要約に含めて欲しい箇所を表すユーザの観点212を、「いつ(WHEN)」や「どこで(WHERE)」等の5W1Hを基準に把握することが可能になる。文書要約生成システム100では、このユーザの観点212に係るデータを、
図4および
図5に例示した文書要約生成システム100のグラフィカルユーザーインターフェース(GUI)において、
図5に示したように、正解サンプルについて、文書中の重要箇所に対して当該ユーザからマーカを引く入力操作を受け付けることによって取得している。なお、ステップS301で行われるユーザ観点把握処理の詳細は、後で
図6のフローチャートを参照して説明する。制御部200は、ユーザ観点把握処理が完了すると、ステップS302に進む。
【0066】
ステップS302において、制御部200は、抽出要約部202の抽出モデル学習部222により、抽出要約モデル学習処理を実行する。これにより、少量の正解サンプルである抽出学習データ231を用いて、要約におけるユーザの観点212が含まれる文を抽出する重要文抽出モデルである抽出モデル223を構築することができる。すなわち、文書要約生成システム100においては、比較的少数サンプルで、ユーザの観点212に即した抽出モデル223の学習が可能である。なお、ステップS302で行われる抽出要約モデル学習処理の詳細は、後で
図7のフローチャートを参照して説明する。制御部200は、抽出要約モデル学習処理が完了すると、ステップS303に進む。
【0067】
ステップS303において、制御部200は、生成要約部204の要約学習データ生成部241により、ステップS302において学習させた抽出モデル223を用いて、ユーザが所有する文書データ211(または同じドメインデータ)に対して重要文抽出を実行し、抽出文を正解要約とする、要約学習データ生成処理を実行する。これにより、ユーザが所有する文書データ211(または同じドメインデータ)から、ユーザの観点212が含まれた教師データである要約学習データ233が自動的に生成される。なお、ステップS303で行われる要約学習データ生成処理の詳細は、後で
図8のフローチャートを参照して説明する。制御部200は、要約学習データ生成処理が完了すると、ステップS304に進む。
【0068】
ステップS304において、制御部200は、生成要約部204の要約言語モデル学習部242により、ステップS303で生成された要約学習データ233を教師データとして用いて、要約言語モデル教師あり学習処理を実行する。これにより、要約言語モデル243をユーザの観点212に沿うように調整することができる。なお、ステップS304で行われる要約言語モデル教師あり学習処理の詳細については、後で
図9のフローチャートを参照して説明する。制御部200は、要約言語モデル教師あり学習処理が完了すると、必要に応じて、さらにステップS305に進む。
【0069】
ステップS305において、制御部200は、生成要約部204の要約言語モデル学習部242により、生成したデータで学習後の生成要約とユーザの観点212との間にギャップがある場合には、強化学習によって言語モデルを調整する要約向け強化学習を行うため、要約言語モデル強化学習処理を実行する。ステップS303において教師データとして生成した要約学習データ233は、あくまでもユーザの観点212が含まれた文、言い換えると、準正解要約に係るデータに過ぎない。そのため、この要約学習データ233を専ら教師データとして用いて、ステップS304において要約言語モデル教師あり学習処理を実行すると、例えば「要約文が少し長い」といったように、ユーザの観点212との間で、ギャップが生じる場合がある。そこで、ステップS305で実行される要約言語モデル強化学習処理は、このギャップを埋めるために、ユーザの観点212に基づいた報酬関数を設計して、その上で、報酬を最大化するように強化学習を実行して、要約言語モデル243を更新するものである。本実機形態に係る文書要約生成システム100の場合は、係り受けを解析した後、単語の埋め込み表現での一致度を報酬としている。この点について、例えば、「昼食」と「昼ご飯」とでは単語が異なるため、単語の完全一致を報酬とすると、報酬の改善につながる指標を得ることができない。そこで、文書要約生成システム100は、報酬を連続値とすることで、強化学習の安定化を実現している。そのため、文書要約生成システム100は、強化学習向を実行しても非文が生成されにくいという利点を有する。このようにして、文書要約生成システム100は、ステップS304で構築した要約言語モデル243について、必要に応じて、さらに強化学習を効率よく行うことができる。なお、ステップS305で行われる要約言語モデル強化学習処理の詳細については、後で
図10のフローチャートを参照して説明する。制御部200は、要約言語モデル強化学習処理が完了すると、
図3のフローチャートに示す処理を終了する。
【0070】
すなわち、本実施形態の文書要約生成システム100では、
図3のステップS301~S304で順次実行される各処理により、従来は大量の教師データが必要であった要約生成においても、文抽出をすることによって、比較的少量の教師データによる学習で、ユーザの観点212に沿った、高精度な要約言語モデル243が構築される。その上で、本実施形態の文書要約生成システム100では、ユーザは、必要に応じて
図3のステップS305の処理を実行させることにより、構築した要約言語モデル243に対してさらに強化学習を施すことができる。そのため、文書要約生成システム100は、ユーザの観点212ごとに人手で報酬設計用の学習データを準備することなく、さらに強化学習を効率よく行うことができる。その結果、文書要約生成システム100は、文書の要約を、ユーザの観点212に沿って、高精度に行うことができる。
【0071】
<処理フロー例>
次に、本実施形態に係る文書要約生成システム100で実行される各処理について、
図6~12を参照しつつ説明する。
【0072】
(ユーザ観点把握処理)
図6は、本実施形態に係る文書要約生成システム100が実行するユーザ観点把握処理の流れの一例を示したフローチャートである。
【0073】
ステップS601において、文書要約生成システム100の制御部200は、抽出学習データ生成部221により、入力部または通信部を介して、文書データ211、ユーザの観点212および設定情報213を入力データ201として取得する処理を実行する。これにより、文書データ211、ユーザの観点212および設定情報213が入力データ201として取得される。文書要約生成システム100の制御部200は、ステップS601における処理が完了すると、ステップS602に進む。
【0074】
ステップS602において、文書要約生成システム100の制御部200は、ステップS601で取得された入力データ201を、抽出学習データ生成部221により、抽出要約部202に送信する処理を実行する。これにより、当該入力データ201が抽出要約部202に送信される。文書要約生成システム100の制御部200は、ステップS602における処理が完了すると、ステップS603に進む。
【0075】
ステップS603において、文書要約生成システム100の制御部200は、抽出学習データ生成部221により、抽出学習データ231を生成する処理を実行する。このとき、文書要約生成システム100は、文章を文分割して、ユーザの観点212が含まれる重要文であるか否かについてラベル付けを行い、抽出学習データ231を作成する。これにより、抽出学習データ231が生成される。文書要約生成システム100の制御部200は、ステップS603における処理が完了すると、ステップS604に進む。
【0076】
ステップS604において、文書要約生成システム100の制御部200は、ステップS603で生成された抽出学習データ231を、抽出学習データ生成部221により、記憶部203に保存する処理を実行する。これにより、当該抽出学習データ231が記憶部203に保存される。文書要約生成システム100の制御部200は、ステップS604における処理が完了すると、ステップS605に進む。
【0077】
ステップS605において、文書要約生成システム100の制御部200は、抽出学習データ生成部221により、出力部または通信部を介して、ステップS603で生成された抽出学習データ231の重要文の一部を正解ラベル例253として含む、出力データ205を出力する処理を実行する。これにより、当該出力データ205が出力される。文書要約生成システム100の制御部200は、ステップS605における処理が完了すると、
図6のフローチャートに示すユーザ観点把握処理を終了する。
【0078】
(抽出要約モデル学習処理)
図7は、本実施形態に係る文書要約生成システム100が実行する抽出要約モデル学習処理の流れの一例を示したフローチャートである。
【0079】
ステップS701において、文書要約生成システム100の制御部200は、抽出モデル学習部222により、入力部または通信部を介して、設定情報213を入力データ201として取得する処理を実行する。これにより、設定情報213が入力データ201として取得される。文書要約生成システム100の制御部200は、ステップS701における処理が完了すると、ステップS702に進む。
【0080】
ステップS702において、文書要約生成システム100の制御部200は、ステップS701で取得された入力データ201を、抽出モデル学習部222により、抽出要約部202に送信する処理を実行する。これにより、当該入力データ201が抽出要約部202に送信される。文書要約生成システム100の制御部200は、ステップS702における処理が完了すると、ステップS703に進む。
【0081】
ステップS703において、文書要約生成システム100の制御部200は、抽出モデル学習部222により、抽出学習データ231および抽出モデル223を記憶部203から読み込む処理を実行する。これにより、抽出学習データ231および抽出モデル223が記憶部203から読み込まれる。文書要約生成システム100の制御部200は、ステップS703における処理が完了すると、ステップS704に進む。
【0082】
ステップS704において、文書要約生成システム100の制御部200は、抽出モデル学習部222により、抽出モデル223の学習を実行する処理を実行する。これにより、抽出モデル223の学習が実行される。文書要約生成システム100の制御部200は、ステップS704における処理が完了すると、ステップS705に進む。
【0083】
ステップS705において、文書要約生成システム100の制御部200は、抽出モデル学習部222により、学習後の抽出モデル223を記憶部203に保存する処理を実行する。これにより、当該学習後の抽出モデル223が記憶部203に保存される。文書要約生成システム100の制御部200は、ステップS705における処理が完了すると、
図7のフローチャートに示す抽出要約モデル学習処理を終了する。
【0084】
(要約学習データ生成処理)
図8は、本実施形態に係る文書要約生成システム100が実行する要約学習データ生成処理の流れの一例を示したフローチャートである。
【0085】
ステップS801において、文書要約生成システム100の制御部200は、要約学習データ生成部241により、入力部または通信部を介して、文書データ211および設定情報213を入力データ201として取得する処理を実行する。これにより、文書データ211および設定情報213が入力データ201として取得される。文書要約生成システム100の制御部200は、ステップS801における処理が完了すると、ステップS802に進む。
【0086】
ステップS802において、文書要約生成システム100の制御部200は、ステップS801で取得された入力データ201を、要約学習データ生成部241により、生成要約部204に送信する処理を実行する。これにより、当該入力データ201が生成要約部204に送信される。文書要約生成システム100の制御部200は、ステップS802における処理が完了すると、ステップS803に進む。
【0087】
ステップS803において、文書要約生成システム100の制御部200は、要約学習データ生成部241により、抽出モデル223を記憶部203から読み込む処理を実行する。これにより、抽出モデル223が記憶部203から読み込まれる。文書要約生成システム100の制御部200は、ステップS803における処理が完了すると、ステップS804に進む。
【0088】
ステップS804において、文書要約生成システム100の制御部200は、要約学習データ生成部241により、要約学習データ233を生成する処理を実行する。文書要約生成システム100は、このとき、文書データ211および設定情報213を入力データ201とし、抽出モデル223を用いることで、要約学習データ233を生成する。これにより、要約学習データ233が生成される。文書要約生成システム100の制御部200は、ステップS804における処理が完了すると、ステップS805に進む。
【0089】
ステップS805において、文書要約生成システム100の制御部200は、ステップS804で生成された要約学習データ233を、要約学習データ生成部241により、記憶部203に保存する処理を実行する。これにより、要約学習データ233が記憶部203に保存される。文書要約生成システム100の制御部200は、ステップS805における処理が完了すると、
図8のフローチャートに示す要約学習データ生成処理を終了する。
【0090】
(要約言語モデル教師あり学習処理)
図9は、本実施形態に係る文書要約生成システム100が実行する要約言語モデル教師あり学習処理の流れの一例を示したフローチャートである。
【0091】
ステップS901において、文書要約生成システム100の制御部200は、要約言語モデル学習部242により、入力部または通信部を介して、設定情報213を入力データ201として取得する処理を実行する。これにより、設定情報213が入力データ201として取得される。文書要約生成システム100の制御部200は、ステップS901における処理が完了すると、ステップS902に進む。
【0092】
ステップS902において、文書要約生成システム100の制御部200は、ステップS901で取得された入力データ201を、要約言語モデル学習部242により、生成要約部204に送信する処理を実行する。これにより、当該入力データ201が生成要約部204に送信される。文書要約生成システム100の制御部200は、ステップS902における処理が完了すると、ステップS903に進む。
【0093】
ステップS903において、文書要約生成システム100の制御部200は、要約言語モデル学習部242により、要約学習データ233および要約言語モデル243を記憶部203から読み込む処理を実行する。これにより、要約学習データ233および要約言語モデル243が記憶部203から読み込まれる。文書要約生成システム100の制御部200は、ステップS903における処理が完了すると、ステップS904に進む。
【0094】
ステップS904において、文書要約生成システム100の制御部200は、要約言語モデル学習部242により、要約言語モデル243の教師あり学習を実行する処理を実行する。これにより、要約言語モデル243の教師あり学習が実行される。文書要約生成システム100の制御部200は、ステップS904における処理が完了すると、ステップS905に進む。
【0095】
ステップS905において、文書要約生成システム100の制御部200は、要約言語モデル学習部242により、学習後の要約言語モデル243を記憶部203に保存する処理を実行する。これにより、当該学習後の要約言語モデル243が記憶部203に保存される。文書要約生成システム100の制御部200は、ステップS905における処理が完了すると、
図9のフローチャートに示す要約言語モデル教師あり学習処理を終了する。
【0096】
(要約言語モデル強化学習処理)
図10は、本実施形態に係る文書要約生成システム100が実行する要約言語モデル強化学習処理の流れの一例を示したフローチャートである。
【0097】
ステップS1001において、文書要約生成システム100の制御部200は、要約言語モデル学習部242により、入力部または通信部を介して、設定情報213を入力データ201として取得する処理を実行する。これにより、設定情報213が入力データ201として取得される。文書要約生成システム100の制御部200は、ステップS1001における処理が完了すると、ステップS1002に進む。
【0098】
ステップS1002において、文書要約生成システム100の制御部200は、ステップS1001で取得された入力データ201を、要約言語モデル学習部242により、生成要約部204に送信する処理を実行する。これにより、当該入力データ201が生成要約部204に送信される。文書要約生成システム100の制御部200は、ステップS1002における処理が完了すると、ステップS1003に進む。
【0099】
ステップS1003において、文書要約生成システム100の制御部200は、要約言語モデル学習部242により、要約学習データ233および要約言語モデル243を記憶部203から読み込む処理を実行する。これにより、要約学習データ233および要約言語モデル243が記憶部203から読み込まれる。文書要約生成システム100の制御部200は、ステップS1003における処理が完了すると、ステップS1004に進む。
【0100】
ステップS1004において、文書要約生成システム100の制御部200は、要約言語モデル学習部242により、入力データ201に含まれるユーザの観点212に関する情報に基づき報酬関数を設定する処理を実行する。その際、文書要約生成システム100は、事前に報酬関数を複数用意しておき、ユーザの観点212(≒ユーザの優先順位)に報酬関数の重みを設定する。また、文書要約生成システム100は、報酬関数として、ROUGE、固有表現の一致度、係り受け解析の一致度、係り受け解析後の単語の埋め込み表現での一致度等を報酬にする。これにより、入力データ201であるユーザの観点212に関する情報に基づき報酬関数が設定される。文書要約生成システム100の制御部200は、ステップS1004における処理が完了すると、ステップS1005に進む。
【0101】
ステップS1005において、文書要約生成システム100の制御部200は、要約言語モデル学習部242により、要約言語モデル243の強化学習を実行する処理を実行する。これにより、要約言語モデル243の強化学習が実行される。文書要約生成システム100の制御部200は、ステップS1005における処理が完了すると、ステップS1006に進む。
【0102】
ステップS1006において、文書要約生成システム100の制御部200は、要約言語モデル学習部242により、学習後の要約言語モデル243を記憶部203に保存する処理を実行する。これにより、当該学習後の要約言語モデル243が記憶部203に保存される。文書要約生成システム100の制御部200は、ステップS1006における処理が完了すると、
図10のフローチャートに示す要約言語モデル強化学習処理を終了する。
【0103】
(抽出要約文生成処理)
図11は、本実施形態に係る文書要約生成システム100が実行する抽出要約文生成処理の流れの一例を示したフローチャートである。
【0104】
ステップS1101において、文書要約生成システム100の制御部200は、入力部または通信部を介して、文書データ211および設定情報213を入力データ201として取得する処理を実行する。これにより、文書データ211および設定情報213が入力データ201として取得される。文書要約生成システム100の制御部200は、ステップS1101における処理が完了すると、ステップS1102に進む。
【0105】
ステップS1102において、文書要約生成システム100の制御部200は、ステップS1101で取得された入力データ201を抽出要約部202に送信する処理を実行する。これにより、当該入力データ201が抽出要約部202に送信される。文書要約生成システム100の制御部200は、ステップS1102における処理が完了すると、ステップS1103に進む。
【0106】
ステップS1103において、文書要約生成システム100の制御部200は、抽出モデル223を記憶部203から読み込む処理を実行する。これにより、抽出モデル223が記憶部203から読み込まれる。文書要約生成システム100の制御部200は、ステップS1103における処理が完了すると、ステップS1104に進む。
【0107】
ステップS1104において、文書要約生成システム100の制御部200は、抽出要約文251を生成する処理を実行する。これにより、抽出要約文251が生成される。文書要約生成システム100の制御部200は、ステップS1104における処理が完了すると、ステップS1105に進む。
【0108】
ステップS1105において、文書要約生成システム100の制御部200は、出力部または通信部を介して、ステップS1104で生成された抽出要約文251を出力データ205として出力する処理を実行する。これにより、当該抽出要約文251が出力データ205として出力される。文書要約生成システム100の制御部200は、ステップS1105における処理が完了すると、
図11のフローチャートに示す抽出要約文生成処理を終了する。
【0109】
(生成要約文生成処理)
図12は、本実施形態に係る文書要約生成システム100が実行する生成要約文生成処理の流れの一例を示したフローチャートである。
【0110】
ステップS1201において、文書要約生成システム100の制御部200は、入力部または通信部を介して、文書データ211および設定情報213を入力データ201として取得する処理を実行する。これにより、文書データ211および設定情報213が入力データ201として取得される。文書要約生成システム100の制御部200は、ステップS1201における処理が完了すると、ステップS1202に進む。
【0111】
ステップS1202において、文書要約生成システム100の制御部200は、ステップS1201で取得された入力データ201を生成要約部204に送信する処理を実行する。これにより、当該入力データ201が生成要約部204に送信される。文書要約生成システム100の制御部200は、ステップS1202における処理が完了すると、ステップS1203に進む。
【0112】
ステップS1203において、文書要約生成システム100の制御部200は、生成言語モデルを記憶部203から読み込む処理を実行する。これにより、生成言語モデルが記憶部203から読み込まれる。文書要約生成システム100の制御部200は、ステップS1203における処理が完了すると、ステップS1204に進む。
【0113】
ステップS1204において、文書要約生成システム100の制御部200は、生成要約文252を生成する処理を実行する。これにより、生成要約文252が生成される。文書要約生成システム100の制御部200は、ステップS1204における処理が完了すると、ステップS1205に進む。
【0114】
ステップS1205において、文書要約生成システム100の制御部200は、出力部または通信部を介して、ステップS1204で生成された生成要約文252を出力データ205として出力する処理を実行する。これにより、当該生成された生成要約文252が出力データ205として出力される。文書要約生成システム100の制御部200は、ステップS1205における処理が完了すると、
図12のフローチャートに示す生成要約文生成処理を終了する。
【0115】
以上説明した本発明の実施形態は、以下のように総括される。
【0116】
(1)文書要約生成システム100は、文書の要約を生成するシステムであって、少なくともプロセッサ101と記憶デバイス102とを備えるコンピュータが、ユーザが当該文書の要約に含めたい箇所を表すユーザの観点212を把握するユーザ観点把握処理と、当該文書からユーザの観点212が含まれる文を重要文(要約学習データ233)として抽出するための抽出モデル223を構築する抽出要約モデル学習処理と、構築された抽出モデル223を用いて、当該文書から重要文(要約学習データ233)を抽出する要約学習データ生成処理と、抽出された重要文(要約学習データ233)を教師データとして用いて、当該文書の要約を生成するために用いる要約言語モデル243を再学習させる要約言語モデル教師あり学習処理とを実行する。このようにしたので、文書要約生成システム100は、文書の要約を、ユーザの観点212に沿って、高精度に行うことができる。
【0117】
(2)ユーザの観点212は、当該ユーザから当該文書における重要箇所を指定する入力操作を受け付けることによって把握される。
【0118】
(3)抽出された重要文(要約学習データ233)を画面上に表示して、当該重要文(要約学習データ233)への修正操作を当該ユーザから受け付ける。
【0119】
(4)ユーザの観点212に基づいて報酬関数を設計し、当該報酬関数を用いて、再学習させた要約言語モデル243に対して強化学習を施す要約言語モデル強化学習処理をさらに実行する。
【0120】
(5)文書を表すデータは、当該ユーザが所有する文書データ211と、当該ユーザのドメインデータとの少なくともいずれか一つである。
【0121】
(6)ユーザの観点212は、当該文書に含まれる5W1Hの少なくともいずれか一つを表す単語を含む。
【0122】
なお、本発明は上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲内で、任意の構成要素を用いて実施可能である。
【0123】
上記の実施形態や実施例、変形例はあくまで一例であり、発明の特徴が損なわれない限り、本発明はこれらの内容に限定されるものではない。また、上記では種々の実施形態や実施例、変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
【0124】
上記の各図において、制御線や情報線は説明上必要と考えられるものを示しており、必ずしも実装上の全ての制御線や情報線を示しているとは限らない。例えば、実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【0125】
また、以上に説明した文書要約生成システム100の各機能部の配置形態は一例に過ぎない。各機能部の配置形態は、文書要約生成システム100が備えるハードウェアやソフトウェアの性能、処理効率、通信効率等の観点から最適な配置形態に変更し得る。
【符号の説明】
【0126】
100:文書要約生成システム