分子設計・材料設計・プロセス設計・プロセス管理において、分子記述子・実験条件・合成条件・製造条件・評価条件・プロセス条件・プロセス変数などの特徴量 x と分子・材料の物性・活性・特性や製品の品質などの目的変数 y との間で数理モデル y = f(x) を構築し、構築したモデルに x の値を入力して y の値を予測したり、y が目標値となる x の値を設計したりします。
モデルを構築する際、予測精度の高いモデルを構築するために、新しい x を作成して検討したり、x の選択方法を検討したり、x の前処理を検討したり、モデル構築手法を検討したり、サンプルを検討したりします。どれが予測精度向上のボトルネックになっているかは、データセットごとに異なりますし、実際にやってみないと分かりません。
“やってみる” 時に一番大事なことは、上のような何を検討するかではなく、検討した内容をどう評価するかです。この評価方法が間違っていると、最もよく評価された検討方法が間違っていたり、解析の目的に合わない方法になったりしてしまいます。
まず初めに、どのようにモデルの予測性能を評価するか、どのような評価方法であれば、それが良好な結果となった時に解析の目的と合致するかを検討する必要があります。
一般的には、データセットをトレーニングデータとテストデータに分割し、トレーニングデータで構築されたモデルの予測性能をテストデータで評価します。しかし、データセットのサンプル数が非常に小さい時には、トレーニングデータとテストデータに分割すると、トレーニングデータもテストデータもサンプル数がさらに小さくなってしまうため、ダブルクロスバリデーションを用いる方が良いです。
また、例えばソフトセンサーなど、モデルを何らかの評価のために使う時、実際に評価したい y のばらつきがあれば、そのばらつきを含むサンプルをテストデータにする必要があります。一例として、ある銘柄から別の銘柄への切り替え時において精度よく予測したい時には、銘柄ごとの安定的なサンプルではなく、切り替え時のサンプルを予測できるかどうか評価します。
このように評価方法を適切にしていれば、仮におかしな検討をした時には予測精度が低くなってくれるため、大きな問題にはなりません。逆に、評価方法がおかしい時には、おかしな検討をした時に誤って予測精度が高くなってしまうこともありますので、注意が必要です。
モデルの予測精度向上を検討する際には、まず評価方法を見直すことから始めると良いでしょう。
以上です。
質問やコメントなどありましたら、X, facebook, メールなどでご連絡いただけるとうれしいです。