ブログではないです

ブログでなくはないです

Learning to generate one-sentence biographies from Wikidata [Chisholm+, EACL'17]

https://aclweb.org/anthology/E17-1060

概要

Wikipediaは多くの場合その記事に対応するWikidata item (他エンティティとの関係ラベルやある属性の値などの知識グラフ) を持つことを利用して、 ある人物についてWikidataから値を抽出したテンプレート (“TITLE mathias tuomi SEX OR GENDER male DATE OF BIRTH 1985-09-03 …”) からWikipediaの該当記事の第一文目を生成するタスク(Biography generation)。自分の研究でWikipedia/Wikidataを使ってみようかと思っているので参考に。

提案手法はアテンションを用いたseq2seqに,出力文を用いてもう一度入力文を復元するループ構造を加える事で入力文を復元できるだけの情報を出力文が持つように制約をかけたautoencoder的なseq2seq。 どこかで見たことあるような・・・。ちゃんと読んでないけどNIPSのdual learningとかもこんなのじゃなかったっけ。

学習の際decodeした時点で誤差の伝播が途切れるので同時に繋げて学習はしていないそうだけど、最終的な損失はどうなっているんだろう?入力→出力と出力→入力のを単に足しているだけ?その辺ちゃんと書いてなかった気がする。 

しかし結果としてはプレーンなattention seq2seqと比べてBLEUが8近く上昇。 翻訳ならとんでもない改善だけどBLEUがどの程度上がるとどうなのかということがタスクによって違うからなんとも。

感想

Wikipediaの各エンティティについて、Wikidataと組み合わせることで扱いやすい属性値と関連するテキストが同時に手に入るというのはなるほどと思った。 恐らくこの研究の新規性というのはWikipediaとWikidataのデータの性質を上手く使って構造化されたデータとテキストデータのマップを行った所にあると思うのだけど、 そのような性質を持つデータはWikipedia以外にあまりイメージできないのでどういう状況でこの研究の、というよりこのタスクについての知見は意味を持つんだろうという気もする。(エンティティの属性値だけあってそれについてのテキストを生成したい状況って何?)

こういうループバック的なモデルはこのタスクや翻訳のように入出力間の1対1対応が比較的強いような場合については良い制約として働くだろうけど、 例えば対話応答のように入出力間の1対1対応が全然取れないような場合ではむしろどうなんだろう、という気もする。

この研究とは関係ない話になってしまうがそもそも対話のように一対多関係にある入出力であっても無理やり一対一写像として学習しようとしているのが今のNNモデルだ、という意見は以前からあってその辺りのどの程度データそのものの入出力関係が多様なのかという定量的な評価指標って無いのだろうか。