JP2022098219A - 学習プログラム、学習方法、および学習装置 - Google Patents

学習プログラム、学習方法、および学習装置 Download PDF

Info

Publication number
JP2022098219A
JP2022098219A JP2020211633A JP2020211633A JP2022098219A JP 2022098219 A JP2022098219 A JP 2022098219A JP 2020211633 A JP2020211633 A JP 2020211633A JP 2020211633 A JP2020211633 A JP 2020211633A JP 2022098219 A JP2022098219 A JP 2022098219A
Authority
JP
Japan
Prior art keywords
sentence
input
summary sentence
probability
learning device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2020211633A
Other languages
English (en)
Inventor
拓哉 牧野
Takuya Makino
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2020211633A priority Critical patent/JP2022098219A/ja
Priority to US17/500,965 priority patent/US11763069B2/en
Publication of JP2022098219A publication Critical patent/JP2022098219A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/211Selection of the most significant subset of features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/55Rule-based translation
    • G06F40/56Natural language generation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】要約文を精度よく生成可能なモデルを学習すること。【解決手段】学習装置は、要約文702の一部をマスクした雛型文703,704を生成する。学習装置は、テキストDB710を参照して、雛型文703,704のマスクされた部分に挿入するテキストを検索する。学習装置は、雛型文703,704のマスクされた部分に、検索したテキストを挿入し、検索結果705,706を生成する。学習装置は、要約モデル730により、入力記事701に応じて要約文702が生成される生成確率が、入力記事701に応じて検索結果705,706が生成される生成確率よりも高くなるよう、要約モデル730を学習する。【選択図】図7

Description

