研究概要 |
本課題を通じて, 我々はソースコードのみを入力として与え, メトリクスなどの測定無しにFault-proneモジュールの予測が可能となる手法を提案している. 本年度は, 提案するFault-proneフィルタリングの理論的妥当性, および, 実証的な妥当性の確認を行うための実験環境を整備し, 実験を行った. 理論的な観点からはpositive unlabeled学習とよばれる手法が本研究での対象であるソフトウェアの不具合検出に有効であろうと予想し, それを取り入れた手法の改良を進めている. 実証的な妥当性の観点からは, ソースコード学習時の単位を差分単位へと変更し, さらに判別時の閾値を動的に変化させる手法を提案した. 提案する手法の有効性を検証するために, オープンソースソフトウェアのリポジトリを利用した実証実験を実施した. 実験の結果, 提案する方法での学習により, 従来の方法に対して数パーセントの精度向上が確認された. さらに, 事前学習が予測精度にどの程度関与するかを調べるための実験も行い, あまり多大な学習を与えても意味がないことなどを確認した.
|