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

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

▶ 日本電信電話株式会社の特許一覧 ▶ 国立大学法人東京工業大学の特許一覧

特開2023-120073修辞構造解析学習装置、システム、修辞構造解析の学習方法、及びプログラム
<>
  • 特開-修辞構造解析学習装置、システム、修辞構造解析の学習方法、及びプログラム 図1
  • 特開-修辞構造解析学習装置、システム、修辞構造解析の学習方法、及びプログラム 図2
  • 特開-修辞構造解析学習装置、システム、修辞構造解析の学習方法、及びプログラム 図3
  • 特開-修辞構造解析学習装置、システム、修辞構造解析の学習方法、及びプログラム 図4
  • 特開-修辞構造解析学習装置、システム、修辞構造解析の学習方法、及びプログラム 図5
  • 特開-修辞構造解析学習装置、システム、修辞構造解析の学習方法、及びプログラム 図6
  • 特開-修辞構造解析学習装置、システム、修辞構造解析の学習方法、及びプログラム 図7
  • 特開-修辞構造解析学習装置、システム、修辞構造解析の学習方法、及びプログラム 図8
  • 特開-修辞構造解析学習装置、システム、修辞構造解析の学習方法、及びプログラム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023120073
(43)【公開日】2023-08-29
(54)【発明の名称】修辞構造解析学習装置、システム、修辞構造解析の学習方法、及びプログラム
(51)【国際特許分類】
   G06F 40/211 20200101AFI20230822BHJP
   G06F 40/216 20200101ALI20230822BHJP
