CodeReviewer: AIによるコードレビュー

  • CodeReviewer: Pre-Training for Automating Code Review Activities [36.4]
    本研究は,コードレビューシナリオにおけるタスクの事前学習技術を活用することに焦点を当てる。 私たちは、最も人気のある9つのプログラミング言語で、オープンソースのプロジェクトから、現実世界のコード変更とコードレビューの大規模なデータセットを収集します。 コード差分とレビューをよりよく理解するために、コードレビューセナリオに特化した4つの事前トレーニングタスクを利用する事前トレーニングモデルであるCodeReviewerを提案する。
    論文  参考訳(メタデータ)   (Thu, 17 Mar 2022 05:40:13 GMT)
    • コードレビューのため「Code Change Quality Estimation」「Code Review Generation」「Code Refinement 」という3つのタスクを提案、データセットを作成、モデル構築・評価を実施したとのこと。1つ1つが簡単ではないタスクのように思えるが、自動化できるととても有用そう。
    • コードやデータは公開予定とのこと

ソースコード分析への機械学習活用のサーベイ

  • A Survey on Machine Learning Techniques for Source Code Analysis [14.1]
    ソースコード解析に応用された機械学習の領域における現在の知識を要約することを目的としている。 そこで本研究では,2002年から2021年にかけて,広範囲にわたる文献検索を行い,研究364点を同定した。
    論文  参考訳(メタデータ)   (Mon, 18 Oct 2021 20:13:38 GMT)
    • 本文39ページ、引用数369と大規模なサーベイ。
    • ソフトウェアテスト、ソースコード表現、ソースコードの品質分析、プログラム合成、コード補完、リファクタリング、コード要約、脆弱性解析などソースコード分析における機械学習の利用とそのアプローチが把握できる。

CodeQA: プログラムコードに対するQuestion Answering

  • CodeQA: A Question Answering Dataset for Source Code Comprehension [82.6]
    コードスニペットと質問が与えられたら、テキストによる回答を生成する必要がある。 CodeQAには、119,778の問合せペアを持つJavaデータセットと、70,085の問合せペアを持つPythonデータセットが含まれている。
    論文  参考訳(メタデータ)   (Fri, 17 Sep 2021 06:06:38 GMT)
    • ソースコードに対するQuestion Answeringを行うためのデータセット。コメント文などから生成しているそうだが、他にあまり見ない問題設定のよう思う。
    • リポジトリはhttps://github.com/jadecxliu/CodeQA

Program Synthesis with Large Language Models: 大規模言語モデルとプログラミング

  • Program Synthesis with Large Language Models [40.4]
    我々はPythonにおけるプログラム合成のための大規模言語モデルを評価する。 合成性能はモデルサイズと対数的にスケールすることがわかった。 ヒトからの自然言語フィードバックは、モデルの初期予測と比較してエラー率を半減することがわかった。 最高のモデルでさえ、特定の入力を与えられたプログラムの出力を予測できないことが分かりました。
    論文  参考訳(メタデータ)   (Mon, 16 Aug 2021 03:57:30 GMT)
    • 244M~137Bパラメータの言語モデルでプログラム合成タスクを試した論文。合成性能はモデルサイズと対数的にスケールするという結果が興味深い。Scaling Lawが思い浮かぶ。
    • 人間からの(自然言語による)フィードバックによってエラー率が減る結果はcoplilotのようなシステムが有望であることを示しているような気がする。(一方である程度コードを読める能力がないと使いづらいのは機械翻訳と同じ印象)