Text-to-Code Generation with Modality-relative Pre-training

要約

最近、大規模な事前トレーニング済み言語モデルが拡張され、プログラミング言語タスクに適用され、大きな成功を収めています。多くの場合、厳密に自然言語モデルのさらなる事前トレーニングを通じて行われます。トレーニング シーケンスには通常、自然言語と (線形化された) プログラミング言語の両方が含まれます。
このようなアプローチは、シーケンスの両方のモダリティを同じ埋め込み空間に効果的にマッピングします。
ただし、プログラミング言語のキーワード (例: 「while」) には、非常に厳密に定義されたセマンティクスがあることがよくあります。
そのため、自然言語の使用法からの転移学習はコード アプリケーションにとって必ずしも有益であるとは限りませんし、その逆も同様です。
すでに事前にトレーニングされた言語モデルを前提として、この研究では、シーケンス トークンがどのモダリティに属しているかに応じて、また下流タスクの最終的な利益に応じて、シーケンス トークンをどのように適応させて異なる方法で表現できるかを調査します。
モダリティ相対トレーニング目標を使用したさらなるモデルの事前トレーニング中に、モダリティ間の埋め込み空間を分離することを実験します。
私たちはテキストからコードへの生成に焦点を当て、2 つのバックボーン モデルと 2 つのテスト セットにわたって一貫した改善を観察し、pass@$k$ と新しい増分変動を測定しました。

要約(オリジナル)

Large pre-trained language models have recently been expanded and applied to programming language tasks with great success, often through further pre-training of a strictly-natural language model–where training sequences typically contain both natural and (linearised) programming language. Such approaches effectively map both modalities of the sequence into the same embedding space. However, programming language keywords (e.g. ‘while’) often have very strictly defined semantics. As such, transfer learning from their natural language usage may not necessarily be beneficial to their code application and vise versa. Assuming an already pre-trained language model, in this work we investigate how sequence tokens can be adapted and represented differently, depending on which modality they belong to, and to the ultimate benefit of the downstream task. We experiment with separating embedding spaces between modalities during further model pre-training with modality-relative training objectives. We focus on text-to-code generation and observe consistent improvements across two backbone models and two test sets, measuring pass@$k$ and a novel incremental variation.

arxiv情報

著者 Fenia Christopoulou,Guchun Zhang,Gerasimos Lampouras
発行日 2024-02-12 10:44:18+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.CL パーマリンク