Open ShotaArima opened 1 month ago
攻撃アルゴリズム(LowProFoolとDeepFool)の実装に問題がある可能性があります。特に、摂動の計算や適用方法を確認する必要があります。 評価指標の計算方法に問題がある可能性があります。特に、距離計算や成功率の判定方法を確認する必要があります。 データの前処理や正規化に問題がある可能性があります。極端に小さい値や、すべての標準偏差が0になっていることは、データのスケールに問題があることを示唆しています。 モデルの学習や評価に使用されているデータセットが適切でない、または十分に多様性がない可能性があります。
これらの問題を解決するためには、以下のステップを踏むことをお勧めします:
攻撃アルゴリズムの実装を詳細にレビューし、論文の記述と一致していることを確認する。 評価指標の計算方法を確認し、正しく実装されていることを確認する。 データの前処理と正規化の方法を確認し、適切なスケールになっていることを確認する。 より小さなサブセットのデータでテストを行い、各ステップの出力を詳細に確認する。 モデルの学習プロセスを確認し、適切に学習されていることを確認する。
LowProFool と DeepFool のパラメータ調整:
特徴量の重要度ベクトル v の計算方法の確認:
クリッピング処理の確認:
評価指標の計算方法の確認:
Method | SuccessRate | normdelta_mean | n_std | weighted_mean | w_std | mean_dists_at_org_weighted | mdow_std | mean_dists_at_tgt_weighted | mdtw_std |
---|---|---|---|---|---|---|---|---|---|
LowProFool | 0.1 | 0.798194 | 0.0 | 0.254943 | 0.0 | 0.857679 | 0.0 | 0.791707 | 0.0 |
Deepfool | 0.1 | 0.967399 | 0.0 | 0.300362 | 0.0 | 0.857679 | 0.0 | 0.821860 | 0.0 |
両手法の摂動ノルム(normdelta_meanとweighted_mean)がより現実的で比較可能になりました。これは、LowProFoolの値が極端に小さかった以前の結果からの大きな改善です。
元のサンプルと目標サンプルでの重み付き平均距離(mean_dists_at_org_weightedとmean_dists_at_tgt_weighted)が両手法で異なる値になり、期待される挙動により近くなりました。
これは多分うまく動作していないので、修正する必要あり