本発明は、学習プログラム、学習方法、および学習装置に関する。
従来、入力文と正解とする要約文とを含む訓練データを利用して、入力された入力文に対応する要約文を生成するモデルを学習することがある。
先行技術としては、例えば、用意された訓練データのうち、正解として不適切な要約文を含む訓練データを、含意関係認識モデルを用いて除去し、残った訓練データを利用して、入力された入力文に対応する要約文を生成するモデルを学習するものがある。
Matsumaru, Kazuki, Sho Takase, and Naoaki Okazaki. "Improving Truthfulness of Headline Generation." Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics (2020).
しかしながら、従来技術では、要約文を精度よく生成可能なモデルを学習することが難しい。例えば、含意関係認識モデルを用いたとしても、用意された訓練データのうち、正解として不適切な要約文を含む訓練データを除去しきれず、不適切な要約文を生成するモデルを学習してしまうことがある。
1つの側面では、本発明は、要約文を精度よく生成可能なモデルを学習することを目的とする。
1つの実施態様によれば、第1入力文と前記第1入力文を要約した第1要約文とを取得し、取得した前記第1要約文を部分的に変更した第2要約文を生成し、取得した前記第1入力文と、取得した前記第1要約文と、生成した前記第2要約文とに基づいて、入力文が入力されたことに応じて当該入力文に対応する要約文を生成するモデルを、前記第1入力文が入力されたことに応じて前記第1要約文が生成される第1確率が、前記第1入力文が入力されたことに応じて前記第2要約文が生成される第2確率よりも高くなるよう学習する学習プログラム、学習方法、および学習装置が提案される。
一態様によれば、要約文を精度よく生成可能なモデルを学習することが可能になる。
図1は、実施の形態にかかる学習方法の一実施例を示す説明図である。 図2は、情報処理システム200の一例を示す説明図である。 図3は、学習装置100のハードウェア構成例を示すブロック図である。 図4は、訓練データ管理テーブル400の記憶内容の一例を示す説明図である。 図5は、単語データ管理テーブル500の記憶内容の一例を示す説明図である。 図6は、学習装置100の機能的構成例を示すブロック図である。 図7は、学習装置100の動作の流れを示す説明図である。 図8は、要約モデル730の一例を示す説明図である。 図9は、要約モデル730のパラメータを更新する一例を示す説明図(その1)である。 図10は、要約モデル730のパラメータを更新する一例を示す説明図(その2)である。 図11は、要約モデル730を利用する具体例を示す説明図である。 図12は、学習処理手順の一例を示すフローチャートである。 図13は、推定処理手順の一例を示すフローチャートである。
以下に、図面を参照して、本発明にかかる学習プログラム、学習方法、および学習装置の実施の形態を詳細に説明する。
(実施の形態にかかる学習方法の一実施例)
図1は、実施の形態にかかる学習方法の一実施例を示す説明図である。学習装置100は、入力された入力文に対応する要約文を精度よく生成可能なモデルを学習するためのコンピュータである。要約文は、例えば、入力文の内容、論旨、または、要点などを纏めた文である。
従来では、要約文を精度よく生成可能なモデルを学習することは難しい。例えば、入力文と正解とする要約文とを含む訓練データを複数用意し、複数の訓練データを利用して、入力された入力文に対応する要約文を生成するモデルを学習する手法が考えられる。
この手法では、用意された訓練データのうち、正解として不適切な要約文を含む訓練データがあり、要約文を精度よく生成可能なモデルを学習することができない場合がある。
これに対し、例えば、二つのテキストの間の意味的な包含関係を認識する含意関係認識モデルを用いてノイズを含む訓練データを除去する方法が考えられる。具体的には、含意関係認識モデルを用いることで、用意された訓練データのうち、正解として不適切な要約文を含む訓練データを除去し、残った訓練データを利用して、入力された入力文に対応する要約文を生成するモデルを学習する手法が考えられる。ここで、正解として不適切な要約文は、入力文と要約文との含意関係に基づいて判断されることが考えられる。
この手法でも、要約文を精度よく生成可能なモデルを学習することは難しい。例えば、用意された訓練データのうち、正解として不適切な要約文を含む訓練データを除去しきれず、要約文を精度よく生成可能なモデルを学習することができない場合がある。また、例えば、除去されずに残った、正解として不適切な要約文を含む訓練データを、正解として適切な要約文を含む訓練データとして誤って扱うことになり、要約文を精度よく生成可能なモデルを学習することができない場合がある。
そこで、本実施の形態では、入力された入力文に対応する要約文を精度よく生成可能なモデルを学習することができる学習方法について説明する。
(1-1)学習装置100は、第1入力文101と第1入力文101を要約した第1要約文102とを取得する。学習装置100は、例えば、第1入力文101と第1入力文101を要約した第1要約文102とを、他のコンピュータから受信することにより取得する。学習装置100は、例えば、ユーザの操作入力に基づいて、第1入力文101と第1入力文101を要約した第1要約文102とを取得してもよい。
(1-2)学習装置100は、取得した第1要約文102を部分的に変更した(第1要約文102と部分的に類似する)第2要約文103を生成する。学習装置100は、例えば、取得した第1要約文102のうち所定の種類の単語を検出し、検出した単語を、同一の種類の別の単語に置換することにより、第2要約文103を生成する。あるいは、学習装置100は、取得した第1要約文を部分的に隠した文を検索条件として、第1要約文と部分的に一致する要約文を他の訓練データから検索することにより、第2要約文を生成する。これによれば、学習装置100は、正解として不適切な第2要約文103を生成することができる。このため、学習装置100は、第1要約文102とは異なる観点から、入力文が入力されたことに応じて当該入力文に対応する要約文を生成するモデル110を評価可能にすることができる。
(1-3)学習装置100は、取得した第1入力文101と、取得した第1要約文102と、生成した第2要約文103とに基づいて、入力文が入力されたことに応じて当該入力文に対応する要約文を生成するモデル110を学習する。学習は、例えば、損失関数を利用して、誤差逆伝搬によって実現される。学習装置100は、例えば、第1入力文101が入力されたことに応じて第1要約文102が生成される第1確率αが、第1入力文101が入力されたことに応じて第2要約文103が生成される第2確率βよりも高くなるよう、モデル110を学習する。
(1-4)学習装置100は、学習したモデル110を利用して、対象の入力文に対応する要約文を生成する。学習装置100は、学習したモデル110を出力してもよい。学習装置100は、例えば、学習したモデル110を、他のコンピュータに送信する。
これにより、学習装置100は、入力文に対応する要約文を精度よく生成可能なモデル110を学習することができる。また、学習装置100は、学習したモデル110を利用して、対象の入力文に対応する要約文を精度よく生成することができる。また、学習装置100は、学習したモデル110を、他のコンピュータが利用可能にすることができる。
(情報処理システム200の一例)
次に、図2を用いて、図1に示した学習装置100を適用した、情報処理システム200の一例について説明する。
図2は、情報処理システム200の一例を示す説明図である。図2において、情報処理システム200は、学習装置100と、クライアント装置201とを含む。
情報処理システム200において、学習装置100とクライアント装置201とは、有線または無線のネットワーク210を介して接続される。ネットワーク210は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどである。
学習装置100は、システム管理者によって用いられるコンピュータである。学習装置100は、入力文と当該入力文を要約した要約文とを含む訓練データを記憶する。訓練データは、例えば、システム管理者によって用意される。訓練データは、例えば、図4に後述する訓練データ管理テーブル400を用いて記憶される。
学習装置100は、訓練データに含まれる要約文を部分的に変更することにより、不適切な要約文を生成する。あるいは、学習装置100は、訓練データに含まれる要約文と部分的に一致する要約文を他の訓練データから検索することにより、不適切な要約文を生成する。不適切な要約文は、例えば、図4に後述する訓練データ管理テーブル400を用いて記憶される。学習装置100は、訓練データと、生成した不適切な要約文とに基づいて、入力文が入力されたことに応じて当該入力文に対応する要約文を生成するモデルを学習する。
学習装置100は、要約文を生成する対象の入力文を取得する。学習装置100は、例えば、対象の入力文を、クライアント装置201から受信することにより取得する。学習装置100は、学習したモデルを利用して、対象の入力文に対応する要約文を生成する。学習装置100は、対象の入力文に対応する要約文を出力する。学習装置100は、例えば、対象の入力文に対応する要約文を、クライアント装置201に送信する。学習装置100は、例えば、サーバ、または、PC(Personal Computer)などである。
クライアント装置201は、システム利用者によって用いられるコンピュータである。クライアント装置201は、要約文を生成する対象の入力文を、学習装置100に送信する。クライアント装置201は、例えば、システム利用者の操作入力に基づき、要約文を生成する対象の入力文を取得し、学習装置100に送信する。クライアント装置201は、対象の入力文に対応する要約文を、学習装置100から受信する。クライアント装置201は、対象の入力文に対応する要約文を、システム利用者が参照可能に出力する。クライアント装置201は、例えば、PC、タブレット端末、または、スマートフォンなどである。
ここでは、学習装置100が、クライアント装置201とは異なる装置である場合について説明したが、これに限らない。例えば、学習装置100が、クライアント装置201としての機能を有する場合があってもよい。この場合、情報処理システム200は、クライアント装置201を含まなくてもよい。
(情報処理システム200の利用例1)
情報処理システム200は、例えば、記事編集支援システムを実現するために用いられる。ここで、システム利用者は、例えば、記事を要約した要約文を生成しようと考えたとする。システム利用者は、具体的には、記事を要約した要約文を生成し、記事の見出しとして採用しようと考えたとする。
学習装置100は、入力記事と入力記事を要約した要約文とを含む訓練データを記憶する。学習装置100は、入力記事を要約した要約文を部分的に変更することにより、不適切な要約文を生成する。学習装置100は、訓練データと、生成した不適切な要約文とに基づいて、入力記事が入力されたことに応じて当該入力記事に対応する要約文を生成するモデルを学習する。
クライアント装置201は、要約文を生成する対象の入力記事を、学習装置100に送信する。学習装置100は、学習したモデルを利用して、受信した対象の入力記事に対応する要約文を生成する。学習装置100は、生成した要約文を、クライアント装置201に送信する。クライアント装置201は、対象の入力記事に対応する要約文を受信し、システム利用者が参照可能に出力する。
これにより、情報処理システム200は、入力記事を要約した要約文を生成する際にシステム利用者にかかる作業負担の低減化を図ることができる。また、情報処理システム200は、入力記事の内容、論旨、または、要点を適切に纏めた要約文を生成し、システム利用者が参照可能にすることができる。このため、情報処理システム200は、システム利用者が、入力記事の見出しとして、不適切な要約文を採用してしまうことを防止することができる。
システム利用者は、例えば、入力記事に、生成された要約文を対応付けて、紙面、または、ウェブサイトで公開することができる。この際、紙面、または、ウェブサイトの閲覧者は、例えば、不適切な要約文を閲覧することなく、適切な要約文を閲覧することができ、記事の内容、論旨、または、要点を正しく把握し易くすることができる。
(情報処理システム200の利用例2)
情報処理システム200は、例えば、論文検索支援システムを実現するために用いられる。ここで、システム利用者は、例えば、論文を要約した要約文を生成しようと考えたとする。システム利用者は、具体的には、論文を要約した要約文を生成し、論文の見出しとして採用しようと考えたとする。
学習装置100は、入力論文と入力論文を要約した要約文とを含む訓練データを記憶する。学習装置100は、入力論文を要約した要約文を部分的に変更することにより、不適切な要約文を生成する。学習装置100は、訓練データと、生成した不適切な要約文とに基づいて、入力論文が入力されたことに応じて当該入力論文に対応する要約文を生成するモデルを学習する。
クライアント装置201は、要約文を生成する対象の入力論文を、学習装置100に送信する。学習装置100は、学習したモデルを利用して、受信した対象の入力論文に対応する要約文を生成する。学習装置100は、生成した要約文を、クライアント装置201に送信する。クライアント装置201は、対象の入力論文に対応する要約文を受信し、システム利用者が参照可能に出力する。
これにより、情報処理システム200は、入力論文を要約した要約文を生成する際にシステム利用者にかかる作業負担の低減化を図ることができる。また、情報処理システム200は、入力論文の内容、論旨、または、要点を適切に纏めた要約文を生成し、システム利用者が参照可能にすることができる。このため、情報処理システム200は、システム利用者が、入力論文の見出しとして、不適切な要約文を採用してしまうことを防止することができる。
システム利用者は、例えば、入力論文に、生成された要約文を対応付けて、論文を検索可能なウェブサイトを実現することができる。この際、ウェブサイトの閲覧者は、例えば、不適切な要約文を閲覧することなく、適切な要約文を閲覧することができ、論文の内容、論旨、または、要点を正しく把握し易くすることができる。
ここでは、情報処理システム200が、記事編集支援システム、または、論文検索支援システムを実現するために用いられる場合について説明したが、これに限らない。例えば、情報処理システム200が、記事編集支援システム、または、論文検索支援システムを実現する以外の別の用途のために用いられる場合があってもよい。
(学習装置100のハードウェア構成例)
次に、図3を用いて、学習装置100のハードウェア構成例について説明する。
図3は、学習装置100のハードウェア構成例を示すブロック図である。図3において、学習装置100は、CPU(Central Processing Unit)301と、メモリ302と、ネットワークI/F(Interface)303と、記録媒体I/F304と、記録媒体305とを有する。また、各構成部は、バス300によってそれぞれ接続される。
ここで、CPU301は、学習装置100の全体の制御を司る。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることにより、コーディングされている処理をCPU301に実行させる。
ネットワークI/F303は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータに接続される。そして、ネットワークI/F303は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。ネットワークI/F303は、例えば、モデムやLANアダプタなどである。
記録媒体I/F304は、CPU301の制御に従って記録媒体305に対するデータのリード/ライトを制御する。記録媒体I/F304は、例えば、ディスクドライブ、SSD(Solid State Drive)、USB(Universal Serial Bus)ポートなどである。記録媒体305は、記録媒体I/F304の制御で書き込まれたデータを記憶する不揮発メモリである。記録媒体305は、例えば、ディスク、半導体メモリ、USBメモリなどである。記録媒体305は、学習装置100から着脱可能であってもよい。
学習装置100は、上述した構成部の他、例えば、キーボード、マウス、ディスプレイ、プリンタ、スキャナ、マイク、スピーカーなどを有してもよい。また、学習装置100は、記録媒体I/F304や記録媒体305を複数有していてもよい。また、学習装置100は、記録媒体I/F304や記録媒体305を有していなくてもよい。
(訓練データ管理テーブル400の記憶内容)
次に、図4を用いて、訓練データ管理テーブル400の記憶内容の一例について説明する。訓練データ管理テーブル400は、例えば、図3に示した学習装置100のメモリ302や記録媒体305などの記憶領域により実現される。
図4は、訓練データ管理テーブル400の記憶内容の一例を示す説明図である。図4に示すように、訓練データ管理テーブル400は、入力データと、正解データと、不適切データとのフィールドを有する。訓練データ管理テーブル400は、訓練データごとに各フィールドに情報を設定することにより、訓練データ管理情報がレコード400-aとして記憶される。aは、任意の整数である。
入力データのフィールドには、入力文を特定可能にする入力データが設定される。入力文は、例えば、入力記事である。入力データは、例えば、入力文である。入力データは、例えば、入力文の格納場所を示してもよい。正解データのフィールドには、正解として扱う、入力文を要約した要約文を特定可能にする正解データが設定される。正解データは、例えば、要約文である。正解データは、例えば、要約文の格納場所を示してもよい。入力データと、正解データとの組み合わせが、訓練データである。不適切データのフィールドには、要約文を部分的に加工した不適切な要約文を特定可能にする不適切データが設定される。不適切データは、例えば、不適切な要約文である。不適切データは、例えば、不適切な要約文の格納場所を示してもよい。
(単語データ管理テーブル500の記憶内容)
次に、図5を用いて、単語データ管理テーブル500の記憶内容の一例について説明する。単語データ管理テーブル500は、例えば、図3に示した学習装置100のメモリ302や記録媒体305などの記憶領域により実現される。
図5は、単語データ管理テーブル500の記憶内容の一例を示す説明図である。図5に示すように、単語データ管理テーブル500は、属性と、単語データとのフィールドを有する。単語データ管理テーブル500は、単語データごとに各フィールドに情報を設定することにより、単語データ管理情報がレコード500-bとして記憶される。bは、任意の整数である。
属性のフィールドには、固有表現となる単語の属性が設定される。属性は、例えば、組織名、人名、または、数値表現などである。単語データのフィールドには、上記単語を特定可能にする単語データが設定される。単語データは、例えば、上記単語である。単語データは、例えば、上記数値表現を特定可能にする単位であってもよい。
(クライアント装置201のハードウェア構成例)
クライアント装置201のハードウェア構成例は、例えば、図3に示した学習装置100のハードウェア構成例と同様であるため、説明を省略する。
(学習装置100の機能的構成例)
次に、図6を用いて、学習装置100の機能的構成例について説明する。
図6は、学習装置100の機能的構成例を示すブロック図である。学習装置100は、記憶部600と、取得部601と、生成部602と、学習部603と、推定部604と、出力部605とを含む。
記憶部600は、例えば、図3に示したメモリ302や記録媒体305などの記憶領域によって実現される。以下では、記憶部600が、学習装置100に含まれる場合について説明するが、これに限らない。例えば、記憶部600が、学習装置100とは異なる装置に含まれ、記憶部600の記憶内容が学習装置100から参照可能である場合があってもよい。
取得部601~出力部605は、制御部の一例として機能する。取得部601~出力部605は、具体的には、例えば、図3に示したメモリ302や記録媒体305などの記憶領域に記憶されたプログラムをCPU301に実行させることにより、または、ネットワークI/F303により、その機能を実現する。各機能部の処理結果は、例えば、図3に示したメモリ302や記録媒体305などの記憶領域に記憶される。
記憶部600は、各機能部の処理において参照され、または更新される各種情報を記憶する。記憶部600は、入力文と当該入力文を要約した要約文とを記憶する。記憶部600は、例えば、入力文と当該入力文を要約した要約文とを、訓練データ管理テーブル400を用いて記憶する。入力文は、例えば、入力記事である。入力文と当該入力文を要約した要約文とは、例えば、取得部601によって取得される。入力文と当該入力文を要約した要約文とは、例えば、予め記憶部600によって記憶されていてもよい。
記憶部600は、入力文を要約した要約文とは異なる別の要約文を記憶する。別の要約文は、入力文を要約した要約文に基づき生成される。記憶部600は、入力文を要約した要約文を部分的に変更することで、または要約文と部分的に一致する他の要約文を検索することで得られた、別の要約文を記憶する。別の要約文は、例えば、入力文に対して不適切な要約文である。記憶部600は、入力文を要約した要約文を部分的に変更することにより得られた別の要約文を、訓練データ管理テーブル400を用いて記憶する。記憶部600は、入力文を要約した要約文を部分的にマスクし、マスク後の要約文と類似する他の要約文を検索することにより得られた別の要約文を、訓練データ管理テーブル400を用いて記憶する。別の要約文は、例えば、生成部602によって生成される。別の要約文は、例えば、予め記憶部600によって記憶されていてもよい。
記憶部600は、固有表現の単語が複数登録されたリストを記憶する。リストは、例えば、入力文を要約した要約文を部分的に変更する際に用いられる。単語は、例えば、組織名、または、人名である。リストは、例えば、単語データ管理テーブル500によって実現される。記憶部600は、数値表現を特定可能にする情報を記憶していてもよい。記憶部600は、例えば、数値表現に関し、所定の種類の数値に付与される単位を記憶する。
記憶部600は、入力文が入力されたことに応じて当該入力文に対応する要約文を生成するモデルを記憶する。モデルは、入力文に対応する要約文に、複数の単語それぞれが出現する確率を算出可能であって、算出した当該確率に基づいて、当該要約文を生成可能である。モデルは、具体的には、ニューラルネットワークである。モデルは、例えば、学習部603によって生成される。
取得部601は、各機能部の処理に用いられる各種情報を取得する。取得部601は、取得した各種情報を、記憶部600に記憶し、または、各機能部に出力する。また、取得部601は、記憶部600に記憶しておいた各種情報を、各機能部に出力してもよい。取得部601は、例えば、システム管理者の操作入力に基づき、各種情報を取得する。取得部601は、例えば、学習装置100とは異なる装置から、各種情報を受信してもよい。
取得部601は、入力文と当該入力文を要約した要約文とを取得する。取得部601は、例えば、第1入力文と第1入力文を要約した第1要約文とを取得する。第1要約文は、例えば、正解として適切と考えられる。取得部601は、具体的には、システム管理者の操作入力に基づき、第1入力文と第1入力文を要約した第1要約文とを取得する。取得部601は、具体的には、着脱可能な記録媒体305から、第1入力文と第1入力文を要約した第1要約文とを読み出すことにより取得してもよい。取得部601は、具体的には、第1入力文と第1入力文を要約した第1要約文とを、他のコンピュータから受信することにより取得してもよい。他のコンピュータは、例えば、クライアント装置201である。
取得部601は、対象の入力文に対応する要約文を生成することの要求を取得する。要求は、例えば、対象の入力文を含む。取得部601は、例えば、対象の入力文に対応する要約文を生成することの要求を、他のコンピュータから受信することにより取得する。他のコンピュータは、例えば、クライアント装置201である。取得部601は、例えば、システム管理者の操作入力に基づき、対象の入力文に対応する要約文を生成することの要求を取得してもよい。
取得部601は、いずれかの機能部の処理を開始する開始トリガーを受け付けてもよい。開始トリガーは、例えば、システム管理者による所定の操作入力があったことである。開始トリガーは、例えば、他のコンピュータから、所定の情報を受信したことであってもよい。開始トリガーは、例えば、いずれかの機能部が所定の情報を出力したことであってもよい。
取得部601は、例えば、入力文と当該入力文を要約した要約文とを取得したことを、生成部602と、学習部603との処理を開始する開始トリガーとして受け付けてもよい。取得部601は、例えば、システム管理者による所定の操作入力があったことを、生成部602と、学習部603との処理を開始する開始トリガーとして受け付けてもよい。取得部601は、例えば、対象の入力文に対応する要約文を生成することの要求を取得したことを、推定部604の処理を開始する開始トリガーとして受け付けてもよい。
生成部602は、取得した第1要約文と類似する第2要約文を生成する。第2要約文は、例えば、正解として不適切と考えられる要約文である。生成部602は、取得した第1要約文と部分的に一致する第2要約文を生成する。生成部602は、例えば、第1要約文に含まれる単語をランダムに選択し、選択した当該単語を、当該単語以外の別の単語に変更することにより第2要約文を生成する。あるいは、生成部602は、取得した第1要約文を部分的に隠した文を検索条件として、第1要約文と部分的に一致する要約文を、他の訓練データから検索することにより、第2要約文を生成する。これにより、生成部602は、負例となる不適切な要約文を、モデルの学習に利用可能にすることができる。
生成部602は、例えば、正解の要約文に対して、固有表現抽出器によって取得された人名、固有名詞などを隠した文章を検索条件として、第1要約文と部分的に単語が一致する要約文を検索することによって第2要約文を生成する。これにより、生成部602は、負例となる不適切な要約文を、モデルの学習に利用可能にすることができる。また、生成部602は、第1要約文に含まれる特定の単語を変更することにより、閲覧者の観点から第1入力文に対して不適切と考えられ易い第2要約文を、負例の要約文として生成することができる。このため、生成部602は、学習されるモデルにより、不適切な要約文が生成されてしまう確率の低減化を図ることができる。
生成部602は、例えば、正解の要約文に対して、固有表現抽出器によって取得された数値などを隠し、部分的に類似する要約文を他の訓練データから検索することによって第2要約文を生成する。これにより、生成部602は、負例となる不適切な要約文を、モデルの学習に利用可能にすることができる。また、生成部602は、数値を変更することにより、閲覧者の観点から第1入力文に対して不適切と考えられ易い第2要約文を、負例とすることができる。このため、生成部602は、学習されるモデルにより、不適切な要約文が生成されてしまう確率の低減化を図ることができる。
学習部603は、取得した第1入力文と、取得した第1要約文と、生成した第2要約文とに基づいて、モデルを学習する。学習部603は、例えば、第1入力文が入力されたことに応じて第1要約文が生成される第1確率が、第1入力文が入力されたことに応じて第2要約文が生成される第2確率よりも高くなるよう、モデルを学習する。
学習部603は、具体的には、モデルにより、第1入力文に対応する要約文に、複数の単語それぞれが出現する確率を算出し、算出した確率に基づいて、第1確率と、第2確率とを算出する。そして、学習部603は、具体的には、算出した第1確率が、算出した第2確率よりも高ければ、第1入力文と、第1要約文と、第2要約文とに基づいて、モデルを更新することにより、モデルを学習する。
学習部603は、より具体的には、算出した第1確率が、算出した第2確率よりも高ければ、損失関数を利用して、第1入力文と、第1要約文と、第2要約文とに基づいて、モデルのパラメータそれぞれを変更する方向を決定する。そして、学習部603は、より具体的には、決定した方向に従って、モデルのパラメータを更新することにより、モデルを学習する。これにより、学習部603は、入力文に対応する要約文を精度よく生成可能なモデルを学習することができる。
推定部604は、学習したモデルを利用して、対象の入力文に対応する要約文を生成する。推定部604は、学習したモデルに対象の入力文を入力することにより、対象の入力文に対応する要約文を生成する。これにより、推定部604は、入力文に対応する要約文を精度よく生成することができる。
出力部605は、少なくともいずれかの機能部の処理結果を出力する。出力形式は、例えば、ディスプレイへの表示、プリンタへの印刷出力、ネットワークI/F303による外部装置への送信、または、メモリ302や記録媒体305などの記憶領域への記憶である。これにより、出力部605は、少なくともいずれかの機能部の処理結果をシステム管理者に通知可能にし、学習装置100の利便性の向上を図ることができる。
出力部605は、例えば、学習したモデルを出力する。出力部605は、具体的には、学習したモデルを、他のコンピュータに送信する。これにより、出力部605は、入力文に対応する要約文を精度よく生成可能なモデルを、他のコンピュータで利用可能にすることができる。このため、出力部605は、他のコンピュータで、入力文に対応する要約文を精度よく生成可能にすることができる。
出力部605は、例えば、生成した対象の入力文に対応する要約文を出力する。出力部605は、具体的には、対象の入力文に対応する要約文を、要求の送信元となる他のコンピュータに送信する。他のコンピュータは、例えば、クライアント装置201である。出力部605は、具体的には、対象の入力文に対応する要約文を表示してもよい。これにより、出力部605は、対象の入力文に対応する適切な要約文を、システム利用者が参照可能にすることができる。
ここでは、生成部602が、第2要約文を生成する場合について説明したが、これに限らない。例えば、他のコンピュータが、第2要約文を生成する場合があってもよい。この場合、取得部601が、第2要約文を、他のコンピュータから取得する。また、この場合、学習装置100は、生成部602を含まなくてもよい。
(学習装置100の動作の流れ)
次に、図7を用いて、学習装置100の動作の流れについて説明する。
図7は、学習装置100の動作の流れを示す説明図である。図7において、(7-1)学習装置100は、要約学習データ700を取得する。要約学習データ700は、入力記事701と、入力記事701を要約した要約文702とを含む。
(7-2)学習装置100は、要約文702の一部をマスクした雛型文703,704を生成する。学習装置100は、テキストDB(DataBase)710を参照して、雛型文703,704のマスクされた部分に挿入するテキストを検索する。学習装置100は、雛型文703,704のマスクされた部分に、検索したテキストを挿入し、検索結果705,706を生成する。検索結果705,706は、入力記事701に対して不適切な要約文に対応する。
学習装置100は、要約学習データ700に、検索結果705,706を付与し、検索結果付き要約学習データ720を生成する。これにより、学習装置100は、負例となる不適切な要約文を得ることができる。このため、学習装置100は、要約文702に基づく観点以外に、検索結果705,706に基づく観点を考慮して、入力文に対応する要約文を生成可能な要約モデル730を学習可能にすることができる。
(7-3)学習装置100は、要約モデル730により、入力記事701に応じて要約文702が生成される生成確率が、入力記事701に応じて検索結果705,706が生成される生成確率よりも高くなるよう、要約モデル730を学習する。要約モデル730の具体例については、例えば、図8を用いて後述する。
学習装置100は、例えば、要約モデル730により、入力記事701に応じて要約文702が生成される生成確率を算出する。要約文702が生成される生成確率を算出する具体例については、例えば、図9を用いて後述する。また、学習装置100は、例えば、要約モデル730により、入力記事701に応じて検索結果705,706が生成される生成確率を算出する。検索結果705,706が生成される生成確率を算出する具体例については、例えば、図10を用いて後述する。
学習装置100は、例えば、要約文702が生成される生成確率が、検索結果705が生成される生成確率よりも高いか否かを判定する。ここで、学習装置100は、例えば、要約文702が生成される生成確率が、検索結果705が生成される生成確率以下であれば、要約モデル730のパラメータを更新しない。一方で、学習装置100は、例えば、要約文702が生成される生成確率が、検索結果705が生成される生成確率よりも高ければ、要約モデル730のパラメータを更新する。
学習装置100は、具体的には、損失関数を利用して、入力記事701と、要約文702と、検索結果705とに基づいて、要約モデル730のパラメータを更新する。損失関数は、例えば、入力記事701に応じて要約モデル730によって生成される要約文が、正解とする要約文702と類似するほど、相対的に小さい値を示す。損失関数は、例えば、入力記事701に応じて要約モデル730によって生成される要約文が、不正解とする検索結果705と乖離するほど、相対的に小さい値を示す。学習装置100は、より具体的には、損失関数を最小化するよう、要約モデル730のパラメータを変更する方向を特定する。そして、学習装置100は、より具体的には、特定した方向に従って、要約モデル730のパラメータを更新する。
学習装置100は、例えば、要約文702が生成される生成確率が、検索結果706が生成される生成確率よりも高いか否かを判定する。ここで、学習装置100は、例えば、要約文702が生成される生成確率が、検索結果706が生成される生成確率以下であれば、要約モデル730のパラメータを更新しない。一方で、学習装置100は、例えば、要約文702が生成される生成確率が、検索結果706が生成される生成確率よりも高ければ、入力記事701と、要約文702と、検索結果706とに基づいて、要約モデル730のパラメータを更新する。
学習装置100は、具体的には、損失関数を利用して、入力記事701と、要約文702と、検索結果706とに基づいて、要約モデル730のパラメータを更新する。損失関数は、例えば、入力記事701に応じて要約モデル730によって生成される要約文が、正解とする要約文702と類似するほど、相対的に小さい値を示す。損失関数は、例えば、入力記事701に応じて要約モデル730によって生成される要約文が、不正解とする検索結果706と乖離するほど、相対的に小さい値を示す。学習装置100は、より具体的には、損失関数を最小化するよう、要約モデル730のパラメータを変更する方向を特定する。そして、学習装置100は、より具体的には、特定した方向に従って、要約モデル730のパラメータを更新する。
これにより、学習装置100は、入力文に対応する要約文を精度よく生成可能な要約モデル730を学習することができる。学習装置100は、例えば、正解とする要約文702の他、不正解とする検索結果705,706を考慮して、要約モデル730を学習することができる。このため、学習装置100は、不適切な要約文を生成してしまう確率が低くなるよう、要約モデル730を学習することができる。また、学習装置100は、学習した要約モデル730を利用して、対象の入力文に対応する要約文を精度よく生成可能にすることができる。
ここでは、学習装置100が、要約文702の一部をマスクした雛型文703,704を生成し、雛型文703,704のマスクされた部分に、何らかのテキストを挿入することにより、不適切な要約文を生成する場合について説明したが、これに限らない。例えば、学習装置100が、様々な要約文を記憶する要約文DBを有し、要約文DBの中から、要約文702と類似する別の要約文を検索することにより、不適切な要約文を生成する場合があってもよい。
具体的には、学習装置100は、要約文702と、要約文DBのそれぞれの要約文との類似度を算出し、算出した類似度に基づいて、要約文702と類似する別の要約文を検索することにより、不適切な要約文を生成してもよい。
また、具体的には、学習装置100は、要約文DBの中から、要約文702の一部をマスクした雛型文703,704と一致する別の要約文を検索することにより、不適切な要約文を生成する。より具体的には、学習装置100は、要約文DBの中から、雛型文703=「[MASK]は来月製品Bを発売」と[MASK]部分以外が一致する別の要約文を検索することにより、不適切な要約文を生成することが考えられる。
また、より具体的には、学習装置100は、要約文DBのそれぞれの要約文と、雛型文703=「[MASK]は来月製品Bを発売」との、[MASK]部分以外での類似度を算出してもよい。そして、学習装置100は、算出した類似度に基づいて、要約文DBの中から、雛型文703との類似度が比較的高い別の要約文を検索することにより、不適切な要約文を生成することが考えられる。ここで、学習装置100は、「製品B」および「発売」などの単語を含まないものの、文章構成が類似する「C社は来月組織を拡大」などの要約文を、不適切な要約文として生成してもよい。これにより、学習装置100は、不適切な要約文のバリエーションを増加させることができる。
(要約モデル730を学習する具体例)
次に、図8~図10を用いて、要約モデル730を学習する具体例について説明する。まず、図8を用いて、要約モデル730の一例について説明する。
図8は、要約モデル730の一例を示す説明図である。要約モデル730は、複数の単語それぞれが、要約文のi番目の単語として出現する尤もらしさを示す生成確率を算出し、生成確率が最も高い単語y_iを出力する関数p(y_N|y_1,・・・,y_N-1,x)を実現するニューラルネットワークである。xは、入力文である。xは、例えば、入力記事701である。Nは、0以上の整数である。複数の単語は、例えば、要約文の生成完了を示す特殊単語EOS(End Of String)を含む。
次に、図9および図10を用いて、要約モデル730のパラメータを更新する一例について説明する。
図9および図10は、要約モデル730のパラメータを更新する一例を示す説明図である。図9において、学習装置100は、入力記事701を要約した要約文900を取得済みであるとする。ここで、要約文900の単語「発売」の後ろには単語「EOS」が存在するとする。
学習装置100は、要約モデル730により、入力記事701をxとし、単語ごとの生成確率の表901を取得し、要約文900の先頭単語「A社」の生成確率「p(y_1|x)=0.5」を取得する。
次に、学習装置100は、要約モデル730により、y_1=A社とし、単語ごとの生成確率の表902を取得し、要約文900の2番目の単語「は」の生成確率「p(y_2|y_1,x)=0.5」を取得する。以降、学習装置100は、同様に、要約文900のi番目の単語の生成確率「p(y_i|y_1,・・・,y_i-1,x)」を取得する。
最後に、学習装置100は、単語ごとの生成確率の表903を取得し、要約文900の最後の単語「EOS」の生成確率「p(y_N|y_1,・・・,y_N-1,x)=0.6」を取得する。学習装置100は、要約文900の単語それぞれの生成確率を乗算し、要約文900の生成確率P(Y|X)を算出する。次に、図10の説明に移行する。
図10において、学習装置100は、入力記事701を要約した要約文900を部分的に変更した検索結果1000を生成済みであるとする。ここで、検索結果1000の単語「発売」の後ろには単語「EOS」が存在するとする。
学習装置100は、要約モデル730により、入力記事701をxとし、単語ごとの生成確率の表1001を取得し、検索結果1000の先頭単語「C社」の生成確率「p(y_1|x)=0.3」を取得する。
次に、学習装置100は、要約モデル730により、y_1=C社とし、単語ごとの生成確率の表1002を取得し、検索結果1000の2番目の単語「は」の生成確率「p(y_2|y_1,x)=0.5」を取得する。以降、学習装置100は、同様に、検索結果1000のi番目の単語の生成確率「p(y_i|y_1,・・・,y_i-1,x)」を取得する。
最後に、学習装置100は、単語ごとの生成確率の表1003を取得し、検索結果1000の最後の単語「EOS」の生成確率「p(y_N|y_1,・・・,y_N-1,x)=0.6」を取得する。学習装置100は、検索結果1000の単語それぞれの生成確率を乗算し、検索結果1000の生成確率P(Y|X)を算出する。
学習装置100は、要約文900の生成確率P(Y|X)が、検索結果1000の生成確率P(Y|X)よりも高いか否かを判定する。ここで、学習装置100は、要約文900の生成確率P(Y|X)が、検索結果1000の生成確率P(Y|X)以下であれば、要約モデル730のパラメータを更新しない。一方で、学習装置100は、要約文900の生成確率P(Y|X)が、検索結果1000の生成確率P(Y|X)よりも高ければ、要約モデル730のパラメータを更新する。学習装置100は、具体的には、損失関数を利用して、入力記事701と、要約文900と、検索結果1000とに基づいて、要約モデル730のパラメータを更新する。
(要約モデル730を利用する具体例)
次に、図11を用いて、要約モデル730を利用して、対象の入力記事に対応する要約文を生成する具体例について説明する。
図11は、要約モデル730を利用する具体例を示す説明図である。図11において、学習装置100は、要約モデル730により、対象の入力記事をxとし、単語ごとの生成確率の表1101を取得し、最も生成確率が高い単語「A社」を、要約文1100の先頭の単語に設定する。
次に、学習装置100は、要約モデル730により、対象の入力記事をx、要約文1100の先頭の単語y_1=「A社」とし、単語ごとの生成確率の表1102を取得し、最も生成確率が高い単語「は」を、要約文1100の2番目の単語に設定する。以降、学習装置100は、同様に、要約文1100のi番目の単語を設定していく。
最後に、学習装置100は、単語ごとの生成確率の表1103を取得し、単語「EOS」の生成確率が最も高いため、要約文1100の生成を完了する。図11の例では、要約文1100は、生成を完了した後の状態で示されている。これにより、学習装置100は、要約文を精度よく生成することができる。
(学習処理手順)
次に、図12を用いて、学習装置100が実行する、学習処理手順の一例について説明する。学習処理は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
図12は、学習処理手順の一例を示すフローチャートである。図12において、学習装置100は、訓練データ群のうち、まだ選択していない訓練データを選択する(ステップS1201)。
次に、学習装置100は、選択した訓練データに含まれる入力記事xに基づいて、選択した訓練データに含まれる正解の要約yの生成確率を算出する(ステップS1202)。そして、学習装置100は、正解の要約yの一部をランダムに選択する(ステップS1203)。
次に、学習装置100は、選択した正解の要約yの一部を置換することにより、新たな要約y’を生成する(ステップS1204)。そして、学習装置100は、入力記事xに基づいて、生成した新たな要約y’の生成確率を算出する(ステップS1205)。
次に、学習装置100は、正解の要約yの生成確率が、新たな要約y’の生成確率よりも高いか否かを判定する(ステップS1206)。ここで、正解の要約yの生成確率が、新たな要約y’の生成確率以下である場合(ステップS1206:No)、学習装置100は、ステップS1208の処理に移行する。一方で、正解の要約yの生成確率が、新たな要約y’の生成確率よりも高い場合(ステップS1206:Yes)、学習装置100は、ステップS1207の処理に移行する。
ステップS1207では、学習装置100は、入力記事xと正解の要約yとに基づいて、モデルのパラメータを更新する(ステップS1207)。そして、学習装置100は、ステップS1208の処理に移行する。
ステップS1208では、学習装置100は、訓練データ群のうち、すべての訓練データを選択したか否かを判定する(ステップS1208)。ここで、未選択の訓練データが残っている場合(ステップS1208:No)、学習装置100は、ステップS1201の処理に戻る。一方で、すべての訓練データを選択している場合(ステップS1208:Yes)、学習装置100は、学習処理を終了する。これにより、学習装置100は、精度よく要約文を生成可能なモデルを得ることができる。
(推定処理手順)
次に、図13を用いて、学習装置100が実行する、推定処理手順の一例について説明する。推定処理は、例えば、図3に示したCPU301と、メモリ302や記録媒体305などの記憶領域と、ネットワークI/F303とによって実現される。
図13は、推定処理手順の一例を示すフローチャートである。学習装置100は、入力記事を取得する(ステップS1301)。
次に、学習装置100は、モデルを利用して、入力記事に基づいて、複数の単語それぞれの要約における先頭単語としての出現確率を算出する(ステップS1302)。そして、学習装置100は、算出した出現確率が最大となる単語を、先頭単語として含む単語列を設定する(ステップS1303)。
次に、学習装置100は、モデルを利用して、現在の単語列に基づいて、複数の単語それぞれの要約における後続単語としての出現確率を算出する(ステップS1304)。そして、学習装置100は、算出した出現確率が最大となる単語が、EOSであるか否かを判定する(ステップS1305)。
ここで、EOSである場合(ステップS1305:Yes)、学習装置100は、ステップS1307の処理に移行する。一方で、EOSではない場合(ステップS1305:No)、学習装置100は、ステップS1306の処理に移行する。
ステップS1306では、学習装置100は、算出した出現確率が最大となる単語を、単語列の末尾に、後続単語として追加する(ステップS1306)。そして、学習装置100は、ステップS1304の処理に戻る。
ステップS1307では、学習装置100は、単語列を要約文として出力する(ステップS1307)。そして、学習装置100は、推定処理を終了する。これにより、学習装置100は、入力記事に対応する要約文を精度よく生成し、利用可能にすることができる。
ここで、学習装置100は、図12および図13の各フローチャートにおける一部ステップの処理の順序を入れ替えて実行してもよい。例えば、ステップS1202の処理と、ステップS1203~S1205の処理の順序は入れ替え可能である。
以上説明したように、学習装置100によれば、第1入力文と第1入力文を要約した第1要約文とを取得することができる。学習装置100によれば、取得した第1要約文を部分的に変更した第2要約文を生成することができる。学習装置100によれば、モデルを、第1入力文が入力されたことに応じて第1要約文が生成される第1確率が、第1入力文が入力されたことに応じて第2要約文が生成される第2確率よりも高くなるよう学習することができる。これにより、学習装置100は、入力文に対応する要約文を精度よく生成可能なモデルを利用可能にすることができる。
学習装置100によれば、モデルにより、第1入力文に対応する要約文に、複数の単語それぞれが出現する確率を算出することができる。学習装置100によれば、算出した確率に基づいて、第1確率と、第2確率とを算出し、算出した第1確率が、算出した第2確率よりも高ければ、第1入力文と、第1要約文と、第2要約文とに基づいて、モデルを更新することができる。これにより、学習装置100は、複数の単語それぞれが出現する確率を利用して、要約文単位で、当該要約文が生成される確率を算出することができる。
学習装置100は、第1要約文と部分的に類似する第2要約文を生成することができる。これにより、学習装置100は、負例となる不適切な要約文を、モデルの学習に利用可能にすることができる。また、学習装置100は、人名、固有名詞などの特定の単語が第1要約文と異なる第2要約文を生成することにより、閲覧者の観点から第1入力文に対して不適切と考えられ易い第2要約文を、負例とすることができる。このため、学習装置100は、学習されるモデルにより、不適切な要約文が生成されてしまう確率の低減化を図ることができる。
学習装置100によれば、第1要約文に含まれる数値を、別の数値に変更することにより、第2要約文を生成することができる。これにより、学習装置100は、負例となる不適切な要約文を、モデルの学習に利用可能にすることができる。また、学習装置100は、特定の単語を変更することにより、閲覧者の観点から第1入力文に対して不適切と考えられ易い第2要約文を、負例とすることができる。このため、学習装置100は、学習されるモデルにより、不適切な要約文が生成されてしまう確率の低減化を図ることができる。
学習装置100によれば、第1要約文に含まれる単語をランダムに選択し、選択した当該単語を隠すことにより、第1要約文と部分的に類似する要約文を、他の訓練データから第2要約文として検索することができる。あるいは、学習装置100は、第1要約文に含まれる単語をランダムに選択し、選択した当該単語を隠した文章を検索条件とすることで、第1要約文と部分的に類似する要約文を、他の訓練データから第2要約文として検索することができる。これにより、学習装置100は、負例となる不適切な要約文を、モデルの学習に利用可能にすることができる。
学習装置100によれば、学習したモデルを利用して、対象の入力文に対応する要約文を生成することができる。これにより、学習装置100は、入力文に対応する要約文を精度よく生成することができる。
学習装置100によれば、モデルを、ニューラルネットワークにより実現することができる。これにより、学習装置100は、手動でモデルを定式化せずとも、モデルを実現することができる。
なお、本実施の形態で説明した学習方法は、予め用意されたプログラムをPCやワークステーションなどのコンピュータで実行することにより実現することができる。本実施の形態で説明した学習プログラムは、コンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。記録媒体は、ハードディスク、フレキシブルディスク、CD(Compact Disc)-ROM、MO(Magneto Optical disc)、DVD(Digital Versatile Disc)などである。また、本実施の形態で説明した学習プログラムは、インターネットなどのネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)第1入力文と前記第1入力文を要約した第1要約文とを取得し、
取得した前記第1要約文を部分的に変更した第2要約文を生成し、
取得した前記第1入力文と、取得した前記第1要約文と、生成した前記第2要約文とに基づいて、入力文が入力されたことに応じて当該入力文に対応する要約文を生成するモデルについての機械学習を、前記第1入力文が入力されたことに応じて前記第1要約文が生成される第1確率が、前記第1入力文が入力されたことに応じて前記第2要約文が生成される第2確率よりも高くなるように実行する、
処理をコンピュータに実行させることを特徴とする学習プログラム。
(付記2)前記モデルは、入力文に対応する要約文に、複数の単語それぞれが出現する確率を算出可能であって、算出した当該確率に基づいて、当該要約文を生成可能であって、
前記機械学習は、
前記モデルにより、前記第1入力文に対応する要約文に、複数の単語それぞれが出現する確率を算出し、算出した前記確率に基づいて、前記第1確率と、前記第2確率とを算出し、算出した前記第1確率が、算出した前記第2確率よりも高ければ、前記第1入力文と、前記第1要約文と、前記第2要約文とに基づいて、前記モデルを更新する、ことを特徴とする付記1に記載の学習プログラム。
(付記3)前記生成する処理は、
前記第1要約文に出現する固有表現をランダムに選択してマスクし、マスク後の前記第1要約文と部分的に類似する要約文を、訓練データ集合の中から検索することにより、前記第2要約文を生成する、ことを特徴とする付記1または2に記載の学習プログラム。
(付記4)前記生成する処理は、
前記第1要約文に含まれる数値を、別の数値に変更することにより、前記第2要約文を生成する、ことを特徴とする付記1~3のいずれか一つに記載の学習プログラム。
(付記5)前記生成する処理は、
前記第1要約文に含まれる単語をランダムに選択し、選択した当該単語を、当該単語以外の別の単語に変更することにより、前記第2要約文を生成する、ことを特徴とする付記1~4のいずれか一つに記載の学習プログラム。
(付記6)前記モデルを利用して、対象の入力文に対応する要約文を生成する、ことを特徴とする付記1~5のいずれか一つに記載の学習プログラム。
(付記7)前記モデルは、ニューラルネットワークである、ことを特徴とする付記1~6のいずれか一つに記載の学習プログラム。
(付記8)第1入力文と前記第1入力文を要約した第1要約文とを取得し、
取得した前記第1要約文を部分的に変更した第2要約文を生成し、
取得した前記第1入力文と、取得した前記第1要約文と、生成した前記第2要約文とに基づいて、入力文が入力されたことに応じて当該入力文に対応する要約文を生成するモデルについての機械学習を、前記第1入力文が入力されたことに応じて前記第1要約文が生成される第1確率が、前記第1入力文が入力されたことに応じて前記第2要約文が生成される第2確率よりも高くなるように実行する、
処理をコンピュータが実行することを特徴とする学習方法。
(付記9)第1入力文と前記第1入力文を要約した第1要約文とを取得し、
取得した前記第1要約文を部分的に変更した第2要約文を生成し、
取得した前記第1入力文と、取得した前記第1要約文と、生成した前記第2要約文とに基づいて、入力文が入力されたことに応じて当該入力文に対応する要約文を生成するモデルについての機械学習を、前記第1入力文が入力されたことに応じて前記第1要約文が生成される第1確率が、前記第1入力文が入力されたことに応じて前記第2要約文が生成される第2確率よりも高くなるように実行する、
制御部を有することを特徴とする学習装置。
100 学習装置
101 第1入力文
102 第1要約文
103 第2要約文
110 モデル
200 情報処理システム
201 クライアント装置
210 ネットワーク
300 バス
301 CPU
302 メモリ
303 ネットワークI/F
304 記録媒体I/F
305 記録媒体
400 訓練データ管理テーブル
500 単語データ管理テーブル
600 記憶部
601 取得部
602 生成部
603 学習部
604 推定部
605 出力部
700 要約学習データ
701 入力記事
702,900,1100 要約文
703,704 雛型文
705,706,1000 検索結果
720 検索結果付き要約学習データ
730 要約モデル
901~903,1001~1003,1101~1103 表

