モデルの適用範囲の手法やハイパーパラメータの選び方

シェアする

説明変数 x と目的変数 y の間で構築されたモデル y = f(x) を運用するとき、モデルの適用範囲 (Applicability Domain, AD) が必須になります。AD は、モデルが本来の予測性能を発揮できる x のデータ範囲です。

モデルの適用範囲・モデルの適用領域 (Applicability Domain, AD) ~回帰モデル・クラス分類モデルを使うとき必須となる概念~
今回は、モデルの適用範囲・モデルの適用領域 (Applicability Domain, AD) についてです。AD は回帰モデル・クラス分...
[無料公開] 「化学のための Pythonによるデータ解析・機械学習入門」 の “はじめに” と目次の詳細
2019 年 10 月 23 日に、金子弘昌著の「化学のための Pythonによるデータ解析・機械学習入門」が発売になりました。 オー...
[無料公開] 「Pythonで気軽に化学・化学工学」 の “まえがき”、目次の詳細、第1・2・3章
2021 年 5 月 1 日に、金子弘昌著の「Pythonで気軽に化学・化学工学」が出版されました。 丸善: Amaz...

AD を設定する手法として、k最近傍法(k-Nearest Neighbor, k-NN) や One-Class Support Vector Machine (OCSVM) などいろいろあります。

k最近傍法(k-Nearest Neighbor, k-NN)でクラス分類・回帰分析・モデルの適用範囲(適用領域)の設定をしよう!
 今回は、k最近傍法 (k-Nearest Neighbor, k-NN) についてです。k-NN だけで、 クラス分類 回...
One-Class Support Vector Machine (OCSVM) で外れ値・外れサンプルを検出したりデータ密度を推定したりしよう!
今回は、One-Class Support Vector Machine (OCSVM) についてです。OCSVM は SVM を領域推定問...

ちなみに DCEKit では k-NN、OCSVM を含む AD の計算ができます。

DCEKit (Data Chemical Engineering toolKit) を PyPI にリリース!
これまで化学データ・化学工学データのデータ解析に役立つツールや金子研で開発された手法に関する Python コードを Github にて公開...

AD を計算するときは、AD の手法の中から一つ選んだり、その手法におけるハイパーパラメータを選んだりする必要があります。ただ AD は基本的に教師なし学習であるため、回帰分析やクラス分類といった教師あり学習のようにテストデータの予測性能やクロスバリデーションの推定性能に基づいて手法やハイパーパラメータを決める、といったことができません。

では、どのように AD の手法やハイパーパラメータを決めればよいでしょうか。まず、簡単なやり方としては、深く考えずに k-NN で k = 10 とするのでよいと思います。経験的には、これで大きな問題はありません。もちろん、OCSVM によりスパースなモデルを構築でき、次元の呪いの影響を受けにくいとされています。ただ、例えば OCSVM でガウシアンカーネルを使ったときには、パイパーパラメータが二つあり、それらの設定が難しいです。そのため、簡便に使用でき、k として妥当な値もある k-NN が妥当な選択肢といえます。

次に、より詳細に検討する方法です。回帰分析における予測誤差も用いて、Area Under Coverage and RMSE curve (AUCR) を指標にして決めます。まず、ここでいう予測誤差は、テストデータのサンプルの場合はそのまま y の誤差で OK ですが、トレーニングデータのサンプルの場合はダブルクロスバリデーションをしたときの y の誤差がよいです。

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

次に AUCR の計算方法についてです。まず、AD の指標を計算し、サンプルを AD の内側順に、例えば k-NN でいえば平均距離が小さい順に、サンプルを並び替えます。そして、最も小さい 30 サンプルで RMSE を計算し、次に小さい 1 サンプルを追加して 31 サンプルで RMSE を計算し、また小さい 1 サンプルを追加して 32 サンプルで RMSE を計算し、、、といったことを、すべてのサンプルで RMSE を計算するまで繰り返します。これにより、RMSE を計算したサンプルの割合と、RMSE の関係が得られます。横軸をサンプルの割合、縦軸を RMSE としたときの曲線の、下側の面積が AUCR です。

AUCR が小さいということは、AD の小さい順に y の予測誤差の小さいサンプルを整理できたということになり、AD として妥当といえます。そのため、手法を変えたり、手法におけるハイパーパラメータを変えたりして、それぞれ AUCR を計算し、AUCR が最小となる手法とハイパーパラメータの組み合わせを選ぶのがよいと思います。

なお参考情報ですが、こちらの論文では、AUCR に基づいて新たな指標を開発し、予測誤差の指標としています。

r<sup>2</sup>やRMSE・MAEはもう古い!?回帰分析においてモデルを評価するための新しい指標を開発しました
データ化学工学研究室としての最初の論文が掲載されました。つまり、わたしが明治大学に異動したあとに実施した研究成果の論文として、初めてのもので...

以上です。

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

シェアする

フォローする