Skip to main content
QUICK REVIEW

[論文レビュー] Language Modelling for Source Code with Transformer-XL

Thomas Dowdell, Hongyu Zhang|arXiv (Cornell University)|Jul 31, 2020
Software Engineering Research参考文献 32被引用数 4
ひとこと要約

本論文では、大規模なPythonコーパス上で、Transformer-XLがソースコード言語モデルとしてRNNベースのモデル(LSTMおよびGRU)を上回ることを評価し、ソフトウェアの自然さを捉える能力を示している。8層のTransformer-XLは、2倍の深さであるにもかかわらず、4層のRNNモデルの半分以下の時間で学習が完了し、顕著に優れた性能を発揮しており、コードモデリングタスクにおいて優れた効率性を持つ選択肢であることが立証された。

ABSTRACT

It has been found that software, like natural language texts, exhibits "naturalness", which can be captured by statistical language models. In recent years, neural language models have been proposed to represent the naturalness of software through deep learning. In this paper, we conduct an experimental evaluation of state-of-the-art neural language models for source code, including RNN-based models and Transformer-XL based models. Through experiments on a large-scale Python code corpus, we find that the Transformer-XL model outperforms RNN-based models (including LSTM and GRU models) in capturing the naturalness of software, with far less computational cost.

研究の動機と目的

  • 最新のニューラル言語モデルがソースコードに適用される状況を評価し、特にTransformer-XLとRNNベースのモデル(LSTM、GRU)に焦点を当てる。
  • Transformer-XLが言語モデリングを通じてソフトウェアの自然さをどれだけ効果的に捉えられるかを評価する。
  • 大規模なPythonコードデータセット上で、モデル間の学習効率と性能を比較する。
  • より深いTransformer-XLアーキテクチャが、計算コストを管理可能な範囲でより良い結果をもたらすかどうかを調査する。

提案手法

  • 研究は、言語モデルの学習および評価に用いる大規模なPythonコードコーパスを採用している。
  • 4層および8層のTransformer-XL、および4層のLSTMおよびGRUモデルの4つのモデルを実装し、比較している。
  • モデルは、シーケンスのコードトークンを入力として、次のトークンを予測するように学習し、交差エントロピー損失を用いている。
  • Transformer-XLの自己注意機構により、シーケンス全体にわたる並列計算と長距離依存関係のモデリングが可能になっている。
  • Transformer-XLは、セグメントごとの再帰とメモリ状態を用いることで、シーケンス境界を超えて文脈を維持し、長距離理解を強化している。
  • 計算効率の公平な比較のため、同一のハードウェア上で学習時間を正規化している。

実験結果

リサーチクエスチョン

  • RQ1Transformer-XLモデルは、RNNベースのモデル(LSTMおよびGRU)に比べ、ソースコードの自然さをよりよくモデリングできるか?
  • RQ2Transformer-XLの深さを増すと、性能と学習時間にどのような影響があるか?
  • RQ3Transformer-XLは、RNNモデルと比較して、ソースコード言語モデルの学習において相対的にどの程度の計算効率を発揮するか?
  • RQ4Transformer-XLの長距離依存関係モデリングは、RNNと比較してコード表現を改善できるか?

主な発見

  • 4層のTransformer-XLは、交差エントロピーの周辺度(perplexity)が低いため、4層のLSTMおよびGRUモデルよりもソフトウェアの自然さをよりよく捉えている。
  • 8層のTransformer-XLは、4層バージョンよりもさらに優れた性能を示しているが、RNNとTransformer-XLの差に比べて改善幅は小さい。
  • 2倍の層数とパラメータ数を有するにもかかわらず、8層のTransformer-XLは、4層のRNNモデルの半分以下の時間で学習が完了している。
  • 4層のTransformer-XLは正規化された学習時間が1.0で最も短く、LSTM(4.2)およびGRU(3.58)を著しく上回っている。
  • Transformer-XLは著しく短い学習時間で優れた結果を達成しており、高い効率性とスケーラビリティを示している。
  • 結果から、Transformer-XLはRNNベースのモデルよりも、ソースコード言語モデリングにおいてより効果的かつ効率的なアーキテクチャであると示唆される。

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

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

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

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