Skip to main content
QUICK REVIEW

[論文レビュー] GPT-Neo: Large Scale Autoregressive Language Modeling with Mesh-Tensorflow

Dan Hendrycks, Steven Basart|arXiv (Cornell University)|Mar 21, 2021
Software Engineering Research参考文献 32被引用数 137
ひとこと要約

本論文は APPS を用いたコード生成を評価し、10,000 問題のベンチマークを導入するとともに、APPS でファインチューニングした GPT-Neo が顕著であるが限定的なコード生成能力を達成し、モデルが大規模化するにつれて構文エラーが減少することを示す。

ABSTRACT

GPT-Neo is an implementation of model & data-parallel GPT-2 and GPT-3-like models, utilizing Mesh Tensorflow for distributed support. This codebase is designed for TPUs. It should also work on GPUs, though we do not recommend this hardware configuration.

研究の動機と目的

  • 自然言語から Python へのコード生成のための厳密なベンチマーク(APPS)を定義する。
  • 自動テストケース評価を用いて、実コード生成タスクにおける大規模言語モデルの性能を評価する。
  • コード生成性能に対するモデルサイズ、ファインチューニング、デコード戦略の影響を分析する。

提案手法

  • 10,000 問題、131,777 のテストケース、232,421 の人間書きソリューションを備える APPS を構築する。
  • GitHub由来の Python データをクリーンアップして事前学習した GPT-2 を用い、APPS の問題文とフォーマットでファインチューニングする。
  • 生成されたプログラムをテストケースに対して実行してコードを評価する(テストケース平均)し、すべてのテストケースを通過することを要求する(厳密な正解率)。
  • ビーム幅5のビームサーチを使用し、問題ごとに5ビームを評価する。
  • Introductory/Interview/Competitive の難易度レベルで、GPT-2 の各種 variants、GPT-Neo、GPT-3(few-shot)、および codex 風の大型モデルを比較する。

実験結果

リサーチクエスチョン

  • RQ1自然言語による説明が与えられたとき、巨大言語モデルはどれだけうまく Python コードを生成できるか?
  • RQ2専用のコード生成ベンチマークでファインチューニングすることは、一般的な事前学習と比較して性能を改善するか?
  • RQ3APPS でのモデルサイズ、構文エラー、およびコードの正確さの関係はどうなっているか?
  • RQ4自動評価指標(テストケース精度対 BLEU)は、実際のコード正確性とどのように相関するか?

主な発見

  • GPT-Neo 2.7B は Introductory 問題で、単一の生成解で約 15% のテストケースを通過し、厳密精度は約 4% 程度。
  • 構文エラーはモデルサイズとファインチューニングにより劇的に減少する;GPT-Neo 2.7B は Introductory 問題で約 3% の構文エラー。
  • BLEU スコアはコード正確性の信頼できる指標ではなく、金標準の正確性と逆相関になることがある。
  • GPT-3 (175B) は APPS で few-shot 設定でも非常に少数の問題しか解けず、その設定でのコード生成能力は限定的である。
  • より大きなコード志向モデル(Codex風)は GPT-Neo 2.7B より強い性能を示すが、APPS を完全に解くにはまだ遠い。
  • Beam search (Top-5) は正解解の割合を改善し、GPT-Neo 2.7B が Introductory 問題でより高い厳密正解率を達成するのを可能にする。

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

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

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

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