研究期間全体を通して,機械学習システムの評価するという課題に対し,特にソフトウェアバグ予測を対象とした取り組みを行ってきた.従来,バグ予測においてはprecision,recall,F1値などの評価指標が広く用いられてきたが,これらの尺度はデータセット中のバグあり/なしの個体の比率(neg/pos ratio)に大きく影響されることが大きな問題となっていた.そこで,本研究ではneg,posの値に基づいて予測精度の期待値と分散を算出し,それらに基づいた尺度であるneg/pos-normalized accuracy measuresを提案した.提案尺度により,異なるデータセットに対する予測精度の比較が可能となるとともに,多数の予測結果をランク付けすることが可能となった. 最終年度では,複数プロジェクトのデータを用いたバグ予測,および,近年登場した生成系AIを用いた評価についての取り組みを行った.前者については,単一のデータセットによって性能のよい予測モデルが構築できない場合,複数のデータセットを用いて外れ値除去を行うことで,モデルの性能を改善できる場合があることを示した.後者については,多数の予測方法の比較実験の結果,生成系AIでは,バグあり/なしのような2値判別では必ずしも高い性能を示さないことが分かった.ただし,ネーミングバグの予測においては,生成系AIによって名前を生成させ,その結果に基づいて判別を行うことで,ChatGPTのようなAIチャットボットによる予測の精度を高めることができた.
|