モデルの予測精度を上げるのではなく、本来の予測精度を目指すという考え方

分子設計・材料設計・プロセス設計・プロセス管理において、分子記述子・実験条件・合成条件・製造条件・評価条件・プロセス条件・プロセス変数などの特徴量 x と分子・材料の物性・活性・特性や製品の品質などの目的変数 y との間で数理モデル y = f(x) を構築し、構築したモデルに x の値を入力して y の値を予測したり、y が目標値となる x の値を設計したりします。モデル構築のときに考えることの一つは、もちろん、できるだけ予測精度の高いモデルを構築することですが、モデルの予測精度を評価するときまで同じ考え方で進めてしまうと、モデルの過学習 (オーバーフィッティング) に陥ってしまう危険があります。

そこで、モデルの予測精度を評価するときには、モデルの予測精度を上げることではなく、今あるデータセットの性質上、モデルには本来の予測精度があり、それを的確に求めるという考え方がよいでしょう。このあたりについて説明します。

モデルの予測精度を評価するとき、例えばサンプルをトレーニングデータとテストデータに分けて、トレーニングデータで構築したモデルをテストデータで評価します。

回帰モデル・クラス分類モデルを評価・比較するためのモデルの検証 (Model validation)
いろいろな回帰モデル・クラス分類モデルを構築したり、モデルの中のハイパーパラメータ (PLSの成分数など) を決めたりするとき、モデルを評価・比較しなければなりません。そのためのモデルの検証 (model validation) の方法につ...

 

サンプル数が小さいときは、トレーニングデータとテストデータに分割するとさらにサンプル数が小さくなってしまい、たまたま予測できた場合を省くことが難しいため、ダブルクロスバリデーションを使用します。

ダブルクロスバリデーション(モデルクロスバリデーション)でテストデータいらず~サンプルが少ないときのモデル検証~
回帰モデルやクラス分類モデルを検証するときの話です。モデルの検証一般的には、データセットが与えられたとき、サンプルをモデル構築用サンプル (トレーニングデータ, training dataset) とモデル検証用サンプル (テストデータ, ...

 

ただ、ダブルクロスバリデーションであればどんなときでも的確にモデルの予測精度を評価できるかというと、そうではありません。例えば遺伝的アルゴリズムにおける適合度にダブルクロスバリデーションの結果の評価値を用いる場合など、使用方法によってはモデルの過学習を引き起こしてしまうこともあります。テストデータやダブルクロスバリデーションの結果から得られる予測精度の評価は、あくまでモデルを評価するためであり、モデルの予測精度の向上のために使わない方がよいのです。

そもそも、生データの性質から、これ以上にモデルの予測精度を上げられない、といったことはあります。例えば、物性や活性の実験値には測定誤差が含まれますので、r2 は 1 にはなりませんし、RMSE や MAE は測定誤差以下にはなりません。

データセットが与えられたら、それがもちうる本来の予測精度もしくは予測精度の上限があり、それを目指すというのが、データ解析や機械学習でモデルを構築するときに考えることになります。本来の予測精度を達成するために、適切な回帰分析手法やクラス分類手法を選択したり、特徴量 x を検討・設計したり、データの追加・削除・補完を行ったりします。モデルの予測精度を上げる検討をするのはもちろん大事ですが、その目的のためにモデルを評価してしまうと、過学習になる危険が出てきてしまいます。モデル構築手法の検討や特徴量の検討をしたあとに、モデルの予測精度が上がったか評価するときは、データセットに由来する本来の予測精度を的確に表現する気持ちで臨むとよいと思います。

 

以上です。

質問やコメントなどありましたら、twitter, facebook, メールなどでご連絡いただけるとうれしいです。

タイトルとURLをコピーしました