要約
コード監査では、保護されたソースからのコードが含まれていないことを検証することで、開発されたコードが標準、規制、および著作権保護に準拠していることを確認します。
ソフトウェア開発プロセスにおけるコーディング アシスタントとしての大規模言語モデル (LLM) の最近の出現により、コード監査に新たな課題が生じています。
これらのモデルをトレーニングするためのデータセットは、主に公開されているソースから収集されます。
開発者のコードがすでにデータセットに含まれているため、これにより知的財産侵害の問題が生じます。
したがって、LLM を使用して開発されたコードを監査することは、これらのモデルのトレーニング データセットにアクセスできないことを考えると、開発中に使用される LLM が特定の著作権で保護されたコードでトレーニングされているかどうかを確実に主張することが困難であるため、困難です。
トレーニング データセットが非公開であることを考えると、コード クローン検出などの従来のアプローチは著作権侵害を主張するには不十分です。
この課題に対処するために、私たちは新しいアプローチである TraWiC を提案します。
LLM のトレーニング データセットに含まれるコードを検出するためのメンバーシップ推論に基づく、モデルに依存しない解釈可能な方法。
各プログラムに固有の構文識別子と意味識別子を抽出して、コードの包含を検出するための分類器をトレーニングします。
私たちの実験では、TraWiC が LLM のトレーニングに使用されたコードの 83.87% を検出できることがわかりました。
比較すると、普及しているクローン検出ツール NiCad は 47.64% しか検出できません。
TraWiC は、その優れたパフォーマンスに加えて、CodeWhisperer リファレンス トラッカーなどのツールの監査プロセス中に数千のコード スニペットにわたって実行されるペアごとのクローン検出とは対照的に、リソースのオーバーヘッドが低くなります。
要約(オリジナル)
Code auditing ensures that the developed code adheres to standards, regulations, and copyright protection by verifying that it does not contain code from protected sources. The recent advent of Large Language Models (LLMs) as coding assistants in the software development process poses new challenges for code auditing. The dataset for training these models is mainly collected from publicly available sources. This raises the issue of intellectual property infringement as developers’ codes are already included in the dataset. Therefore, auditing code developed using LLMs is challenging, as it is difficult to reliably assert if an LLM used during development has been trained on specific copyrighted codes, given that we do not have access to the training datasets of these models. Given the non-disclosure of the training datasets, traditional approaches such as code clone detection are insufficient for asserting copyright infringement. To address this challenge, we propose a new approach, TraWiC; a model-agnostic and interpretable method based on membership inference for detecting code inclusion in an LLM’s training dataset. We extract syntactic and semantic identifiers unique to each program to train a classifier for detecting code inclusion. In our experiments, we observe that TraWiC is capable of detecting 83.87% of codes that were used to train an LLM. In comparison, the prevalent clone detection tool NiCad is only capable of detecting 47.64%. In addition to its remarkable performance, TraWiC has low resource overhead in contrast to pair-wise clone detection that is conducted during the auditing process of tools like CodeWhisperer reference tracker, across thousands of code snippets.
arxiv情報
著者 | Vahid Majdinasab,Amin Nikanjam,Foutse Khomh |
発行日 | 2024-09-30 09:16:47+00:00 |
arxivサイト | arxiv_id(pdf) |
提供元, 利用サービス
arxiv.jp, Google