【FI】
G06F40/211
G06F40/216
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022023273
(22)【出願日】2022-02-17
(71)【出願人】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(71)【出願人】
【識別番号】304021417
【氏名又は名称】国立大学法人東京工業大学
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100124844
【弁理士】
【氏名又は名称】石原 隆治
(72)【発明者】
【氏名】平尾 努
(72)【発明者】
【氏名】永田 昌明
(72)【発明者】
【氏名】小林 尚輝
(72)【発明者】
【氏名】上垣外 英剛
(72)【発明者】
【氏名】奥村 学
【テーマコード(参考)】
5B091
【Fターム(参考)】
5B091AA15
5B091CA06
5B091EA01
5B091EA02
(57)【要約】      (修正有)
【課題】文書の構造を自動的に推定する修辞構造解析のパラメタ学習法において、少ない数の訓練データを有効活用してパラメタ推定の質を向上させる修辞構造解析学習装置、学習方法及びプログラムを提供する。
【解決手段】修辞構造解析学習装置及び修辞構造推定装置によって構築されたシステムにおいて、修辞構造解析の学習を行う修辞構造解析学習装置1は、訓練データの文書から得た木構造における部分木によって最小単位を構成する各ミニバッチデータを生成する生成部10と、各ミニバッチデータによって生成した各パラメタのうち、当該各パラメタに基づいて木構造が推定されて得られた部分木と正解データで示される木構造の部分木との一致率を示す評価スコアが高い上位の所定数のパラメタを平均化することで、最終パラメタを生成する推定部20と、を有する。
【選択図】図3
【特許請求の範囲】
【請求項1】
修辞構造解析の学習を行う修辞構造解析学習装置であって、
訓練データの文書から得た木構造における部分木によって最小単位を構成する各ミニバッチデータを生成する生成部と、
前記各ミニバッチデータによって生成した各パラメタのうち、当該各パラメタに基づいて木構造が推定されて得られた部分木と正解データで示される木構造の部分木との一致率を示す評価スコアが高い上位の所定数のパラメタを平均化することで、最終パラメタを生成する推定部と、
を有する修辞構造解析学習装置。
【請求項2】
前記生成部は、前記部分木として前記木構造の親子ノードのスパン分割を最小単位としたスパン分割により前記各ミニバッチデータを生成する、請求項1に記載の修辞構造解析学習装置。
【請求項3】
前記推定部は、
前記各ミニバッチデータに基づいて前記各パラメタを最適化して保存するパラメタ最適化部と、
前記各パラメタに基づいて木構造を推定して得た部分木と前記正解データで示される木構造の部分木との一致率を示す前記評価スコアを算出する修辞構造推定装置に対して、前記パラメタ最適化部から取得した各パラメタを送信するための処理を行い、当該処理に応じて前記修辞構造推定装置が送信した各前記評価スコアを取得する正解データ評価部と、
各前記評価スコアのうち上位の所定数の前記評価スコアを決定し、当該上位の所定数の前記評価スコアに係るパラメタの集合を前記パラメタ最適化部によって保存されている各パラメタから取得し、前記パラメタの集合を平均化して、前記最終パラメタを生成するパラメタ平均化部と、
を有する、請求項1又は2に記載の修辞構造解析学習装置。
【請求項4】
正解データ評価部は、前記評価スコアを取得する回数が最大エポック数に達した場合、又は前記評価スコアが一定値に収束した場合には、前記修辞構造推定装置に対して前記パラメタを送信するための処理を終了する、請求項3に記載の修辞構造解析学習装置。
【請求項5】
請求項1乃至4のいずれか一項に記載の修辞構造解析学習装置と、
各パラメタに基づいて木構造を推定して得た部分木と正解データで示される木構造の部分木との一致率を示す評価スコアを算出する修辞構造推定装置と、
を有するシステム。
【請求項6】
修辞構造解析の学習を行う修辞構造解析学習装置が実行する修辞構造解析の学習方法であって、
訓練データの文書から得た木構造における部分木によって最小単位を構成する各ミニバッチデータを生成し、
前記各ミニバッチデータによって生成した各パラメタのうち、当該各パラメタに基づいて木構造が推定されて得られた部分木と正解データで示される木構造の部分木との一致率を示す評価スコアが高い上位の所定数のパラメタを平均化することで、最終パラメタを生成する、
修辞構造解析の学習方法。
【請求項7】
コンピュータに、請求項6に記載の方法を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示内容は、計算機を用いて言語を処理する自然言語処理分野に属し、特に、文書の構造を自動的に推定する修辞構造解析のパラメタ学習法に関する。
【背景技術】
【0002】
修辞構造解析では、文書をElementary Discourse Unit(EDU)と呼ばれる文よりも小さい、節に相当するテキストユニットの系列データとみなす。そして、これらを、終端ノード及びEDUが形成する木(スパンの関係を非終端ノードがあらわす再帰構造を持った木)として表現する(図8参照)。図8において、終端ノードはEDU(e)である。非終端ノードは、それが支配するスパンの核性(従属関係)、つまり核(N:Nucleus)であるか衛星(S:Satellite)であるかを表す。核(N)はより中心的な情報を表すテキスト領域であり、衛星(S)は核を補足するテキスト領域である。
【0003】
2つの非終端ノードをつなぐエッジには関係ラベルが与えられる。2つの非終端ノードがS、Nの組みである場合、S側のエッジには、Elaborationなどの関係ラベル(全18種)が付与され、N側のエッジには、デフォルトラベルであるspanが与えられる。なお、spanはN側に与えられるデフォルトラベルなので、関係ラベルとしてはとらえられない。また、2つの非終端ノードが、NとNの組みである場合、双方のエッジに対してSame-Unitなどの関係ラベルが与えられる。
【0004】
文書、つまりEDUの系列が与えられた際に修辞木構造を推定する技術は、現在ではニューラルネットワークを用いて実現される。例えば、事前学習済み言語モデルを用いてスパンのベクトルを得たのち、(1)木構造推定(スパンの結合もしくは分割の決定)、(2)核性推定(N-S、S-N、又はN-N のいずれかを選択)、(3)関係ラベル推定(18種の関係のうちいずれかを選択)をニューラルネットワークにより実現する。
【0005】
なお、現状の多くの修辞構造解析はトップダウン、つまり、スパンを分割することで木を推定する。たとえば、非特許文献1について、以降、トップダウン解析器を前提として説明を進める。
【0006】
続いて、図9に一般的なトップダウン解析器の概要を示す。トップダウン解析器は、単語埋め込みベクトルwを経て連続したEDUで構成されるスパンのベクトルuを得て、このベクトルuを順伝播型ニューラルネットワークに入力することで、ベクトルhを得る。そして、トップダウン解析器は、ベクトルuをバイアフィン層に入力して、木構造の推定、核性及び関係ラベルの推定を行う。
【0007】
この場合、i番目のEDUからj番目のEDUで構成されるスパンを
【0008】
【数1】
番目のEDUで分割するスコアは以下の(式1)で定義される。
【0009】
【数2】
ここで、Wはパラメタ行列、vはパラメタベクトルである。hはそれぞれ以下の(式2)乃至(式4)で定義される。
【0010】
【数3】
【0011】
【数4】
【0012】
【数5】
ここで、FFNは順伝播型ニューラルネットワークを関数として表現したものである。
【0013】
【数6】
【0014】
【数7】
番目のEDUからm番目のEDUで構成されるスパンのベクトルであり、具体的には
【0015】
【数8】
番目のEDUの左端の単語の埋め込みベクトルとm番目のベクトルの右端の単語埋め込みベクトルの平均である。なお、
【0016】
【数9】
は今、着目するi番目のEDUからk番目のEDUで構成されるスパンとk+1番目のEDUからj番目のEDUで構成されるスパンが、(1)同一の段落又は同一の文にあるか否か、(2)連続した段落又は連続した文にあるか否か、(3)段落又は文の先頭にあたるか否か、(4)段落又は文の末尾にあるか否かを表すベクトルである。
【0017】
最終的に以下の(式5)でi番目のEDUとj番目のEDUで構成されるスパンを分割するk番目のEDUが決定される。
【0018】
【数10】
i番目のEDUからj番目のEDUで構成されるスパンを
【0019】
【数11】
番目のEDUで分割する際、核性及び関係ラベルの推定は、以下の(式6)で定義される。
【0020】
【数12】
【0021】
【数13】
【0022】
【数14】
はそれぞれ、パラメタ行列、パラメタベクトルである。これらを用いて、核性及び関係ラベルの推定は、以下の(式7)で定義される。
【0023】
【数15】
なお、Lは核性の推定の際には{N-S,S-N,N-N}とし、関係ラベルの推定の際に以下の18種のラベルの集合となる。
・ Attribution,
・ Background,
・ Cause,
・ Comparison,
・ Condition,
・ Constrast,
・ Elaboration,
・ Enablement,
・ Evaluation,
・ Explanation,
・ Joint,
・ Manner-Means,
・ Topic-Comment,
・ Summary,
・ Temporal,
・ TopicChange,
・ Textual-Ogranization,
・ Same-Unit
また、ニューラルネットの学習(パラメタ最適化)には、ミニバッチ学習方法が用いられることが多い。この方法は、訓練データをある特定の数a個の訓練データごとのブロックにランダムに分割し、訓練データ数/aだけのイテレーション(これを「エポック」とよぶ)を指定された回数だけ繰り返す。ここで、ブロック内の事例数aを大きくすると、イテレーション数は小さくなり、パラメタのアップデートが少なくなり、学習が十分でなくなるため、事例数aは小さいものが望ましい。しかし、修辞構造解析の場合、そもそも大量の訓練データを用意することができない。よって、訓練データの最小単位を文書全体に対する木としている限りは、事例数aを1としても十分な回数のパラメタのアップデート(最適化)が困難である。
【先行技術文献】
【非特許文献】
【0024】
【非特許文献1】Naoki Kobayashi, Tsutomu Hirao, Hidetaka Kamigaito, Manabu Okumura, and Masaaki Nagata. 2020。 Top-down rst parsing utilizing granularity levels in documents. In Proceedings of the 2020 Conference on Artificial Intelligence for the American, pages 8099-8106
【発明の概要】
【発明が解決しようとする課題】
【0025】
一般的にニューラルネットワークの学習、つまりパラメタ推定には十分な量の訓練データが必要となる。しかし、修辞構造解析のアノテーションにはコストがかかるため大規模な訓練データを用意することが困難である。
【0026】
本発明は、上記の点に鑑みてなされたものであって、少ない数の訓練データを有効活用してパラメタ推定の質を向上させることを目的とする。
【課題を解決するための手段】
【0027】
上記課題を解決するため、請求項1に係る発明は、修辞構造解析の学習を行う修辞構造解析学習装置であって、訓練データの文書から得た木構造における部分木によって最小単位を構成する各ミニバッチデータを生成する生成部と、前記各ミニバッチデータによって生成した各パラメタのうち、当該各パラメタに基づいて木構造が推定されて得られた部分木と正解データで示される木構造の部分木との一致率を示す評価スコアが高い上位の所定数のパラメタを平均化することで、最終パラメタを生成する推定部と、を有する修辞構造解析学習装置である。
【発明の効果】
【0028】
以上説明したように本発明によれば、訓練データの最小単位を文書から得た木構造全体ではなく、木構造における部分木で構成することで、パラメタのアップデート回数を増やし、さらに学習時のエポック毎に保存したパラメタを平均化することで、従来に比べて、少ない数の訓練データを有効活用してパラメタ推定の質を向上させることができるという効果を奏する。
【図面の簡単な説明】
【0029】
図1】実施形態に係る修辞構造解析学習装置及び修辞構造推定装置によって構築されたシステムの全体構成図である。
図2】実施形態に係る修辞構造解析学習装置のハードウェア構成図である。
図3】実施形態に係る修辞構造解析学習装置の機能構成図である。
図4】実施形態に係る生成部の詳細な機能ブロック図である。
図5】実施形態に係る推定部の詳細な機能ブロック図である。
図6】修辞構造解析学習装置の生成部の処理を示すフローチャートである。
図7】修辞構造解析学習装置の推定部の処理を示すフローチャートである。
図8】修辞構造解析における再帰構造を持った木を示す図である。
図9】一般的なトップダウン解析器の概要を示す図である。
【発明を実施するための形態】
【0030】
以下、図面に基づいて本発明の実施形態を説明する。
【0031】
〔実施形態のシステム構成〕
まず、図1を用いて、本実施形態のシステムの構成の概略について説明する。図1は、実施形態に係る修辞構造解析学習装置及び修辞構造推定装置によって構築されたシステムの全体構成図である。
【0032】
図1に示されているように、システムは、修辞構造解析学習装置1、及び修辞構造推定装置2によって構築されている。
【0033】
また、修辞構造解析学習装置1と修辞構造推定装置2は、インターネット、LAN(Local Area Network)等の通信ネットワークを介して通信することができる。通信ネットワークの接続形態は、無線又は有線のいずれでも良い。
【0034】
修辞構造解析学習装置1及び修辞構造推定装置2は、単数又は複数のコンピュータによって構成されている。
【0035】
修辞構造解析学習装置1は、訓練データを分割することによって生成した各パラメタを修辞構造推定装置2に送信する。修辞構造解析学習装置1は、修辞構造推定装置2に対して、事前に正解データを送信する。正解データは、文書を示すテキストデータとこのテキストデータに対応する正解の木との組を複数含んでおり、修辞構造解析の分野では「開発データ」と呼ばれている。
【0036】
修辞構造推定装置2は、修辞構造解析学習装置1から取得したパラメタに基づいて木構造を推定して得た部分木と、正解データで示される木構造の部分木との一致率を示す評価スコアを生成し、修辞構造解析学習装置1に対して評価スコアを送る。評価スコアは、例えば、完全不一致の場合を「0」とし、完全一致の場合を「1」として、0~1の値で示される。
【0037】
〔修辞構造解析学習装置のハードウェア構成〕
続いて、図2を用いて、修辞構造解析学習装置1のハードウェア構成を説明する。図2は、実施形態に係る修辞構造解析学習装置のハードウェア構成図である。なお、修辞構造推定装置2のハードウェア構成は、修辞構造解析学習装置1と同様であるため、説明を省略する。
【0038】
図2に示されているように、修辞構造解析学習装置1は、プロセッサ101、メモリ102、補助記憶装置103、接続装置104、通信装置105、ドライブ装置106を有する。なお、修辞構造解析学習装置1を構成する各ハードウェアは、バス107を介して相互に接続される。
【0039】
プロセッサ101は、修辞構造解析学習装置1全体の制御を行う制御部の役割を果たし、CPU(Central Processing Unit)等の各種演算デバイスを有する。プロセッサ101は、各種プログラムをメモリ102上に読み出して実行する。なお、プロセッサ101には、GPGPU(General-purpose computing on graphics processing units)が含まれていてもよい。
【0040】
メモリ102は、ROM(Read Only Memory)、RAM(Random Access Memory)等の主記憶デバイスを有する。プロセッサ101とメモリ102とは、いわゆるコンピュータを形成し、プロセッサ101が、メモリ102上に読み出した各種プログラムを実行することで、当該コンピュータは各種機能を実現する。
【0041】
補助記憶装置103は、各種プログラムや、各種プログラムがプロセッサ101によって実行される際に用いられる各種情報を格納する。
【0042】
接続装置104は、外部装置(例えば、表示装置110、操作装置111)と修辞構造解析学習装置1とを接続する接続デバイスである。
【0043】
通信装置105は、他の装置との間で各種情報を送受信するための通信デバイスである。
【0044】
ドライブ装置106は(非一時的)記録媒体130をセットするためのデバイスである。ここでいう記録媒体130には、CD-ROM(Compact Disc Read-Only Memory)、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的あるいは磁気的に記録する媒体が含まれる。また、記録媒体130には、ROM(Read Only Memory)、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等が含まれていてもよい。
【0045】
なお、補助記憶装置103にインストールされる各種プログラムは、例えば、配布された記録媒体130がドライブ装置106にセットされ、該記録媒体130に記録された各種プログラムがドライブ装置106により読み出されることでインストールされる。あるいは、補助記憶装置103にインストールされる各種プログラムは、通信装置105を介してネットワークからダウンロードされることで、インストールされてもよい。
【0046】
〔修辞構造解析学習装置の機能構成〕
次に、図3乃至図5を用いて、修辞構造解析学習装置1の機能構成について説明する。図3は、実施形態に係る修辞構造解析学習装置の機能構成図である。
【0047】
図3において、修辞構造解析学習装置1は、入力部5、生成部10、推定部20、及び出力部24を有している。これら各部は、プログラムに基づき図2のプロセッサ101による命令によって実現される機能である。
【0048】
更に、図2のメモリ102又は補助記憶装置103には、事前学習済み言語モデルmが記憶されている。
【0049】
入力部5は、ユーザからのデータを入力したり、修辞構造推定装置2から送られて来るデータを入力したりする。また、出力部24は、修辞構造推定装置2に対し、正解データ、及び各パラメタを送信する。
【0050】
<生成部の機能構成>
生成部10は、生訓練データを受け取り、それをニューラルネットワークの学習に用いることが可能なベクトルデータであるミニバッチデータを生成する。そのため、生成部10は、学習事例生成部11、スパンベクトル生成部12、及び、ミニバッチ生成部13を有している。
【0051】
これらのうち、学習事例生成部11は、入力部5から(生)訓練データを受け取り、木構造の親子ノードのスパン分割を最小単位としたスパン分割事例データに変換することで、スパン分割事例データを生成する。
【0052】
スパンベクトル生成部12は、学習事例生成部11によって生成されたスパン分割事例データをベクトルに変換することで、ベクトルを生成する。
【0053】
ミニバッチ生成部13は、スパンベクトル生成部12によって生成されたベクトルに基づいて、所定数としてランダムなp個(N/p個)のブロックに分割した訓練データ(ミニバッチデータ)を生成する。
【0054】
なお、学習事例生成部11、スパンベクトル生成部12、及び、ミニバッチ生成部13の各処理に関しては、後ほど詳細に説明する。
【0055】
<推定部の機能構成>
推定部20は、生成部10から、ミニバッチデータとして、N/p個のブロックに分割された訓練データを受け取り、指定された最大エポック数に達するまで(又は評価スコアが一定値に収束するまで)、パラメタの最適化(アップデート)を行うことで、最終パラメタを生成する。ここでは、エポック毎にパラメタを保存しておき、評価スコアが高いK個のパラメタを平均することで、最終目的である最終パラメタを生成する。そのため、推定部20は、パラメタ最適化部21、正解データ評価部22、及びパラメタ平均部23を有している。
【0056】
これらのうち、パラメタ最適化部21は、ミニバッチ生成部13から、生訓練データを分割して生成されたミニバッチデータを受け取り、指定の最大エポック数に達するまで(又は評価スコアが一定値に収束するまで)パラメタの最適化(アップデート)を行う。エポックとは、ここでは、N/p個のブロック全てをパラメタのアップデートに利用すること、つまりN/p回のアップデートの繰り返しを表す。パラメタのアップデートは、既存の技術AdamWなどが用いられる。
【0057】
正解データ評価部22は、事前に、出力部24を介して、修辞構造推定装置2に正解データを送信する。また、正解データ評価部22は、パラメタ最適化部21から取得したパラメタを、取得する度に出力部24を介して修辞構造推定装置2に送信する。更に、正解データ評価部22は、修辞構造推定装置2から入力部5を介して、上述の送信したパラメタ毎にパラメタの評価スコアを受信する。
【0058】
パラメタ平均部23は、正解データ評価部22から、各エポック番号及び各評価スコアの対を取得し、エポック番号と評価スコアのタプルを評価スコアの降順でソートし、上位K個の評価スコアを決定(同定)する。また、パラメタ平均部23は、パラメタ最適化部21に保存されているK個のパラメタの集合を取得する。更に、パラメタ平均部23は、K個のパラメタの集合を平均化して、最終パラメタを生成する。
【0059】
なお、パラメタ最適化部21、正解データ評価部22、及びパラメタ平均部23の各処理に関しては、後ほど詳細に説明する。
【0060】
〔実施形態の処理又は動作〕
続いて、図6乃至図8を用いて、本実施形態の処理又は動作について詳細に説明する。
【0061】
<生成部の処理>
まずは、図6を用いて、生成部10の処理について説明する。図6は、修辞構造解析学習装置の生成部の処理を示すフローチャートである。
【0062】
図6に示されているように、学習事例生成部11が、入力部5を介して取得した全ての生訓練データに基づき、以下に示すようなスパン分割の親子関係を表すスパン分割事例データを生成する(S11)。例えば、図8に示す木を例にすると、スパン分割事例データは以下のように示される。
・ SPN(e1,e6) → N:span:SPN(e1,e3),S:Elab:SPN(e4,e6)
・ SPN(e1,e3) → N:span:SPN(e1,e2),S:Elab:SPN(e3,e3)
・ SPN(e1,e2) → S:Attrib:SPN(e1,e1),N:span:SPN(e2,e2)
・ SPN(e4,e6) → N:Same-Unit:SPN(e4,e5),N:Same-Unit:SPN(e6,e6)
・ SPN(e4,e5) → N:span:SPN(e4,e4),S:Elab:SPN(e6,e5)
なお、SPN(ei,ej)は、i番目からj番目のEDUによって構成されたスパンをあらわす。ラベルspanは、N-S、S-Nの核性の際に、N側に割り当てられるデフォルトのラベルである。上記の各事例(各1行)が、ミニバッチを構成する最小単位となる。
【0063】
次に、スパンベクトル生成部12は、学習事例生成部11から、i番目からj番目のEDUで構成されるスパンSPN(ei,ej)を示すスパン分割事例データを受け取り、スパン分割事例データをベクトル表現に変換することで、ベクトルuを生成する(S12)。ベクトルuは、i番目のEDUの左端の単語wb(i)とj番目のEDUの右端の単語we(j)の埋め込みベクトルを平均とする。単語wの埋め込みベクトルは、事前学習済み言語モデルmを用いて得られる。ベクトルの次元は用いられる事前学習済み言語モデルmに依存する。
【0064】
次に、ミニバッチ生成部13は、スパンベクトル生成部12から、ベクトルとして表現されたスパン分割事例データを全て受け取り、ランダムなp個ごとのブロックに分割することで、ミニバッチデータを生成する(S13)。ここで、文書全体で得られたスパン分割事例数をNとすると、N/p個のブロックができる。
【0065】
なお、従来のように、ミニバッチ構成の最小単位を文書全体の木とする場合、文書数をMとするならば、バッチサイズを1としたとしても総ブロック数はM/1にしかならない。これは、pのとり方にもよるが、M < N なので、文書を最小構成単位として構成したミニバッチのブロック数はN/pよりも小さくなる。よって、パラメタのアップデートのために必要となる1エポックあたりのイテレーション数も小さくなり、アップデートがうまくいかない可能性がある。従来のように、訓練データの最小単位を文書全体に対する木、つまり、文書全体をあらわすスパンから葉である単一のEDUに分割されるまでの全ての分割をまとめ扱うのではなく、本実施形態では、その部分木に変更することで、訓練データの数は文書数よりも大きくなる。よって、pとして小さな数を選択すればブロック数も大きくなり、パラメタのアップデート回数が多くなるため、機械学習がうまくいくことが期待できる。
【0066】
なお、上記例は、トップダウンに木を構築する場合であるが、ボトムアップはスパン分割ではなくスパン結合の事例を用いれば良い。
【0067】
以上により、生成部10は、ミニバッチデータとして、N/p個のブロックに分割された訓練データを生成する。
【0068】
<推定部の処理>
続いて、図7を用いて、推定部20の処理について説明する。図7は、修辞構造解析学習装置の推定部の処理を示すフローチャートである。
【0069】
まず、正解データ評価部22は、事前に、出力部24を介して、修辞構造推定装置2に正解データを送信しておく(S21)。
【0070】
次に、パラメタ最適化部21は、パラメタを初期化する(S22)。パラメタ最適化部21は、N/p個のブロックに分割された訓練データに基づき、損失スコア(Loss)を最小化するように、パラメタをアップデート(最適化)して、エポックごとにメモリ102等に保存する(S23)。ここで、パラメタのアップデートの目的関数である損失スコア(Loss)は、以下の(式8)を最小化するために用いられる。
【0071】
【数16】
次に、正解データ評価部22は、パラメタ最適化部21から取得した各パラメタを、取得する度に出力部24を介して修辞構造推定装置2に送信する(S24)。これにより、修辞構造推定装置2は、処理(S24)で修辞構造解析学習装置1から取得したパラメタに基づいて木構造を推定して得た部分木と、処理(S21)で取得しておいた正解データで示される木の部分木との一致率を示す評価スコアを生成し、修辞構造解析学習装置1に対して評価スコアを送信する。正解データ評価部22は、入力部5を介して修辞構造推定装置2から評価スコアを受信する(S25)。
【0072】
次に、正解データ評価部22は、指定の最大エポック数に達したか、又は評価スコアが一定値に収束したかを判断する(S26)。収束したかの判断は、今回のエポックの評価スコアと前回のエポックの評価スコアとの差分が一定値
【0073】
【数17】
以下となる場合が一定回続いたかの判断である。
【0074】
そして、指定の最大エポック数に達していない場合、又は評価スコアが一定値に収束していない場合には(S26;NO)、処理(S23)に戻る。
【0075】
一方、指定の最大エポック数(例えば、10回)に達した場合、又は評価スコアが一定値に収束した場合には(S26;YES)、パラメタ平均部23は、正解データ評価部22から、各エポック番号及び各評価スコアの対を取得する(S27)。そして、パラメタ平均部23は、エポック番号と評価スコアのタプルを評価スコアの降順でソートし、上位K個の評価スコアを決定する(S28)。
【0076】
次に、パラメタ平均部23は、パラメタ最適化部21に保存されているK個のパラメタの集合を取得する(S29)。そして、パラメタ平均部23は、上位K個の評価スコアに係るパラメタの値を足し合わせてKで割ることにより。K個のパラメタの集合を平均化して、最終パラメタを生成する(S30)。
【0077】
〔実施形態の主な効果〕
以上説明したように本実施形態によれば、ニューラルネットワークをミニバッチ学習する際、ミニバッチの基本単位を文書から得た木全体ではなく、その部分木、つまりスパン分割をあらわす親子関係の木とすること、及び、正解データでの評価スコアが高いK件のパラメタを平均することにより、パラメタ推定の性能向上が期待できる。これにより、少ない数の訓練データを有効活用してパラメタ推定の質を向上させることができるという効果を奏する。
【0078】
〔補足〕
本発明は上述の実施形態に限定されるものではなく、以下に示すような構成又は処理(動作)であってもよい。
【0079】
入力部5、生成部10、推定部20、及び出力部24は、上述のようにコンピュータとプログラムによっても実現できるが、このプログラムを(非一時的な)記録媒体に記録して提要することも、インターネット等のネットワークを通して提供することも可能である。
【符号の説明】
【0080】
1 修辞構造解析学習装置
2 修辞構造推定装置
5 入力部
10 生成部
11 学習事例生成部
12 スパンベクトル生成部
13 ミニバッチ生成部
20 推定部
21 パラメタ最適化部
22 正解データ評価部
23 パラメタ平均部
24 出力部
図1
図2
図3
図4
図5
図6
図7
図8
図9