分子設計・材料設計・プロセス設計・プロセス管理において、分子記述子・実験条件・合成条件・製造条件・評価条件・プロセス条件・プロセス変数などの特徴量 x と分子・材料の物性・活性・特性や製品の品質などの目的変数 y との間で数理モデル y = f(x) を構築し、構築したモデルに x の値を入力して y の値を予測したり、y が目標値となる x の値を設計したりします。
予測精度の高いモデルを構築するため、x を工夫したり、モデル構築手法を検討したり、ハイパーパラメータを最適化したりします。例えば x のセットの候補を準備したり、回帰分析手法やクラス分類手法の候補を選んだり、ハイパーパラメータの候補を設定したりして、それらの中で比較・検討して予測精度の高いモデルの構築を目指します。
もちろん、それぞれの候補を準備することも重要ですが、モデルの予測制度を適切に評価することも重要です。トレーニングデータとテストデータに分割してトレーニングデータで構築したモデルをテストデータで評価したり、クロスバリデーションやダブルクロスバリデーションで評価したりします。
ハイパーパラメータの選択においてはクロスバリデーションでモデルの予測精度を評価することが多く、x のセットや回帰分析手法・クラス分類手法の選択においてはトレーニングデータ・テストデータ分割やダブルクロスクロスバリデーションでモデルの予測精度を評価することが多いです。
ここで念頭に入れておかなければならないことは、トレーニングデータ・テストデータ分割もクロスバリデーションもダブルクロスバリデーション、も万能ではないということです。もちろん、モデルの「真の予測精度」なるものを見積もるために、様々な工夫がなされており、現状のベストな方法として、トレーニングデータ・テストデータ分割やクロスバリデーションやダブルクロスバリデーションがあります。しかし、それらの方法で仮に予測精度が高いとされる評価値が出たとしても、たまたま偶然に良い数値になっただけだった、という可能性は 0ではありません。特に、サンプルの数が小さく、x の数が大きいときには、chance correlation (偶然の相関) によって、
たまたま偶然に評価値が高く出てしまう、といったことが起きます (評価値が高いとき、それは偶然なのか?真に予測精度が高いのか?、「真の予測精度」が分からない以上、誰にも分かりません)。
もちろん、なるべく「真の予測精度」になるように、ダブルクロスバリデーション (テストデータが最大になるようにトレーニングデータ・テストデータ分割を繰り返すこと) が用いられますが、それでも、たまたま偶然に評価値が出てしまう可能性は 0 ではありません。
このように、評価方法が完璧というわけではありませんので、その評価値を最適化に使っては危険、となります。
そのため、ハイパーパラメータの最適化にクロスバリデーションを用いるときも、x のセットや回帰分析手法・クラス分類手法の選択にトレーニングデータ・テストデータ分割やダブルクロスクロスバリデーションを用いるときも、ハイパーパラメータの候補や x のセットや回帰分析手法・クラス分類手法の中に、無駄な候補・無意味な候補がないことが重要です。
偶然の相関が起きる確率は低くても、候補が膨大であると、たまたま起こる可能性が高くなってしまいます。そのため候補を少なくすることで、偶然の相関が起きる可能性を低くできます。
例えば、ニューラルネットワークモデルのハイパーパラメータとして、ネットワークの構成の候補を考えるときに、原理的に考えて妥当でない構成 (層ごとのニューロン数) を候補に入れてしまうと、たまたま偶然にその妥当でない構成の評価値が大きくなってしまい、(理論的におかしいにもかかわらず) 選択される恐れがあります。
もちろん、x のセットのように、考案してみたものの本当に y との間に関係があるのか不明なこともあり、そのような (可能性が 0 ではない) 場合には、候補の中に入れておくとよいですが、事前にありえない候補については、事前に省くようにしましょう。これにより、サンプルが少ない状況でも、妥当な x のセットや、回帰分析手法・クラス分類手法や、ハイパーパラメータを選択できるようになります。
以上です。
質問やコメントなどありましたら、X, facebook, メールなどでご連絡いただけるとうれしいです。