Claims (6)

  1. 第1入力文と前記第1入力文を要約した第1要約文とを取得し、
    取得した前記第1要約文を部分的に変更した第2要約文を生成し、
    取得した前記第1入力文と、取得した前記第1要約文と、生成した前記第2要約文とに基づいて、入力文が入力されたことに応じて当該入力文に対応する要約文を生成するモデルについての機械学習を、前記第1入力文が入力されたことに応じて前記第1要約文が生成される第1確率が、前記第1入力文が入力されたことに応じて前記第2要約文が生成される第2確率よりも高くなるように実行する、
    処理をコンピュータに実行させることを特徴とする学習プログラム。
  2. 前記モデルは、入力文に対応する要約文に、複数の単語それぞれが出現する確率を算出可能であって、算出した当該確率に基づいて、当該要約文を生成可能であって、
    前記機械学習は、
    前記モデルにより、前記第1入力文に対応する要約文に、複数の単語それぞれが出現する確率を算出し、算出した前記確率に基づいて、前記第1確率と、前記第2確率とを算出し、算出した前記第1確率が、算出した前記第2確率よりも高ければ、前記第1入力文と、前記第1要約文と、前記第2要約文とに基づいて、前記モデルを更新する、ことを特徴とする請求項1に記載の学習プログラム。
  3. 前記生成する処理は、
    前記第1要約文に出現する固有表現をランダムに選択してマスクし、マスク後の前記第1要約文と部分的に類似する要約文を、訓練データ集合の中から検索することにより、前記第2要約文を生成する、ことを特徴とする請求項1または2に記載の学習プログラム。
  4. 前記生成する処理は、
    前記第1要約文に含まれる数値を、別の数値に変更することにより、前記第2要約文を生成する、ことを特徴とする請求項1~3のいずれか一つに記載の学習プログラム。
  5. 第1入力文と前記第1入力文を要約した第1要約文とを取得し、
    取得した前記第1要約文を部分的に変更した第2要約文を生成し、
    取得した前記第1入力文と、取得した前記第1要約文と、生成した前記第2要約文とに基づいて、入力文が入力されたことに応じて当該入力文に対応する要約文を生成するモデルについての機械学習を、前記第1入力文が入力されたことに応じて前記第1要約文が生成される第1確率が、前記第1入力文が入力されたことに応じて前記第2要約文が生成される第2確率よりも高くなるように実行する、
    処理をコンピュータが実行することを特徴とする学習方法。
  6. 第1入力文と前記第1入力文を要約した第1要約文とを取得し、
    取得した前記第1要約文を部分的に変更した第2要約文を生成し、
    取得した前記第1入力文と、取得した前記第1要約文と、生成した前記第2要約文とに基づいて、入力文が入力されたことに応じて当該入力文に対応する要約文を生成するモデルについての機械学習を、前記第1入力文が入力されたことに応じて前記第1要約文が生成される第1確率が、前記第1入力文が入力されたことに応じて前記第2要約文が生成される第2確率よりも高くなるように実行する、
    制御部を有することを特徴とする学習装置。
