機械学習のモデル改善:特徴量探索の順番とHP固定の是非
解決したいことの概要
A. 機械学習を進めていく中で特徴量などの候補の探索の順番をどうするか
B. ハイパーパラメータ(HP)は固定すべきかどうか
A
新しい特徴量を試す際などにどのような順番で探索・評価していますか?私は以下の2つを考えています。
網羅的アプローチ
考えうる特徴量をたくさん作って片っ端から試していく方法
段階的アプローチ
- 特徴量候補をテーマごとに考えて、まず、各テーマの代表的な特徴量だけを試して、テーマごとの有効性を判断する。
- 株価予測を例にすると、各テーマは「過去の価格比率」「時間情報」「同業他社の情報」 などで、代表的な特徴量は、同業他社の株価推移など
- 株価予測を例にすると、各テーマは「過去の価格比率」「時間情報」「同業他社の情報」 などで、代表的な特徴量は、同業他社の株価推移など
- 代表的な特徴量が有効だったテーマを深堀して類似の特徴量を作る
- 同業他社の株価が有効なら同業他社の売上推移も検討してみるとか。
- 同業他社の株価が有効なら同業他社の売上推移も検討してみるとか。
段階的アプローチの方が効率的な気がする一方で、代表として選んだ特徴量は有効でないが類似の他の特徴量は有効だったというパターンを見逃してしまうのではないかという懸念があります。
B
特徴量やモデルを一つずつ評価・比較する際、HPは固定していますか? それとも都度最適化していますか?
クロスバリデーションを行う前提で、新しい特徴量を試すたびにHP最適化(Optunaなど)を回すと、計算負荷が非常に大きくなります。
一方で、初期のデータセットで探索した良さげなHPを固定して実験を進めると、本来は有効な特徴量なのにたまたま固定HPとの相性が悪いために「無効」と判断されてしまう場合があるのではないかという懸念があります。
計算コストと評価の公平性というトレードオフを、皆さんはどのように解決していますか?
0 likes