ShotaArima / demo-lowprofool

0 stars 0 forks source link

警告・二重定義の問題 #15

Closed ShotaArima closed 1 month ago

ShotaArima commented 1 month ago

14 で挙げられていた

3. エラーハンドリング: get_bounds 関数などでのエラーを解決し、より堅牢なコードにする。

警告

  • OpenMLからのデータセット取得時に、複数のアクティブなバージョンが存在するという警告が出ています。
  • DataFrame操作での将来的な非推奨警告が出ています。
  • NearestNeighborsの使用時に、特徴量名に関する警告が複数回出ています

    エラーの可能性のある箇所

  • get_bounds関数の定義が複数回行われており、最後の定義と使用方法が一致していない可能性があります。
  • モデルの精度が50%と低く、これは二値分類タスクにおいてランダム予測と同程度です。

    その他

  • 生成された敵対的例のサンプル数が少ない(10個)ため、結果の信頼性が低い可能性があります。
  • LowProFoolDeepfoolの両方で成功率が10%と低くなっています。

解決方法

  1. get_bounds関数の定義を一つに統一し、使用方法を一貫させる。
    • 以下のところで二重に定義されている

https://github.com/ShotaArima/demo-lowprofool/blob/395df20e53e1543f75fd93ed810e196a652b972c/src/Playground.ipynb#L228-L229

https://github.com/ShotaArima/demo-lowprofool/blob/395df20e53e1543f75fd93ed810e196a652b972c/src/Playground.ipynb#L516-L546

  1. モデルの学習プロセスを見直し、精度を向上させる(特徴量エンジニアリング、ハイパーパラメータチューニングなど)。
  2. 敵対的例の生成数を増やし、より信頼性の高い結果を得る。
  3. LowProFoolDeepfoolのパラメータを調整し、成功率を向上させる。
  4. 警告メッセージに対応し、最新のライブラリバージョンに適合したコードに更新する。