JP2020211633A 2020-12-21 2020-12-21 学習プログラム、学習方法、および学習装置 Pending JP2022098219A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020211633A JP2022098219A (ja) 2020-12-21 2020-12-21 学習プログラム、学習方法、および学習装置
US17/500,965 US11763069B2 (en) 2020-12-21 2021-10-14 Computer-readable recording medium storing learning program, learning method, and learning device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020211633A JP2022098219A (ja) 2020-12-21 2020-12-21 学習プログラム、学習方法、および学習装置

Publications (1)

Publication Number Publication Date
JP2022098219A true JP2022098219A (ja) 2022-07-01

Family

ID=82023122

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020211633A Pending JP2022098219A (ja) 2020-12-21 2020-12-21 学習プログラム、学習方法、および学習装置

Country Status (2)

Country Link
US (1) US11763069B2 (ja)
JP (1) JP2022098219A (ja)

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4187213B2 (ja) 2004-06-07 2008-11-26 独立行政法人情報通信研究機構 自動要約処理装置および自動要約処理方法
US10409898B2 (en) * 2017-11-17 2019-09-10 Adobe Inc. Generating a targeted summary of textual content tuned to a target audience vocabulary
US10303771B1 (en) 2018-02-14 2019-05-28 Capital One Services, Llc Utilizing machine learning models to identify insights in a document
JP7211011B2 (ja) * 2018-10-31 2023-01-24 富士通株式会社 学習方法、学習プログラム及び生成方法
US11062087B2 (en) * 2019-01-30 2021-07-13 Adobe Inc. Generating summary content tuned to a target characteristic using a word generation model
JP7251214B2 (ja) * 2019-03-01 2023-04-04 日本電信電話株式会社 文生成装置、文生成方法、文生成学習装置、文生成学習方法及びプログラム
JP7275661B2 (ja) * 2019-03-01 2023-05-18 日本電信電話株式会社 文生成装置、文生成方法、文生成学習装置、文生成学習方法及びプログラム
JP2020181387A (ja) * 2019-04-25 2020-11-05 シャープ株式会社 文書要約装置、文書要約システム、文書要約方法及びプログラム
EP3739491B1 (en) * 2019-05-17 2022-07-06 Samsung Electronics Co., Ltd. Electronic apparatus and controlling method thereof
US11454976B1 (en) * 2019-06-06 2022-09-27 Zoox, Inc. Optimizing data levels for processing,transmission, or storage
US11232263B2 (en) * 2019-08-07 2022-01-25 Adobe Inc. Generating summary content using supervised sentential extractive summarization
JP7248130B2 (ja) * 2019-08-30 2023-03-29 富士通株式会社 情報処理方法、情報処理プログラムおよび情報処理装置
US11934781B2 (en) * 2020-08-28 2024-03-19 Salesforce, Inc. Systems and methods for controllable text summarization
US20220351071A1 (en) * 2021-04-30 2022-11-03 Recruit Co., Ltd., Meta-learning data augmentation framework

