コンテンツにスキップ

2025年6月14日

今週の活動

  • BugHunterデータセットに関する論文に書かれている条件を参考にして、論文で示された評価結果を再現するプログラムを作成
    • https://www.sciencedirect.com/science/article/pii/S0164121220301436
    • 満たすべき条件(論文で言及されていた条件)
      • メソッドレベルのallカテゴリーのデータセット
      • ランダムフォレスト
      • Random Under Sampling
      • 10分割交差検証
    • 追加で設定した条件(論文で言及されていなかった条件)
      • TF-IDFを用いた特徴量抽出
      • One-Hotエンコーディング
      • Feature Importanceによる特徴量選択
      • 数値データの正規化
      • Removeフィルタリング
    • 期待される評価結果
      • F1スコア: およそ0.66
    • 検証結果
      • F1スコア: およそ0.61
    • 作成したプログラム

得られた成果

  • BugHunterデータセットを実際に使用してバグの有無を予測するモデルを作成
  • 論文で示された評価結果を再現するためのプログラムを作成
  • ベースラインを設定
    • メソッドレベルのallカテゴリーのデータセット
      • F1スコア: 0.61

直面した課題

  • 以下の方法でモデルの精度向上を試みたが、ほとんど効果がなかった
    • 機械学習アルゴリズムの変更
      • 勾配ブースティング: LightGBM, XGBoost, CatBoost
    • 新しい特徴量の追加
      • コードメトリクスのグループ化
    • 次元削減手法の変更
      • 独立変数と目的変数が線形な関係であると仮定して、ランダムフォレストの代わりにPCAを適用して次元削減を実施
  • モデル自体の改良は難しい
    • BugHunterデータセットがコードメトリクスの変化量を扱えていないことを指摘し、その問題を解決する方が簡単

来週の計画

  • BugHunterデータセットの問題点を整理し、解決すべきことを明らかにする