論文の概要: Investigating the Performance of Language Models for Completing Code in Functional Programming Languages: a Haskell Case Study
- arxiv url: http://arxiv.org/abs/2403.15185v1
- Date: Fri, 22 Mar 2024 13:13:13 GMT
- ステータス: 処理完了
- システム内更新日: 2024-03-25 17:29:06.780717
- Title: Investigating the Performance of Language Models for Completing Code in Functional Programming Languages: a Haskell Case Study
- Title(参考訳): 関数型プログラミング言語におけるコード補完のための言語モデルの性能調査:Haskellケーススタディ
- Authors: Tim van Dam, Frank van der Heijden, Philippe de Bekker, Berend Nieuwschepen, Marc Otten, Maliheh Izadi,
- Abstract要約: 関数型プログラミング言語Haskell上で、コードのための2つの言語モデル、CodeGPTとUniXcoderを評価した。
HuggingFace上で公開されているHaskellデータセットから得られたHaskell関数のモデルを微調整し、評価する。
我々の自動評価では, LLMの事前学習における命令型プログラミング言語の知識は, 関数型言語にうまく移行しない可能性が示唆された。
- 参考スコア(独自算出の注目度): 2.792812922172466
- License: http://creativecommons.org/licenses/by-nc-nd/4.0/
- Abstract: Language model-based code completion models have quickly grown in use, helping thousands of developers write code in many different programming languages. However, research on code completion models typically focuses on imperative languages such as Python and JavaScript, which results in a lack of representation for functional programming languages. Consequently, these models often perform poorly on functional languages such as Haskell. To investigate whether this can be alleviated, we evaluate the performance of two language models for code, CodeGPT and UniXcoder, on the functional programming language Haskell. We fine-tune and evaluate the models on Haskell functions sourced from a publicly accessible Haskell dataset on HuggingFace. Additionally, we manually evaluate the models using our novel translated HumanEval dataset. Our automatic evaluation shows that knowledge of imperative programming languages in the pre-training of LLMs may not transfer well to functional languages, but that code completion on functional languages is feasible. Consequently, this shows the need for more high-quality Haskell datasets. A manual evaluation on HumanEval-Haskell indicates CodeGPT frequently generates empty predictions and extra comments, while UniXcoder more often produces incomplete or incorrect predictions. Finally, we release HumanEval-Haskell, along with the fine-tuned models and all code required to reproduce our experiments on GitHub (https://github.com/AISE-TUDelft/HaskellCCEval).
- Abstract(参考訳): 言語モデルに基づくコード補完モデルは急速に普及し、何千人もの開発者が様々なプログラミング言語でコードを書くのを助ける。
しかし、コード補完モデルの研究は通常、PythonやJavaScriptのような命令型言語に焦点を当てており、関数型プログラミング言語の表現が不足している。
その結果、これらのモデルはHaskellのような関数型言語ではよく機能しない。
本研究は,コードに対する2つの言語モデルであるCodeGPTとUniXcoderの性能を,関数型プログラミング言語Haskell上で評価する。
HuggingFace上で公開されているHaskellデータセットから得られたHaskell関数のモデルを微調整し、評価する。
さらに,新たに翻訳したHumanEvalデータセットを用いて,手動でモデルの評価を行った。
我々の自動評価では,LLMの事前学習における命令型プログラミング言語の知識は関数型言語にうまく伝達されないが,関数型言語上でのコード補完は実現可能である。
これにより、より高品質なHaskellデータセットの必要性が示される。
HumanEval-Haskellのマニュアル評価では、CodeGPTは空の予測や追加のコメントを頻繁に生成するが、UniXcoderは不完全または誤った予測を生成することが多い。
最後に、HumanEval-Haskellと微調整されたモデル、そしてGitHubで実験を再現するために必要なすべてのコードをリリースします(https://github.com/AISE-TUDelft/HaskellCCEval)。
関連論文リスト
- CRUXEval-X: A Benchmark for Multilingual Code Reasoning, Understanding and Execution [50.7413285637879]
CRUXEVAL-Xコード推論ベンチマークには19のプログラミング言語が含まれている。
各言語に対して少なくとも600人の被験者で構成され、合計19Kのコンテンツ一貫性テストがある。
Pythonでのみトレーニングされたモデルでさえ、他の言語で34.4%のPass@1を達成することができる。
論文 参考訳(メタデータ) (2024-08-23T11:43:00Z) - Can Large Language Models Write Parallel Code? [0.5317767988097261]
大規模言語モデルは、ソフトウェア開発の一般的なツールになりつつある。
本稿では,最先端言語モデルによる並列コード生成能力について検討する。
論文 参考訳(メタデータ) (2024-01-23T08:25:12Z) - GenCodeSearchNet: A Benchmark Test Suite for Evaluating Generalization
in Programming Language Understanding [5.9535699822923]
我々は,言語モデルの言語理解能力を評価するために,GenCodeSearchNet (GeCS) という新しいベンチマークデータセットを提案する。
完全なデータセットの一部として、我々が導入した新しい手作業でキュレートされたサブセットであるStatCodeSearchは、人気があるが、これまでのところあまり表現されていないプログラミング言語である。
評価と比較のために、細調整されたBERTスタイルモデルとGPTスタイルの大規模言語モデルを用いて、いくつかのベースライン結果を収集した。
論文 参考訳(メタデータ) (2023-11-16T09:35:00Z) - L2CEval: Evaluating Language-to-Code Generation Capabilities of Large
Language Models [102.00201523306986]
大規模言語モデル(LLM)の言語間コード生成能力を体系的に評価するL2CEvalを提案する。
モデルのサイズ、事前学習データ、命令チューニング、異なるプロンプトメソッドなど、それらのパフォーマンスに影響を与える可能性のある要因を分析する。
モデル性能の評価に加えて、モデルに対する信頼性校正を計測し、出力プログラムの人間による評価を行う。
論文 参考訳(メタデータ) (2023-09-29T17:57:00Z) - A Static Evaluation of Code Completion by Large Language Models [65.18008807383816]
単純なプログラミング問題に対するモデル生成コードの機能的正当性を評価するために,実行ベースベンチマークが提案されている。
プログラムを実行せずにエラーを検出するlinterのような静的解析ツールは、コード生成モデルを評価するために十分に研究されていない。
抽象構文木を利用して,Pythonのコード補完における静的エラーを定量化する静的評価フレームワークを提案する。
論文 参考訳(メタデータ) (2023-06-05T19:23:34Z) - CodeBERTScore: Evaluating Code Generation with Pretrained Models of Code [75.08995072899594]
コード生成のための評価指標であるCodeBERTScoreを提案する。
CodeBERTScoreは生成されたコードの前に入力された自然言語をエンコードする。
CodeBERTScoreは、既存のすべての指標よりも、人間の嗜好と機能的正しさとの相関性が高いことがわかった。
論文 参考訳(メタデータ) (2023-02-10T22:12:05Z) - Multi-lingual Evaluation of Code Generation Models [82.7357812992118]
本稿では,MBXPとMultilingual HumanEval,MathQA-Xという,評価コード生成モデルに関する新しいベンチマークを提案する。
これらのデータセットは10以上のプログラミング言語をカバーする。
コード生成モデルの性能を多言語で評価することができる。
論文 参考訳(メタデータ) (2022-10-26T17:17:06Z) - A Systematic Evaluation of Large Language Models of Code [88.34057460577957]
コードの大規模な言語モデル(LM)は、最近、コードを完成させ、自然言語記述からコードを合成する大きな可能性を示しています。
現在の最先端のコードLMは公開されておらず、モデルやデータ設計の決定について多くの疑問が残されている。
Codexはオープンソースではありませんが、既存のオープンソースモデルはいくつかのプログラミング言語でクローズな結果が得られることが分かりました。
GPT-2アーキテクチャに基づいた2.7Bパラメータを持つ新しいモデルPolyCoderをリリースし、12のプログラミング言語を1台のマシンで249GBのコードでトレーニングした。
論文 参考訳(メタデータ) (2022-02-26T15:53:55Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。