Also Published As

Publication number Publication date
US20220198131A1 (en) 2022-06-23
US11763069B2 (en) 2023-09-19

Similar Documents

Publication Publication Date Title
US11544177B2 (en) Mapping of test cases to test data for computer software testing
RU2693184C2 (ru) Моделирование контекста сеанса для систем понимания разговорной речи
CN111666746B (zh) 会议纪要的生成方法及装置、电子设备及存储介质
WO2019158014A1 (zh) 由计算机实施的与用户对话的方法和计算机系统
US7925496B1 (en) Method for summarizing natural language text
US9495424B1 (en) Recognition of characters and their significance within written works
JP6505421B2 (ja) 情報抽出支援装置、方法およびプログラム
US11531693B2 (en) Information processing apparatus, method and non-transitory computer readable medium
JPWO2009087996A1 (ja) 情報抽出装置及び情報抽出システム
JP6770709B2 (ja) 機械学習用モデル生成装置及びプログラム。
WO2017083205A1 (en) Provide interactive content generation for document
US20210330241A1 (en) A computer-implemented method, an apparatus and a computer program product for determining an updated set of words for use in an auditory verbal learning test
JP2019197336A (ja) 学習データ生成装置、方法、およびプログラム
KR20190090636A (ko) 문서 자동 편집 방법
US11036926B2 (en) Generating annotated natural language phrases
JP2022098219A (ja) 学習プログラム、学習方法、および学習装置
JP6805927B2 (ja) インデックス生成プログラム、データ検索プログラム、インデックス生成装置、データ検索装置、インデックス生成方法、及びデータ検索方法
KR101835994B1 (ko) 키워드 맵을 이용한 전자책 검색 서비스 제공 방법 및 장치
US11934414B2 (en) Systems and methods for generating document score adjustments
JP2023181819A (ja) 言語処理装置、機械学習方法、推定方法及びプログラム
JP7135730B2 (ja) 要約生成方法及び要約生成プログラム
CN114722267A (zh) 信息推送方法、装置及服务器
CN107015955A (zh) 文档编辑方法和装置
JP2010140262A (ja) 語句入力支援装置及びプログラム
JP2009223679A (ja) 電子文書検索装置、及び電子文書検索プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230804

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240806