Blog
NLP2020参加報告(勝手にクロージング編)
こんにちは。AI Creative Division の澤井です。プロダクト側に所属する NLP/MLエンジニア [1] です。
初のオンライン開催となった今年の言語処理学会年次大会(NLP2020) も無事に終了となりました。この記事では 勝手にクロージング編 と題して、個人的に印象に残った発表を言語資源や自然言語生成に関する研究を中心に紹介していきます。
なお、NLP2020の予稿集はまだ一般公開されていませんので、暫定的に参加者専用のURLを記載しています。
言語資源に関する研究
ごく個人的にですが修士のころに比べると現在仕事としても自然言語処理に関わるようになってからは、日本語データセットの重要性をより強く感じるようになりました。特に、基礎解析のための統語構造や、辞書レベルでの語義・固有表現タグの拡充は、応用事例においては(タスク・ドメインによっては決定的に)重要だと考えています。
P1-34 UD Japanese GSD の再整備と固有表現情報付与
Universal Dependencies (UD) は多言語に対応した依存構造アノテーション方式の定義、およびそれによるツリーバンクを構築するプロジェクトです。しかし、これまでは日本語については、元のテキストを含めて再配布可能なものは少なく、それらもライセンスなどの問題があると指摘されています。この研究では、UD Japanese GSD コーパス を再整備しました。GSDには日本語Wikipediaなどの内容が含まれています。
再整備には、ライセンスの変更だけでなく、欠けてしまった句や文などの復元や文節係り受け情報の付与とUDへの変換などが含まれます。また、OntoNotes5 をベースにした固有表現情報ラベルを定義し、付与しています。これは GiNZAライブラリとその基盤となっている spaCy での利用を容易にするためです。
所感
これにより、UDをベースとする解析器を用いた日本語解析が格段に利用しやすくなるのではないか、と期待しています。これまで、依存構造解析器の公開済みOSSやコーパスは数少なく、商用利用となるともはや選択肢はないような状況だったからです。
さらに、第一著者のMegagon Labs 松田さんが関わっている GiNZA にはこの成果が反映されており、GitHub および PyPI で公開済みとなっています。コミュニティへの貢献という点でもとても意義がある研究だと感じました。
P6-16 chiVe 2.0: SudachiとNWJCを用いた実用的な日本語単語ベクトルの実現へ向けて
形態素解析器 Sudachi の特徴である複数単位分割機能を用いて、NWJCコーパスから作成した日本語単語ベクトルについての発表です。
ここでの複数単位とは形態素の認定単位を指しており、SudachiのREADME から例を拝借すると、以下のようにいろいろな分割ができるということです。
1 2 3 4 5 6 7 8 |
A(短単位):選挙/管理/委員/会 B(中単位):選挙/管理/委員会 C(長単位):選挙管理委員会 # 質疑のチャットボックスでのやりとりを見ると、 # これらはUniDicの単位と似ていますが完全に同一というわけではありません。 # なので Sudachi中単位、のように表記すべきでしょうか。 |
複数の分割単位(短単位・中単位・長単位)が含まれるため、364万語という語彙サイズとなります。
ただし、そのままでは単語ベクトルのサイズが大きい(4GB 程度)ため、いくつかの圧縮手法を検討しています。たとえば、すでに chiVe1.1 として公開済みのものでは、表記正規化を行っているようです。
今回の発表では、中・長単位のベクトルを、短単位のベクトルの合成として表現する手法を検討しています。具体的には、①中・長単位のベクトルを短単位ベクトルの平均で表現する方法、②短単位のベクトルの合成で近似:MIMICK (Pinter et.al 2017)[2] というBiLSTMによる合成手法を比較しています。後者の手法では精度が悪化してしまうという報告となっています。
所感
比較的最近の大規模日本語コーパスであるNWJCを用いた単語ベクトルが、Sudachi と同様に商用利用のしやすい Apache 2.0 ライセンスで配布されるという点で、ビジネス応用が加速すると思いました。(私の中では)Sudachiの開発者&ユーザーコミュニティはフレンドリーで有名なのですが、発表時の質疑でもユーザーや開発者のフィードバックを募集していたのが印象的でした。
また、質疑においては、単語ベクトルという言語資源を提供するという目的ゆえ、単に圧縮効率の良い手法を適用すればいいわけではないという難しさを話していただきました。単語ベクトルのデータサイズを小さくする研究は盛んですが、多くは単純に再構成誤差の小ささや、下流のタスク全体での精度で評価することが多い印象です。今後、単語ベクトル単体の性質(たとえば単語間の類似度)に注目した圧縮手法の評価が必要になりそうだと思いました。
P3-15 ゲーミフィケーションを用いたアノテーション付き対話データの収集基盤
タスク指向型の対話データを、「Minecraft内で」収集する基盤についての発表です。タスク指向型会話とは、何らかの目的に応じた状況下での対話行為を指します。たとえばレストランの予約の場面を想像してもらえるとわかりやすいと思います。
この研究は、対話データの収集をゲーミフィケーション(ゲーム化)することで、動機付けの問題に取り組んでいます。単なる作業と感じてしまうとサボってしまう可能性があるアノテーションを、ゲームとすることで面白さを報酬として動機付けできるという目論見です。
また、この研究ではもう一つの特徴として、アノテーション作業をゲーム内で発話者自身によって行ってもらうという設定を採用しています。本人によるアノテーションと第三者によるアノテーションとを比較した結果、意図の反映という点では、第三者によるアノテーションは意図の解釈誤りを起こす可能性があるという結果が示されています。
所感
アノテーションをゲーム化する、という研究はこれまでもありましたが、ゲーム内での行為そのものがゲーム自体をプレイすることと同義(Minecraftのマルチプレイにおける指示)という意味で、とても新しい設定です。ポスターに詳細が書かれていましたが、MinecraftのModとしてうまく実装されている印象で、質疑においてもデータ収集側による他のタスクへの拡張のしやすさがポイントとなっていた印象です。
自然言語生成に関わる研究
広告に関わるものとして云々はさておき、今年も自然言語生成が個人的に熱いと思っています。
P4-4 デジタル広告におけるクリエイティブの自動生成手法の検討
ウェブ広告に含まれるテキストを自動生成する手法についての発表です。
ウェブ広告は多種多様かつ配信アルゴリズムなどの影響もあり、そこに含まれる広告文をすべてを人手で制作するのはコストが高いです。この研究では、広告から遷移する先のウェブサイト(ランディングページ)から抽出した本文を入力として、それに対応する広告文を生成するのに適したニューラル言語生成モデルを検討しています。
事前学習済みのBERTを含めたいくつかのモデルを比較しています。特に、広告文ドメインであるため多様な表現を出力できることや、商品との関連性が高い広告文となる点を重視して評価しています。
多様性については DIST-1, 2(異なるパターンが生成されると高くなるスコア)による自動評価、また、関連性に関しては人手評価をしています。 ここでは、BERT + Transformer-decoder にコピー機構を加えたものが適している、という報告となっています。
所感
私も広告に関わっているため、この問題設定にはとても同意できます。商品(あるいはランディングページのコンテンツ)に関連する内容を、End-to-endな文生成モデルでうまく出力するには、という点で参考になりました。特に、OOV(語彙外)トークンの出力抑制に対しシンプルなコピー機構が一種の要約のように機能し、商品と広告文との関連性が向上した、という点です。
また、人手評価は広告ライターさんによって行われたという回答をいただいており、ドメイン固有の知識をもつ評価者の必要性が伝わってきました。
P4-11 事前学習モデルと潜在トピックを用いた文書要約への取り組み
抽出型要約の BERTSum モデルに対し、LDAで得た入力文書のトピック分布を加えたモデルを提案しています。 ここでのトピック分布とは、「文書ごとのトピックの分布」と「各トピックの単語分布」との要素積です。
CNN/Daily News というニュース記事要約タスクで評価を実施しています。 KLダイバージェンスで評価したトピックの一致度と、エントロピーで評価した要約の一貫性について性能向上がみられた、という結果となっています。
所感
BERTSumとLDAの組み合わせは、それぞれの学習に任意の事前学習用のコーパスを利用できるように思えるため、モデル更新時のフローが分割できる点で、プロダクトへの応用がしやすそうだと思っています。 もちろん、手法として明確な構成になっているというのも個人的に参考になりました。
P5-11 生成文の文脈に応じ動的に変化する損失関数による多様な対話応答生成
近年のニューラル対話生成モデルは流暢な文を生成できる反面、生成文の多様性が低いという問題が報告されています。(何にでも無難な返事をしてしまうチャットボットを想像してみてください)
この研究では、出力文の多様性を改善するために、文脈と低頻度 n-gram を考慮した損失関数 Inverse N-gram Frequency Loss を提案しています。 これは n-gram頻度の逆数を重みとして Softmax cross-entropy に掛けたものです。
評価実験では、Twitter対話データセットに対して、Softmax cross-entropy と 先行研究で用いられたトークン頻度ベースの Inverse Token Frequency との比較を行っています。 特に、対話の首尾一貫性に関しては、15人の被験者で5段階の人手評価を実施しており、性能の向上がみられたという報告となっています。
所感
TF-IDFのようにどの文書(文脈)でも頻出する系列を割り引いて扱うという明示的な制約を、モダンな言語生成モデルに適用したという目的とアプローチの明確さが印象的でした。 また n-gram 単位での取り扱いであるため、単語ベースであっても、サブワードベースであっても、ある程度フレーズとしてのまとまりを保ったまま出力できる可能性があり、 実サービスで使う際には便利なポイントだと思っています。
あとがき
すでにいろいろなところで言及されていますが、COVID-19の流行により、NLP2020は初の全プログラムオンライン開催となりました。会期を終えての感想をいえば、研究発表の本質的な部分はオンラインでいいかもしれない、という発見をもたらしてくれるスムーズな進行だったと思います。 特に、NLP2020はこの情勢のなか短い期間で、かつ、7セッションパラレルという大規模な会議を成功に導いてくださった運営の方々には、本当に頭が上がりません。この場を借りてお礼申し上げます。
もちろん、オンライン発表という形式特有の悩みもあったかもしれませんが、出不精かつ段取りが悪い自分としてはこれは新しく効率的な形態だと思いました。朝寝坊の心配もなく、混雑したポスターセッション会場で必死で質問のタイミングをうかがう緊張感もなく、立ち見の出るような人気セッションの移動も自由自在……というように、いろいろな意味で公平性が高くなっていると感じました。あとはよりよいデバイスが登場して、懇親会などのアクティビティが補完されることを願うばかりです。
さて、先ほどのクロージング(公式)でNLP2021は九州(小倉)で開催ということが発表されましたが、そういえばその前にある今年6月のJSAI2020も九州(熊本)でしたね。
というわけで突然の告知となりますが、JSAI2020では弊社のNLPメンバーが、自動生成広告文のための評価ツールなどの発表をおこなう予定です。開催予定の6月はまだ先ですが、もし興味があればお越しください。オンラインでもオフラインでも歓迎です。
最後まで読んでいただきありがとうございます。それではみなさま、NLP2021でお会いしましょう。
こういう記事の最後に来るのは会場の様子や食事の写真な気がしますが、今回は会期中ずっと自宅にいたので、ちょっと寂しい感じの写真を貼って締めたいと思います。
-
ジョブのタイトルはデータサイエンティストなのですが、今のチーム内のロールを表すにはこのほうが適切なので…。 ↩︎
-
Pinter, Y., Guthrie, R., & Eisenstein, J. (2017). Mimicking Word Embeddings using Subword RNNs. Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing, 102–112. https://doi.org/10.18653/v1/D17-1010 ↩︎
Author