(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023034235
(43)【公開日】2023-03-13
(54)【発明の名称】テキスト要約方法、テキスト要約システム
(51)【国際特許分類】
G06F 40/279 20200101AFI20230306BHJP
G06F 16/30 20190101ALI20230306BHJP
G06F 40/58 20200101ALI20230306BHJP
【FI】
G06F40/279
G06F16/30
G06F40/58
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2021140376
(22)【出願日】2021-08-30
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110002365
【氏名又は名称】弁理士法人サンネクスト国際特許事務所
(72)【発明者】
【氏名】土田 学
(72)【発明者】
【氏名】山口 篤季
(72)【発明者】
【氏名】尾崎 太亮
(72)【発明者】
【氏名】横手 健一
【テーマコード(参考)】
5B091
5B175
【Fターム(参考)】
5B091CA21
5B175DA01
5B175FB01
(57)【要約】 (修正有)
【課題】テキストを高精度に自動要約できるテキスト要約方法及びシステムを提供する。
【解決手段】テキスト要約システム100において、テキスト要約方法は、コンピュータが実行する。入力部101がテキスト901の入力を受け付け、テキストを話題単位でブロックに区切ったブロック化テキストを生成する、ブロック化部102が実行するブロック化ステップと、ブロック化テキストにおけるブロックごとにテキストの内容を要約して要約化テキストを出力する要約ステップと、要約化テキストの内容を構造化して出力する、構造化部103-2が実行する構造化ステップと、を含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
コンピュータが実行するテキスト要約方法であって、
テキストの入力を受け付け、前記テキストを話題単位でブロックに区切ったブロック化テキストを生成するブロック化ステップと、
前記ブロック化テキストにおける前記ブロックごとに前記テキストの内容を要約して要約化テキストを出力する要約ステップと、
前記要約化テキストの内容を構造化して出力する構造化ステップと、を含むテキスト要約方法。
【請求項2】
請求項1に記載のテキスト要約方法であって、
前記要約ステップにおいて、言語モデルを用いた抽象型要約を実施する、テキスト要約方法。
【請求項3】
請求項1に記載のテキスト要約方法であって、
前記テキストは1以上の人物の発話であり、
前記テキスト、または前記ブロック化テキストを処理対象として、発話者を推定する発話者特定ステップをさらに含み、
前記要約ステップでは前記発話者特定ステップにより推定された前記発話者の情報を用いて客観的な要約を生成する、テキスト要約方法。
【請求項4】
請求項1に記載のテキスト要約方法であって、
前記テキストまたは前記ブロック化テキストに対して翻訳を施し、前記要約ステップに前記テキストとは異なる言語に翻訳されたテキストを入力する順方向翻訳ステップ、および前記要約ステップまたは前記構造化ステップの出力に対して翻訳を施す逆方向翻訳ステップのうち一方をさらに含む、テキスト要約方法。
【請求項5】
請求項1に記載のテキスト要約方法であって、
前記テキストまたは前記ブロック化テキストに対して翻訳を施し、前記要約ステップに前記テキストとは異なる言語に翻訳されたテキストを入力する順方向翻訳ステップと、
前記要約ステップまたは前記構造化ステップの出力に対して翻訳を施す逆方向翻訳ステップと、をさらに含む、テキスト要約方法。
【請求項6】
請求項1に記載のテキスト要約方法であって、
前記構造化ステップでは、前記ブロック化ステップによってブロック化された前記テキストの単位で構造化を行う、テキスト要約方法。
【請求項7】
テキストの入力を受け付け、前記テキストを話題単位でブロックに区切ったブロック化テキストを生成するブロック化部と、
前記ブロック化テキストにおける前記ブロックごとに前記テキストの内容を要約して要約化テキストを出力する要約部と、
前記要約化テキストの内容を構造化して出力する構造化部と、を含むテキスト要約システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、テキスト要約方法、およびテキスト要約システムに関する。
【背景技術】
【0002】
会議やコールセンタの応答では、人の発話を介して情報交換や指示、または意思決定を行う。発話内容を書き起こした文書(発話テキスト)には、発話の履歴や発話者の情報が含まれている。このような発話テキストを自動的に要約(自動要約)して人に提示することは、会議の振り返りや意思決定を支援するための重要な技術である。
【0003】
発話テキストの自動要約は、自動要約の結果を確認する人(利用者)にとって読みやすく精度が高いものでなければならない。例えば、発話テキストから適切な要点、意見、および理由などの内容が構造化された形で利用者に提示されることで、自動要約の精度を高めることができる。精度の高い自動要約を提示するための技術として、発話テキストを適切な長さで分割する技術(ブロック化)や、発話テキストから重要個所を抜き出して要約とする技術(抽出型要約)や、発話テキストを簡潔に言い換える技術(抽象型要約)、および人が理解しやすい形式に変換して表示する技術(構造化)、などが用いられており、いずれも自然言語処理の技術が活用されている。
【0004】
ブロック化は、発話テキストを分割または抽出することにより、発話テキストから発話テキストの一つ以上の部分集合を得る。例えば、ブロック化では、発話テキストを機械が処理できる長さまで裁断し、裁断した各テキストに対して要約を行うことで、自動要約の精度を高めることができる。他にも、例えば、重要な話題に関する発話の部分だけを分割および抽出するブロック化を行うことで、特定の話題を自動要約して利用者に提示することができる。特許文献1には、テキストの談話構成要素を決定するステップと、テキストの談話の構造表現を決定するステップと、少なくとも一つの関連性の非構造基準に基づいて談話構成要素の関連性スコアを決定するステップと、談話の構造表現に基づいて関連性スコアを浸透するステップと、閾値関連性スコアと比較した関連性スコアにより、談話構成要素に基づいてハイブリッドテキスト要約を決定するステップと、を有するハイブリッドテキスト要約を決定する方法が開示されている。
【0005】
抽象型要約は、発話テキストの要点を簡潔にまとめることで、元の発話テキストを短く表現するテキストへと変換する。例えば、コンピュータに、形式的な階層構造を有する文書の要約範囲を認定させて該要約範囲の要約文書を作成させる手法が知られている。他には、抽象型要約を実施するための技術には、ニューラルネットワークが用いられることがある。例えば、抽象型要約では、Encoder-Decoderモデルなどのニューラルモデルによって自動要約元となるテキストを、適切な長さの要約文へと変換することができる。他にも、近年では、事前学習済み言語モデルであるBERT(Bidirectional Encoder Representations from Transformers)やBART(Bidirectional and Auto-Regressive Transformers)を活用することが考えられる。BERTやBARTは、World Wide Webから収集された大量なテキストから知識を蓄積し、この蓄積された知識を自動要約の生成に利用することで、極めて流暢かつ精度の高い要約を生成できる。
【0006】
構造化は、発話テキストから適切な構造を推定し、推定した構造を表示することで、利用者にとって分かりやすい要約を利用者に提示する。例えば、発話テキストから意見を述べている部分を抽出し、箇条書きとして利用者に提示する自動要約を行うことが考えられる。
【先行技術文献】
【特許文献】
【0007】
【発明の概要】
【発明が解決しようとする課題】
【0008】
発話テキストには音声認識で発生するノイズが含まれており、従来の精度の低い抽象型要約を発話テキストに対して利用することが難しかった。他にも、例えば、口語独特の「えー」や「あー」などのフィラー、または挨拶やオンライン会議への接続確認のように、議論の本質とは関係のない語句が発話テキストには多く含まれている。このような不要な語句は、理論上は抽象型要約によって除去することができるが、従来の抽象型要約の性能では依然として不要な語句を除去できず、自動要約された結果を利用者に提示しても、利用者にとって可読性が低かった。
このように、従来の議事録の要約システムでは、抽象型要約に技術的困難があったため、いったん発話テキストを抽出型要約と文分類などを用いて構造化した後に、抽象型要約を行う手法、すなわち「構造化してから要約を行う」という手段がとられていた。例えば、抽出型要約によって抽出された文を特定のカテゴリへと分類することで構造化を行い、最終的に前記抽出された文を文体変換することで自動要約を実現する手法が知られている。しかし、「構造化してから要約(この場合文体変換)を行う」という手段では、抽出型要約の結果、およびテキストの要約が特定のカテゴリへと分類する際などの構造化の結果に依存するため、要約結果に連続性や文脈が考慮されず、言語的および意味的に不自然になってしまう可能性があった。特許文献1に開示されている技術でも、テキストの自動要約に改善の余地がある。
【課題を解決するための手段】
【0009】
本発明の第1の態様によるテキスト要約方法は、コンピュータが実行するテキスト要約方法であって、テキストの入力を受け付け、前記テキストを話題単位でブロックに区切ったブロック化テキストを生成するブロック化ステップと、前記ブロック化テキストにおける前記ブロックごとに前記テキストの内容を要約して要約化テキストを出力する要約ステップと、前記要約化テキストの内容を構造化して出力する構造化ステップと、を含む。
本発明の第2の態様によるテキスト要約システムは、テキストの入力を受け付け、前記テキストを話題単位でブロックに区切ったブロック化テキストを生成するブロック化部と、前記ブロック化テキストにおける前記ブロックごとに前記テキストの内容を要約して要約化テキストを出力する要約部と、前記要約化テキストの内容を構造化して出力する構造化部と、を含む。
【発明の効果】
【0010】
本発明によれば、テキストを高精度に自動要約できる。
【図面の簡単な説明】
【0011】
【
図1】第1の実施の形態におけるテキスト要約システムのシステム構成図
【
図2】入力テキストおよびブロック化部の処理例を示す図
【
図3】ブロック化部の動作を決定するブロック化パラメータの入力画面を示す図
【
図6】構造化部の動作を決定する構造化パラメータの入力画面を示す図
【
図7】第2の実施の形態におけるテキスト要約システムのシステム構成図
【
図8】第3の実施の形態におけるテキスト要約システムのシステム構成図
【
図10】発話者特定後にブロック化および構造化を実施する一例を示す図
【
図11】第4の実施の形態におけるテキスト要約システムのシステム構成図
【
図12】テキスト要約システムを実現するコンピュータのハードウェア構成図
【発明を実施するための形態】
【0012】
本発明を実施するための形態を、図表を用いて説明する。以下において、各実施例および各変形例は、本発明の趣旨を逸脱しない範囲で一部または全部を組み合わせることができるものとする。
【0013】
―第1の実施の形態―
以下、
図1~
図6を参照して、テキスト要約システムの第1の実施の形態を説明する。以下の説明において、テキスト要約システムは、テキストを入力とし、テキストを話題単位で区切りブロックを生成する。そしてテキスト要約システムは、このブロックごとに内容を要約し、この要約を構造化することで自動要約された結果を利用者に提示する。
【0014】
(システム構成)
図1は、テキスト要約システム100のシステム構成図である。第1の実施の形態におけるテキスト要約システム100は、入力部101、ブロック化部102、およびブロック単位処理部103を含む。ブロック単位処理部103は、要約部103-1、および構造化部103-2をふくむ。本実施の形態では、例えば、発話テキストを入力として、自動要約された結果を利用者へ提示できる。利用者へ提示される自動要約は、例えば、議事録の自動要約、コールセンタの発話応答の自動要約、報告書の自動作成、などの様々なアプリケーションへ応用できる。
【0015】
入力部101は、文字列からなるテキストを入力として受け付け、ブロック化部102へと出力する。入力部101は、議事録、発話応答、およびチャット履歴など様々な種別の入力形式を受け付ける。また、入力部101への入力形式は、DB(Data Base)などの構造化されたデータ形式でもよいし、テキスト、文書処理ソフトのファイル形式、表計算ソフトのファイル形式、Webページ、およびPDF(Portable Document Format)などの構造化されていないデータ形式でもよい。また、入力部101へ入力するファイルに画像や表が挿入されていても構わない。さらに、第1の実施の形態ではテキストは日本語を前提として説明するが、英語や中国語など他の言語であっても問題ない。
【0016】
入力部101は、少なくとも1以上の文字または文字に準ずるデータから構成される入力テキスト901(
図2を参照)を入力として受け付け、ブロック化部102へと出力する。このとき、ブロック化部102への出力は、入力部101によって不要な文字コードの除去やテキストの整形などの処理が行われた結果でもよい。さらに、入力部101では、形態素解析や係り受け解析などの処理が行われてもよい。
【0017】
図2は入力テキスト901およびブロック化部102の処理例を示す図である。
図2に示す入力テキスト901は、あるオンライン会議の参加者の発話テキストである。入力テキスト901は合計8個の発話で構成されており、この8個の発話が上から下に時系列で並べられている。なお、入力テキスト901は時系列であっても、時系列でなくても構わないが、第1の実施の形態では入力テキスト901が時系列に並んでいるものとして説明する。
【0018】
ブロック化部102は、入力部101から受け付けたテキストを特定のブロックへと分割または抽出(ブロック化)し、要約部103-1へと出力する。以下では、ブロック化部102が出力するブロック化した入力テキスト901をブロック化テキスト102aと呼ぶ。なお、第1の実施の形態では、入力部101から受け付けたテキストを特定の話題で区切ることをブロック化とみなして説明するが、ブロック化はどのような形態でも構わない。話題で区切る以外には例えば、重要な箇所の抽出、固定長のブロック数によるブロック化、または時間によるブロック化などの方法が考えられる。
【0019】
ブロック化部102は、例えば、入力部101から受け付けたテキストの話題の区切れ目を、機械学習を用いて推定し、ブロックへと分割する。
図2では、ブロック化部102が入力テキスト901をブロック化し、ブロック化テキスト102aへと変換する処理の一例が示されている。
図2のブロック化の例では、入力テキスト901に含まれる「発話: あーちょっと音量が音量があー聞きとれないな」、「発話:どうでしょ聞こえますか 」および「発話:聞こえる はいい 聞こえるようになりました」の連続する3発話がオンライン会議の接続状況に関する一つの話題とみなせるため、これら3つの発話がひとまとまりの「ブロック1」とみなされている。
【0020】
また、入力テキスト901に含まれる「発話:今日の午後から えー 避難訓練がありますので 」および「発話:放送が聞こえたら 机の下に隠れる 隠れる 次 点呼を 点呼を行いますので えー 皆さんきちんと対応するように 」の連続する2発話がオンライン会議における避難訓練に関する指示であり、これら2つの発話がひとまとまりの「ブロック2」とみなされる。さらに、入力テキスト901に含まれる「発話: ちょっといいですか 私はリモートですので今日は参加できません」、「発話: そうですか」および「発話: わかりましたが マイクも避難マニュアルを読んでおいてください 」の連続する3つの発話がオンライン会議における避難訓練に関する発話者同士の情報共有であり、これら3つの発話がひとまとまりの「ブロック3」とみなされている。
【0021】
ブロック化部102におけるブロック化の手段はどのような方法であっても構わない。ブロック化の手段は例えば、ルールベース、機械学習を用いた自動ブロック化、および手動選択などの方法が考えられる。また、機械学習を用いた自動ブロック化には、LSTM(Long Short Term Memory)や言語モデルを用いてもよい。
【0022】
図3は、第1の実施の形態におけるブロック化部102の動作を決定するブロック化パラメータの入力画面を示す図である。
図3におけるブロック化パラメータ入力画面102bは、ブロック化に必要なパラメータを調整するためのチェックボックスを有する。ブロック化パラメータ入力画面102bには、第1チェックボックス102b1、第2チェックボックス102b2、および第3チェックボックス102b3が含まれる。第1チェックボックス102b1は、テキストを定数値の文数でブロック化する機能の選択に用いられる。第2チェックボックス102b2は、機械学習などを用いて自動的にブロック化する機能の選択に用いられる。第3チェックボックス102b3は、ブロック化を手動選択する機能の選択に用いられる。
【0023】
さらに、手動選択によってブロック化を入力する場合は、範囲を指定することが可能である。ブロック化パラメータ入力画面102bでは、「ボブ: あーちょっと音量が音量があー聞きとれないな 」、「アリス: どうでしょ聞こえますか 」、および「ボブ: 聞こえる はいい 聞こえるようになりました」の3発話が非選択となっており、要約部103-1への入力から除外されることを示している。ただし
図3では、作図の都合により下線を付すことで選択されていることを示している。
【0024】
なお、前述のチェックボックスは一例であり、項目の種類を問わない。また、ブロック化パラメータ入力画面102bは階層構造でもよいし、複数のページから構成されてもよい。また、ブロック化パラメータ入力画面102bは、GUI(Graphical User Interface)で構成されていても、CUI(Character User Inferface)で構成されていてもよい。また、ブロック化パラメータ入力画面102bで入力されたブロック化パラメータはDBやテキストに保存されていても、揮発性メモリに保存されていても構わない。
【0025】
ブロック化部102は、例えば、入力テキスト901から話題の適切な切れ目に基づいてブロック化するので、ブロック化部102から出力された各ブロックのテキストには単一の話題が含まれていることが期待される。したがって、ブロックごとに要約および構造化を実施することで精度の高い要約を提示できる。そのため、ブロック単位処理部103の要約部103-1および構造化部103-2はそれぞれ、ブロック化部102から出力されるブロック化されたテキストの単位でテキストを処理する。これにより、単一の話題に対する要約および構造化を適切に実施することができる。
【0026】
要約部103-1は、ブロック化部102からブロック化テキスト102aを入力として受け付け、ブロック単位のテキストを要約して要約化テキスト103aを生成し、構造化部103-2へ出力する。要約部103-1で用いられる要約の手法は、抽出型要約や抽象型要約など、様々な手段を用いることができる。要約部103-1において抽出型要約を要約手段として用いる場合は、例えば、重要な単語、句、および/または文を、ルールベースまたは機械学習などの手段で抽出することが考えられる。
【0027】
図4は、要約部103-1の処理例を示す図である。ただしここでは、要約部103-1は抽象型要約を要約手段として用いている。
図4に示す例では、要約部103-1にはブロック化テキスト102aが入力され、要約部103-1は要約化テキスト103aを出力する。要約化テキスト103aに示すように、ブロック化テキスト102aの各ブロック内のテキストは、元の文を書き直す形で要約されることで、流暢で簡潔かつ各ブロックの話題の重要な情報を保持した要約文を生成する。
【0028】
例えば、ブロック化テキスト102aの「発話: あーちょっと音量が音量があー聞きとれないな」、「発話: どうでしょ聞こえますか 」、および「発話: 聞こえる はいい 聞こえるようになりました」で構成されるブロック1は、要約部103-1によって「発話者は声を聴きとれるようになった。」へと変換される。
【0029】
また、ブロック化テキスト102aの「発話:今日の午後から えー 避難訓練がありますので」および「発話:放送が聞こえたら 机の下に隠れる 隠れる 次 点呼を 点呼を行いますので えー 皆さんきちんと対応するように」で構成されるブロック2は、要約部103-1によって「今日の午後から避難訓練があるので、放送が聞こえたら机の下に隠れるようにしてください。次に点呼を行うので、皆さんきちんと対応するようにしてください。 」へと変換される。
【0030】
さらに、ブロック化テキスト102aの「発話: ちょっといいですか 私はリモートですので今日は参加できません」、「発話: そうですか」および「発話: わかりましたが マイクも避難マニュアルを読んでおいてください 」で構成されるブロック3は、要約部103-1によって「リモート参加の方は今日は参加できないが、避難マニュアルを読んでおく必要があります。 」へと変換される。
【0031】
構造化部103-2は、要約部103-1が出力する、ブロック化されたテキストそれぞれに対する要約結果を入力として受け付け、要約結果902として出力する。構造化部103-2は、特定の手順に従って要約文を利用者にとって読みやすい形式へと変換する。以下に説明する図では、箇条書きおよび字下げによって、話題の中心文と補足文とを表現する構造化の例を示す。
【0032】
なお、構造化の形式はどのような形態であってもよい。その場合、論述構造に基づく構造化を行う方法や、ブロックに含まれる各文それぞれに対して特定の意味的なラベルを表示する方法が考えられる。また、構造化は段落や箇条書きを含まなくてもよい。また、第1の実施の形態では構造化をテキストとして表現するが、図や表が含まれていても構わない。さらに、構造化部103-2において、構造化を実施する手法であればどのような手法が用いられてもよい。その場合は、構造化部103-2の実現には例えば、ルールベースの文分類器や、機械学習を用いた論述構造解析器などの手段が考えられる。
【0033】
図5は、構造化部103-2の処理例を示す図である。
図5に示す例では、構造化部103-2には要約化テキスト103aが入力され、構造化部103-2は要約結果902を出力する。
図5において、ブロック化された要約化テキスト103aは、それぞれのブロックにおいてブロックの話題を中心とした構造化を行う。
【0034】
このとき、例えば、要約化テキスト103aのブロック1の「発話者は声を聴きとれるようになった。 」は、議論に直接関係のある要約では無いから、構造化部103-2によって「 [その他] 発話者は声を聴きとれるようになった。」と構造化される。このとき、「[その他]」は構造化部103-2によって付与された意味的なラベルである。なお、ラベルの種類は「[その他]」だけでなく、どのような種類であってもよい。その場合、例えば、「主張」、「理由」、および「質問」などのラベルが考えられる。また、ラベルは単一のブロック、文、句、または単語に対して2つ以上付与されていてもよい。
【0035】
次に、例えば、要約化テキスト103aのブロック2の「今日の午後から避難訓練があるので、放送が聞こえたら机の下に隠れるようにしてください。次に点呼を行うので、皆さんきちんと対応するようにしてください。 」は、構造化部103-2によって「 * 今日の午後から避難訓練がある」、「 → 放送が聞こえたら机の下に隠れるようにしてください 」、「 → 次に点呼を行う 」、および「 皆さんきちんと対応するようにしてください。 」のように、話題と補足情報が字下げおよび箇条書きによって構造化された状態で表示される。
【0036】
この構造化された状態の表示において、「*」から始まる文は話題を代表する文である。「→ 」から始まる文は補足情報を表す文であり、かつ箇条書きとなっている。なお、「*」や「→ 」などの構造化のための記号は一例に過ぎず、どのような記号であってもよい。また、記号でなくラベル、文字、単語、および図など、可読性を損なわない手段であればどのような形式であってもよい。
【0037】
図6は、構造化部103-2の動作を決定する構造化パラメータの入力画面を示す図である。
図6における構造化パラメータ入力画面103bは、構造化に必要なパラメータを調整するためのチェックボックスを有する。例えば、構造化パラメータ入力画面103bには、第4チェックボックス103b4、第5チェックボックス103b5、および第6チェックボックス103b6が含まれる。第4チェックボックス103b4は、文ごとに特定のラベルを表示する機能の選択に用いられる。第5チェックボックス103b5は、論述構造解析を用いて箇条書きや字下げが行われる機能の選択に用いられる。第6チェックボックス103b6は構造化によって表示される文の出現順に時系列を考慮する機能の選択に用いられる。
【0038】
構造化パラメータ入力画面103bはさらに、前述の特定のラベルの種類を記入できる第1テキストボックス103b7と、解析する論述構造の種類を指定できる第2テキストボックス103b8と、を有する。なお、チェックボックスおよびテキストボックスは一例であり、項目またはユーザインタフェースの種類を問わない。また、構造化パラメータ入力画面103bは階層構造でもよいし、複数のページから構成されてもよい。また、構造化パラメータ入力画面103bは、GUIで構成されていても、CUIで構成されていても構わない。また、構造化パラメータ入力画面で入力された構造化パラメータはDBやテキストに保存されていても、揮発性メモリに保存されていても構わない。
【0039】
上述した第1の実施の形態によれば、次の作用効果が得られる。
(1)テキスト要約システム100を実現するコンピュータ600が実行するテキスト要約方法は、ブロック化部102が実行するブロック化ステップと、要約部103-1が実行する要約ステップと、構造化部103-2が実行する構造化ステップとを含む。ブロック化ステップでは、入力テキスト901の入力を受け付け、テキストを話題単位で区切ったブロック化テキスト102aを生成する。要約ステップでは、ブロック化テキスト102aにおけるブロックごとにテキストの内容を要約して要約化テキスト103aを出力する。構造化ステップでは、要約化テキスト103aの内容を構造化して出力する。そのため、テキストを高精度に自動要約できる。本実施の形態の構成に至った背景を詳しく説明する。
【0040】
近年の言語モデルによる抽象型要約の飛躍的な性能の向上に伴い、人間の要約に匹敵するような、流暢で精度の高い自動要約が可能になってきた。膨大なテキストからMasked Language ModelまたはPermutation Language Modelによる事前学習の枠組みで獲得されたパラメータを有する言語モデルを用いることで、従来の抽象型要約に比べて、流暢さ、一貫性、および論理性の観点で飛躍的な性能の向上が確認されている。発話テキストに対する抽象型要約の精度も格段に向上している。例えば、会話テキストから事前学習によって獲得される言語モデルBARTを用いることで発話テキストの流暢な要約が可能になった。
【0041】
そこで、従来の「構造化してから要約を行う」手法ではなく、言語モデルを用いた抽象型要約によって「要約してから構造化を行う」手法によって、要約の言語的および意味的不自然さを解決できると考えた。「要約してから構造化を行う」手法を実施することで、前述の課題を解決できるだけでなく、構造化の前に実施される要約の精度が高いため、後段の処理である構造化の精度も高くなる。したがって、利用者にとって読みやすく構造化された精度の高い要約結果を提示することができる。
【0042】
言語モデルを用いた抽象型要約によって「要約してから構造化を行う」ためには、まず発話テキストを要約しなくてはならない。しかしながら、発話テキストは非常に長く、そのため発話テキストに含まれる単語や文字で構成されるトークンの列(トークン列)の長さが、言語モデルが受け付けることができる入力長を上回ることが少なくない。したがって、このとき、発話テキストを言語モデルを用いた抽象型要約に直接入力することができない。
【0043】
さらに、会議では複数の議題が発生することがあり、時系列によって発話テキストの話題が大きく異なる。このような状況下では、抽象型要約を、そのまま発話テキストに対して適用してしまうと、話題が散逸した要約が生成される問題や、重要な話題が無視される問題がある。そのような話題の散逸した結果を提示することは自動要約の性能を低下させてしまう原因となる。その場合、例え構造化して表示したとしても、自動要約の性能が低ければ、構造化の精度も低くなってしまう。そのため、「要約してから構造化を行う」手法を実施する前に、発話テキストに対して話題に応じた適切なブロック化を行い、各ブロックにおいて要約を行った後に、構造化を行うことで、テキストを高精度に自動要約できる。
【0044】
(2)構造化ステップでは、ブロック化ステップによってブロック化されたテキストの単位で構造化を行う。そのため、話題単位で区切られたブロックごとに構造化されるので内容の把握が容易となる。
【0045】
(変形例1)
上述した第1の実施の形態では、要約部103-1は、ブロック単位で処理した。しかし、構造化部103-2は必ずしもブロック単位で処理しなくてもよい。たとえば、複数のブロックを1つのまとまりとして構造化を行ってもよい。
【0046】
―第2の実施の形態―
図7を参照して、テキスト要約システムの第2の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、高度な抽象型要約が行われる点で、第1の実施の形態と異なる。
【0047】
(システム構成)
図7は、第2の実施の形態におけるテキスト要約システム200のシステム構成図である。テキスト要約システム200は、入力部101、ブロック化部102、ブロック単位処理部103、抽象型要約部201、言語モデル201-1、および事前学習用テキスト201-2を含む。本実施の形態では、第1の実施の形態で示した要約部103-1を、言語モデル201-1を用いた抽象型要約へと変更することで、より流暢で精度の高い要約を行うことができる。すなわち第1の実施の形態における要約部103-1は、抽象型要約と抽出型要約の両方が含まれたが、本実施の形態では第1の実施の形態における抽象型要約よりも高精度な抽象型要約に限定されている。
【0048】
抽象型要約部201は、ブロック化部102からブロック化されたテキストを受け付け、それぞれのブロック内に含まれるテキストに対して言語モデル201-1を用いた抽象型要約を実施する。なお、精度の高い抽象型要約を実施するためには言語モデル201-1を事前学習用テキスト201-2を用いて訓練し、訓練された言語モデル201-1を抽象型要約の生成器として利用する。事前学習用テキスト201-2は言語モデル201-1の事前学習用テキストである。事前学習用テキスト201-2はWebページや本に含まれるテキストから獲得されてもよいし、会話履歴などの利用者に固有のデータであってもよい。
【0049】
言語モデル201-1には、BERTなどのTransformerエンコーダを用いた手法や、BARTなどのTransformerエンコーダとデコーダを組み合わせた手法が考えられるが、具体的な方法は限定しない。その場合、Transformerデコーダのみを用いた手法や、LSTMを用いた手法などが考えられる。さらに、抽象型要約と抽出型要約を組み合わせた手法であってもよい。
【0050】
上述した第2の実施の形態によれば、次の作用効果が得られる。
(3)要約ステップにおいて、言語モデル201-1を用いた抽象型要約を実施する。そのため、自動された流暢で高精度な要約が得られる。
【0051】
―第3の実施の形態―
図8~
図10を参照して、テキスト要約システムの第3の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、発話者を特定する点で、第1の実施の形態と異なる。
【0052】
(システム構成)
図8は、第3の実施の形態におけるテキスト要約システム300のシステム構成図である。テキスト要約システム300は、入力部101、発話者特定部301、発話者テーブル301-1、音声認識結果301-2、ブロック化部102、ブロック単位処理部103、要約部103-1、および構造化部103-2を含む。本実施の形態では、入力部101またはブロック化部102に対して発話者特定を行い、発話テキストの発声内容と各発話内容の主体となる人物を紐づける。発話者特定を行うことで、客観的視点から自動要約を実施することができる。
【0053】
発話者特定部301は、入力部101から出力されるテキスト、またはブロック化部102から出力されるブロック化されたテキストを受け付け、テキストに含まれる発話内容と、その発言者を紐づけて出力する。また、識別した発話者を発話者テーブル301-1へ格納する。発話者特定部301は、テキスト情報だけなく音声認識結果301-2も用いて動作する。
【0054】
音声認識結果301-2には発話テキストだけでなく、発話テキストと発話テキストの発話者を識別するための情報が格納されている。発話者を識別するための情報には様々な形式が考えられるが、例えば、音声波形や発話者の名前を含むテキストなどがある。また、発話者テーブル301-1はDBのような構造化された形式や、テキストなどの構造化されていない形式であっても構わない。さらに、発話者特定のための手段は、発話テキストと発話者を紐づける手段であれば何でもよい。このとき、例えば、ニューラルネットワークを用いた発話者の識別や、市販またはフリーの音声認識ソフトウェアを用いることが考えられる。
【0055】
発話者特定部301によって発話者の情報が追加されたテキストは、第1の実施の形態と同様にしてブロックごとに要約部103-1へと入力される。そして、要約部103-1の出力が構造化部103-2によって構造化され、要約結果904として出力される。出力された要約結果904は、第1の実施の形態や第2の実施の形態とは異なり、発話者の情報が要約に記載されることで、客観的な要約が行われる。
【0056】
図9は、発話者特定の一例を示す図である。
図9では、入力部101から受け付けた入力テキスト901の各発話内容に対して、発話者特定部301によって発話者が識別される。そして、識別された発話者の情報を入力テキスト901に付加し、ブロック化部102への入力となる中間テキスト301aを得る。また、識別された発話者の情報を発話者テーブル301bへと格納する。
図9では、「ボブ」、「アリス」および「マイク」の3人の発話者が識別されている。
【0057】
例えば、入力テキスト901の「発話: あーちょっと音量が音量があー聞きとれないな」および「発話:聞こえる はいい 聞こえるようになりました 」の2つの発話の発話者はボブであると識別されている。入力テキスト901の「発話:どうでしょ聞こえますか 」および「発話:今日の午後から えー 避難訓練がありますので 」、「発話:放送が聞こえたら 机の下に隠れる 隠れる 次 点呼を 点呼を行いますので えー 皆さんきちんと対応するように 」、「発話:そうですか 」および「発話:わかりましたが マイクも避難マニュアルを読んでおいてください」の5つの発話の発話者はアリスであると識別されている。入力テキスト901の「発話:ちょっといいですか 私はリモートですので今日は参加できません 」の発話者はマイクであると識別されている。
【0058】
さらに、中間テキスト301aに示されるように、入力テキスト901の各発話の先頭に発話者の名前が表示される形式でテキストを修正する。なお、中間テキスト301a以外にも、発話者の情報を付与するために様々な手段が考えられる。たとえば、発話者テーブル、DB、およびメタデータの少なくとも1つを含むファイルなどを用いることが考えられる。
【0059】
図10は、発話者特定後にブロック化および構造化を実施する一例を示す図である。
図9の中間テキスト301aにおいて、発話者が特定されたテキストをブロック化すると、
図10のテキスト301cのように、3つのブロックに分割される。なお、ブロック化は第1の実施の形態において説明したブロック化部102において実施される。
図10の要約化テキスト301dは、テキスト301cを要約部103-1を用いて要約した結果である。要約化テキスト301dは、
図4の要約化テキスト103aと異なり、アリス、ボブおよびマイクなどの発話者の情報が含まれているので、客観的な要約と言える。
【0060】
上述した第3の実施の形態によれば、次の作用効果が得られる。
(4)テキスト901は1以上の人物の発話である。テキスト要約システム300を実現するコンピュータ600が実行するテキスト要約方法は、発話者特定部301が実行する発話者特定ステップを含む。発話者特定ステップは、入力テキスト901、またはブロック化テキスト102aを処理対象として、発話者を推定する。要約部103-1が実行する要約ステップでは、発話者特定ステップにより推定された発話者の情報を用いて客観的な要約を生成する。具体的には要約部103-1は、
図10の下部に示すように発話者の情報が含まれた要約を生成できる。
【0061】
―第4の実施の形態―
図11を参照して、テキスト要約システムの第4の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、テキストを翻訳する点で、第1の実施の形態と異なる。
【0062】
図11は、第4の実施の形態におけるテキスト要約システム400のシステム構成図である。テキスト要約システム400は、入力部101、ブロック化部102、順方向機械翻訳部401、ブロック単位処理部103、要約部103-1、構造化部103-2、および逆方向機械翻訳部402を含む。
【0063】
テキスト要約システム400に入力されるテキストの言語と、テキスト要約システム400の出力を利用するユーザの母国語が異なる場合が想定される。この場合には例えば、入力テキストは英語で、出力となる要約結果を日本語にして利用者に提示することが考えられる。また、文分類や論述構造解析、またはルールベースによるブロック化、要約、または構造化に用いるソフトウェアまたはプログラムは、言語の制約がある、たとえば英語しか扱えない制約を有することがある。したがって、例えば、入力テキストが日本語であり、ブロック化部102、要約部103-1、および構造化部103-2で用いるソフトウェアが英語のみをサポートする場合には、自動要約が実現できない。本実施の形態では、第1の実施の形態で示したテキスト要約システムの入出力を多言語に対応させることができる。様々な言語において精度の高い要約を行うことができる。
【0064】
順方向機械翻訳部401は、入力部101から出力されるテキストまたはブロック化部102から出力されるブロック化されたテキストを受け付け、テキストを特定の言語へと翻訳する。例えば、順方向機械翻訳部401は、日本語の入力テキストを受け付け、英語のテキストへと翻訳する。なお、順方向機械翻訳部401が扱う言語は、日本語から英語の対(日英対)でなく、任意の言語対であって構わない。さらに、機械翻訳に用いられる手段はどのような方法であっても構わない。例えば機械翻訳には、ニューラル翻訳モデル、オープンソースソフトウェア、および機械翻訳のWebサービスなどを用いることができる。
【0065】
逆方向機械翻訳部402は、要約部103-1または構造化部103-2から出力されるテキストを受け付け、テキストを特定の言語へと翻訳する。例えば、逆方向機械翻訳部402は、英語のテキストを受け付け、日本語のテキストへと翻訳する。なお、逆方向機械翻訳部402が扱う言語は、英語から日本語への対(英日対)でなく、任意の言語対であって構わない。さらに、順方向機械翻訳部401と同様に、機械翻訳に用いられる手段はどのような方法であっても構わない。
【0066】
本実施の形態では、順方向機械翻訳部401で対象とする言語対と、逆方向機械翻訳部402で対象とする言語対は対称性を前提として説明する。例えば、順方向機械翻訳部401において日英翻訳を、逆方向機械翻訳部402において英日翻訳を実施する場合には、日本語と英語が入力と出力で対称性を満たす。このとき、入力テキストと利用者に提示される要約結果は日本語で、実際の自動要約を行うブロック化部102、要約部103-1、および/または構造化部103-2は、英語で実施される。したがって、ブロック化部102、要約部103-1において利用可能なソフトウェアが対象とする言語が英語に限られていても、日本語のテキストの自動要約を実現することができる。
【0067】
一方で、順方向機械翻訳部401および逆方向機械翻訳部402は、機能のON/OFFを任意に切り替えることができる。例えば、順方向機械翻訳部401の機能をOFFとし、英語の入力テキストを受け付け、逆方向機械翻訳部402において英日翻訳を実施することで、英文テキストを日本語によって要約された結果を利用者に提示することができる。
【0068】
上述した第4の実施の形態によれば、次の作用効果が得られる。
(5)テキスト要約システム400が実行するテキスト要約方法は、テキストまたはブロック化テキストに対して翻訳を施し、要約ステップにテキストとは異なる言語に翻訳されたテキストを入力する順方向翻訳ステップ、および要約ステップまたは構造化ステップの出力に対して翻訳を施す逆方向翻訳ステップのうち一方を含む。そのため、入力テキスト901とは異なる言語で要約結果902を出力できる。また、各処理部が対応可能な言語にあわせて、翻訳のタイミングをブロック化部102の処理前、要約部103-1の処理前、および構造化部103-2の処理前の任意に選択できる。
【0069】
(6)テキスト要約システム400が実行するテキスト要約方法は、テキストまたはブロック化テキストに対して翻訳を施し、要約ステップにテキストとは異なる言語に翻訳されたテキストを入力する順方向翻訳ステップと、要約ステップまたは構造化ステップの出力に対して翻訳を施す逆方向翻訳ステップと、を含む。そのため、入力テキスト901と要約結果902が同一の場合でも、ブロック化部102、要約部103-1、および構造化部103-2が対応可能な言語と、入力テキスト901および要約結果902の言語の差異を吸収できる。
【0070】
(ハードウェア構成)
図12は、これまで説明した第1~第4の実施の形態におけるテキスト要約システム100、200、300および400を実現するコンピュータ600のハードウェア構成図である。コンピュータ600は、入力デバイス601、出力デバイス602、通信インタフェース603、記憶デバイス604、プロセッサ605、およびバス606を備える。入力デバイス601、出力デバイス602、通信インタフェース603、記憶デバイス604、プロセッサ605、およびバス606は、バス606によって互いに接続され、通信する。
【0071】
入力デバイス601は、利用者がテキスト要約システム100、200、300および400に処理対象のテキストや命令を入力する装置である。入力デバイス601からの入力は、記憶デバイス604に格納されてもよい。入力デバイス601には、例えば、キーボード、タッチパネル、マウス、マイク、カメラ、およびスキャナがある。
【0072】
出力デバイス602は、テキスト要約システム100、200、300および400が出力する要約結果を利用者に提示する。出力デバイス602には、例えば、ディスプレイ、プリンタ、またはスピーカーなどがある。出力デバイスがディスプレイまたはプリンタの場合、例えば、テキスト要約システム100が出力する要約結果902を表示することができる。また、出力デバイス602は、要約結果902をスピーカーを通して音声読み上げすることもできる。出力デバイス602がディスプレイの場合は、例えば、
図3に示したブロック化パラメータ入力画面102bや、
図6に示した構造化パラメータ入力画面103bを表示することができる。
【0073】
通信インタフェース603は、ネットワークと接続され、コンピュータ600の動作に必要な様々なデータの送受信を行う。通信インタフェース603を介してテキスト要約システム200に情報が入出力される場合には、テキスト要約システム200入力デバイス601および出力デバイス602を備えなくてもよい。また、テキスト要約システム100、200、300および400はネットワークを介して任意の端末からデータを送受信できる。
【0074】
プロセッサ605は、コンピュータ600を任意の命令セットに従って演算し、プログラムを実行する。プロセッサ605は、また、単一または複数の演算装置、および複数の処理装置を含むことができる。プロセッサ605は、任意の命令セットに従って動作する演算装置であればどのようなデバイスでも構わない。このとき、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Units)を用いたデバイスが考えられる。他にも、例えば、マイクロプロセッサ、デジタル信号プロセッサ、マイクロ計算機、マイクロコントローラ、ステートマシン、ロジック回路、チップオンシステム、または制御指示など、によって信号操作を行う任意の装置として実装されていても構わない。
【0075】
記憶デバイス604は、プロセッサ605の作業領域となる。記憶デバイス604は、テキスト要約システム100、200、300および400を実行するプログラム、およびデータを記録する。具体的に記憶デバイス604は、不揮発性装置、または揮発性装置を備える記憶媒体である。記憶デバイス604は、記憶媒体であればどのような媒体であってもよい。さらに、記憶デバイス604は、コンピュータ600のバスによって接続されていても、通信インタフェースを通して接続されていてもよい。記憶デバイス604は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)、またはSSD(Solid State Drive)などを用いることができる。
【0076】
具体的には、例えば、
図1などに示したテキスト要約システム100、200、300および400の各処理部は、記憶デバイス604に記憶された一時的または非一時的なプログラムをプロセッサ605が解釈し、解釈することで得られる命令セットの演算を実行することによって実現される。また、
図1などに示したテキスト要約システム100、200、300および400の各処理部において用いられる、入力テキスト901、言語モデル201-1、事前学習用テキスト201-2、発話者テーブル301-1、音声認識結果301-2、要約結果902、および要約結果904の各データは、例えば、記憶デバイス604に格納される。
【0077】
テキスト要約システム100、200、300および400において、例えば、プロセッサ605により実行されるプログラムまたは命令セットは、OS(Operating System)やあらゆる応用ソフトウェアを含むことができる。また、テキスト要約システム100、200、300および400において、入力プログラム、ブロック化プログラム、要約プログラム、構造化プログラム、抽象型要約プログラム、発話者特定プログラム、順方向機械翻訳プログラム、および逆方向機械翻訳プログラムなどの各プログラムを含むことができる。
【0078】
例えば、
図1などに示した実施例のテキスト要約システム、200、300および400において、プロセッサ605は、これらプログラムを実行し、動作し、入力部101、ブロック化部102、要約部103-1、および構造化部103-2として機能できる。他にも、例えば、
図7、
図8、および
図11に示した実施例のテキスト要約システム200、300および400において、プロセッサ605は、前述のプログラムを実行し、動作し、抽象型要約部201、発話者特定部301、順方向機械翻訳部401および逆方向機械翻訳部402として機能できる。
【0079】
図12において、OSを含むあらゆるソフトウェアおよびテキスト要約システムのプログラムは、記憶デバイス604の記憶領域に格納される。なお、各プログラムは、予め可搬型記録媒体に記録されていてもよい。その場合、媒体読み取り装置や通信インタフェースによって対象のプログラムを可搬型記録媒体から読み取る。または、通信媒体を介してOSやソフトウェアおよびプログラムを取得してもよい。
【0080】
コンピュータ600の実施形態には、様々な形式が考えられる。例えば、テキスト要約システムは、単一または複数のプロセッサを含み、単一または複数の記憶デバイスを含む1以上のコンピュータに実装することができる。すなわち
図12ではテキスト要約システム100が複数のコンピュータ600により構成されてもよい。複数のコンピュータからなるシステムに実装する場合は、テキスト要約システムの動作に必要な各データは、コンピュータ同士が相互または部分的に接続されたコンピュータネットワークを介して通信する。この場合、テキスト要約システムに含まれる複数の処理部の一部またはすべてが単一の計算機に実装され、他の一部またはすべてが前述のコンピュータ以外のコンピュータに実装されてもよい。
【0081】
上述した各実施の形態および変形例において、機能ブロックの構成は一例に過ぎない。別々の機能ブロックとして示したいくつかの機能構成を一体に構成してもよいし、1つの機能ブロック図で表した構成を2以上の機能に分割してもよい。また各機能ブロックが有する機能の一部を他の機能ブロックが備える構成としてもよい。
【0082】
上述した各実施の形態および変形例は、それぞれ組み合わせてもよい。上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
【符号の説明】
【0083】
100、200、300、400…テキスト要約システム
101…入力部
102…ブロック化部
103-1…要約部
103-2…構造化部
201-1…言語モデル
301…発話者特定部
401…順方向機械翻訳部
402…逆方向機械翻訳部