When Less is More: On the Value of ‘Co-training’ for Semi-Supervised Software Defect Predictors

要約

モジュールに欠陥があるか正常であるかのラベルを付けることは、費用のかかる作業です。
したがって、トレーニングに使用できるラベル付きデータの量には制限があることがよくあります。
半教師あり分類器は、モデルのトレーニングに使用するラベルの数がはるかに少なくなります。
ただし、いくつか例を挙げると、自己ラベル付け、共トレーニング、最大マージン、グラフベースの方法など、半教師ありの方法が多数あります。
これらのメソッドのうち、SE で欠陥を予測するためにテストされたのはほんの一握りであり、SE においても、それらのメソッドはほんの一握りのプロジェクトでテストされています。
この論文では、55 人の半教師あり学習者を 714 を超えるプロジェクトに広範囲に適用しています。
私たちは、半教師ありの「共同トレーニング法」が他のアプローチよりも大幅にうまく機能することを発見しました。
具体的には、わずか 2.5% のデータにラベルを付けた後、100% のデータを使用する予測に匹敵する予測を行います。
ただし、共同トレーニング方法の具体的な選択は、ユーザーの特定の目標に基づいて慎重に選択する必要があるため、共同トレーニングは慎重に使用する必要があります。
また、一般的に使用されている共同トレーニング方法 (「マルチビュー」- 異なる学習者が異なる列のセットを取得する) では予測が改善されないことも警告します (実行時間の追加が多すぎると、11 時間対 1.8 時間のコストがかかります)
)。
これらの削減がソフトウェア分析の他の領域でも見られるかどうかをテストすることは未解決の質問であり、今後の研究に値します。
他の領域の探索を支援するために、使用されているすべてのコードは https://github.com/ai-se/Semi-Supervised で入手できます。

要約(オリジナル)

Labeling a module defective or non-defective is an expensive task. Hence, there are often limits on how much-labeled data is available for training. Semi-supervised classifiers use far fewer labels for training models. However, there are numerous semi-supervised methods, including self-labeling, co-training, maximal-margin, and graph-based methods, to name a few. Only a handful of these methods have been tested in SE for (e.g.) predicting defects and even there, those methods have been tested on just a handful of projects. This paper applies a wide range of 55 semi-supervised learners to over 714 projects. We find that semi-supervised ‘co-training methods’ work significantly better than other approaches. Specifically, after labeling, just 2.5% of data, then make predictions that are competitive to those using 100% of the data. That said, co-training needs to be used cautiously since the specific choice of co-training methods needs to be carefully selected based on a user’s specific goals. Also, we warn that a commonly-used co-training method (‘multi-view’– where different learners get different sets of columns) does not improve predictions (while adding too much to the run time costs 11 hours vs. 1.8 hours). It is an open question, worthy of future work, to test if these reductions can be seen in other areas of software analytics. To assist with exploring other areas, all the codes used are available at https://github.com/ai-se/Semi-Supervised.

arxiv情報

著者 Suvodeep Majumder,Joymallya Chakraborty,Tim Menzies
発行日 2024-02-15 18:51:53+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.LG, cs.SE パーマリンク