CodeSearchNetチャレンジ:意味的コード検索の現状評価
本文の状態
日本語全文を表示中
詳細モードで約2分の本文を読めます。
同じ出来事の情報源
この情報源を基点に整理
Hamel Husain
CodeSearchNetチャレンジは、コードの意味的理解に基づく検索技術の現状を評価する取り組みで、自然言語クエリによるコード検索の精度向上を目指しています。
Source Article
元記事を日本語で読む
本文に関係しない購読案内、埋め込み通知、サイト内プロモーションは除いています。
本記事は、自然言語のクエリから関連するコードを検索するタスク「意味的コード検索」の進展を評価するために、「CodeSearchNet Challenge」とそれに関連する大規模なデータセットを公開したことを報告するものである。
意味的コード検索は、一般的な情報検索とは異なり、曖昧な概念やアイデアを表現する自然言語と、省略的で技術的なコードの言語との間にある隔たりを埋める必要がある、重要な課題である。この課題への取り組みを促進し、進捗を適切に評価するため、研究チームは2つの主要なリソースを構築した。
第一に、「CodeSearchNet コーパス」である。これは、Go、Java、JavaScript、PHP、Python、Rubyの6つのプログラミング言語にわたる約600万個のオープンソース関数から構成される大規模なデータセットである。さらに、関数のドキュメントを機械的に収集・前処理することで、約200万の関数に対して、クエリのような自然言語の記述を自動生成して付与している。これにより、教師あり学習のための訓練データを提供する。
第二に、「CodeSearchNet チャレンジ」である。これは、上記コーパスから抽出された可能性のある結果に対して、専門家による関連性のアノテーション(注釈)を約4,000件施した、99個の自然言語クエリで構成される評価用ベンチマークである。この厳密にラベル付けされたクエリセットにより、異なるコード検索モデルの性能を公平に比較・評価することが可能となる。
記事では、このコーパスと専門家ラベルの作成方法に加えて、このタスクに対するいくつかのシンプルなベースライン手法も提示している。研究チームは、このチャレンジと公開データセットが、研究者や実践者による意味的コード検索のさらなる研究を促進することを期待している。また、進捗を可視化するために、競争コンテストとリーダーボードをホストする予定であり、将来的にはクエリ数やプログラミング言語の拡充も計画している。
要約すると、本取り組みは、意味的コード検索という難しい課題に対して、初めての大規模で多言語にわたる評価基盤を整備し、研究コミュニティの集中的な取り組みを呼びかけることを目的としている。
原文を表示
--> Computer Science > Machine Learning
[Submitted on 20 Sep 2019 (v1), last revised 8 Jun 2020 (this version, v3)] Title:CodeSearchNet Challenge: Evaluating the State of Semantic Code Search
Abstract:Semantic code search is the task of retrieving relevant code given a natural language query. While related to other information retrieval tasks, it requires bridging the gap between the language used in code (often abbreviated and highly technical) and natural language more suitable to describe vague concepts and ideas. To enable evaluation of progress on code search, we are releasing the CodeSearchNet Corpus and are presenting the CodeSearchNet Challenge, which consists of 99 natural language queries with about 4k expert relevance annotations of likely results from CodeSearchNet Corpus. The corpus contains about 6 million functions from open-source code spanning six programming languages (Go, Java, JavaScript, PHP, Python, and Ruby). The CodeSearchNet Corpus also contains automatically generated query-like natural language for 2 million functions, obtained from mechanically scraping and preprocessing associated function documentation. In this article, we describe the methodology used to obtain the corpus and expert labels, as well as a number of simple baseline solutions for the task. We hope that CodeSearchNet Challenge encourages researchers and practitioners to study this interesting task further and will host a competition and leaderboard to track the progress on the challenge. We are also keen on extending CodeSearchNet Challenge to more queries and programming languages in the future.
Focus to learn more arXiv-issued DOI via DataCite Submission history
Bibliographic and Citation Tools
Code, Data and Media Associated with this Article
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.
関連記事
News to Guide
ニュースの次に確認する
発表内容を、現在の料金や仕様と照らし合わせられる関連ガイドです。
今日のまとめ
AIデイリーブリーフで今日の重要ニュースをまとめ読み