Skip to main content
QUICK REVIEW

[論文レビュー] Code4Struct: Code Generation for Few-Shot Event Structure Prediction

Xingyao Wang, Sha Li|arXiv (Cornell University)|Oct 23, 2022
Topic Modeling被引用数 14
ひとこと要約

この論文は、Pythonクラス定義を用いてコード生成としてイベントアーギュメント抽出(EAE)を定式化する、few-shotイベント構造予測フレームワークCode4Structを提案する。継承や型注釈といったプログラミング言語の特徴を活用することで、わずか20例のfew-shot例のみで最先端の性能を達成し、4,202件のインスタンスで訓練された教師ありモデルを上回り、20例のfew-shotデータにおいて29.5%の絶対的F1スコアでSOTAを上回る。

ABSTRACT

Large Language Model (LLM) trained on a mixture of text and code has demonstrated impressive capability in translating natural language (NL) into structured code. We observe that semantic structures can be conveniently translated into code and propose Code4Struct to leverage such text-to-structure translation capability to tackle structured prediction tasks. As a case study, we formulate Event Argument Extraction (EAE) as converting text into event-argument structures that can be represented as a class object using code. This alignment between structures and code enables us to take advantage of Programming Language (PL) features such as inheritance and type annotation to introduce external knowledge or add constraints. We show that, with sufficient in-context examples, formulating EAE as a code generation problem is advantageous over using variants of text-based prompts. Despite only using 20 training event instances for each event type, Code4Struct is comparable to supervised models trained on 4,202 instances and outperforms current state-of-the-art (SOTA) trained on 20-shot data by 29.5% absolute F1. Code4Struct can use 10-shot training data from a sibling event type to predict arguments for zero-resource event types and outperforms the zero-shot baseline by 12% absolute F1.

研究の動機と目的

  • 大規模言語モデル(LLMs)のコード生成能力を活用して、自然言語処理における低リソースなイベント構造予測の課題に取り組む。
  • 構造的予測タスクにおけるテキストベースのプロンプトの限界を克服するため、意味的構造を実行可能コードにマッピングする。
  • 継承や型注釈などのプログラミング言語の特徴を活用して、イベントオントロジーにおける構造的制約と階層的関係をエンコードする。
  • 継承を用いて高リソースな兄弟イベントタイプから知識を転移させることで、低リソースなイベントタイプに対するゼロショット予測を可能にする。
  • 十分なコンテキスト例が利用可能な状況下で、コードベースのプロンプトがテキストベースのプロンプトを上回ることを示す。

提案手法

  • オントロジーからのイベントおよびエンティティタイプを、引数役割をクラス属性として、データ型を指定する型注釈を用いてPythonクラス定義として表現する。
  • 継承を用いてイベントタイプ間の階層的関係(例:TransportはMovementを継承)をモデル化し、関連するイベントタイプ間での知識転移を可能にする。
  • 3つの構成要素からなるプロンプトを構築する:(1) オントロジーのコード、(2) kショットのコンテキスト例、(3) LLMが完了する予定の部分的クラスインスタンス化プロンプト。
  • LLM(例:code-davinci-002)を完全なプロンプトで条件づけ、ターゲットイベントクラスの完全なコードインスタンス生成を促す。
  • 生成されたコードを解析し、入力文から抽出されたエンティティを用いてクラスをインスタンス化することで、予測されたイベントアーギュメントを抽出する。
  • 引数のデフォルト値(例:空のリスト)を活用することで、同じ役割にゼロ個または複数個のフィラーを自然にサポートし、構造の柔軟性を向上させる。

実験結果

リサーチクエスチョン

  • RQ1構造的プログラミング言語の特徴を活用したコード生成は、テキストベースのプロンプトと比較して、few-shotイベント構造予測を改善できるか?
  • RQ2プログラミング言語における継承は、高リソースなイベントタイプからゼロリソースなイベントタイプへの知識転送をどの程度可能にするか?
  • RQ3十分なコンテキスト例が提供された状況下で、F1スコアの観点からコードベースのプロンプトはテキストベースのプロンプトを上回るか?
  • RQ4わずか20件程度のトレーニング例(例:20件)しか利用できない状況で、コードベースのアプローチは完全に教師ありモデルと同等の性能を発揮できるか?
  • RQ5コードにおける型注釈とデフォルト値の使用は、EAEにおける複雑な引数構造のモデリングを改善するか?

主な発見

  • 1イベントタイプあたり20例のトレーニングデータでのみ、Code4Structは現在のSOTAモデルを29.5%の絶対的F1スコアで上回る。
  • 20例のfew-shotデータで評価された際、Code4Structは4,202件のインスタンスで訓練された完全な教師ありモデルを上回る性能を示した。
  • 継承を活用することで、10例の兄弟イベントタイプからの例を用いることで、ゼロリソースのイベントタイプで12%の絶対的F1スコアの向上を達成した。
  • 十分なコンテキスト例が提供された状況下で、コードベースのプロンプトアプローチは複数のLLMにわたって、2つのテキストベースのプロンプトの変種を常に上回った。
  • 型注釈とデフォルト値を活用することで、複数またはゼロ個のフィラーを持つような複雑な引数構造を自然にモデリングできるようになった。
  • 本アプローチは強力な一般化性能を示し、ゼロショット性能が20例と50例のfew-shot設定の両方でSOTAモデルを上回った。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。