目的変数yとの相関では説明変数xを選択しません!選択するときは多変量解析で!

分子設計・材料設計・プロセス設計・プロセス管理において、分子記述子・実験条件・合成条件・製造条件・評価条件・プロセス条件・プロセス変数などの特徴量 x と分子・材料の物性・活性・特性や製品の品質などの目的変数 y との間で数理モデル y = f(x) を構築し、構築したモデルに x の値を入力して y の値を予測したり、y が目標値となる x の値を設計したりします。

このモデルに望まれることは、x から y を精度よく予測することです。不要な情報が x にあると、それがモデル構築時にノイズとして作用するため、重要な x のみでモデルを構築することが重要になります。そのため、特徴量選択・変数選択を実施することがあります。

x と y の関係ということで、y と x それぞれとの間の単相間として相関係数の絶対値を計算し、それが小さい x を削除する、といったことを考える人もいらっしゃいますが、私はオススメしません。y との相関が小さい x でも、重要な x もあれば重要でない x もあります。逆に、y との相関が大きい x でも、重要な x もあれば重要でない x もあります。そのような中で、モデル構築において多変量解析を行い、多くの x と y との間で良好なモデル (相関関係) を構築しようとしています。

x を選択したいときは、y と x の間の相関係数ではなく、x 間の相関係数で選択するほうがよいです。

[Pythonコード付き] 相関係数で変数選択したり変数のクラスタリングをしたりしてみましょう
回帰分析やクラス分類をする前の、データセットの前処理の話です。2 つの説明変数 (記述子・特徴量) の間で、相関係数の絶対値が大きいとき、それらの変数は似ているということです。余計な変数は、回帰モデル・クラス分類モデルに悪影響を及ぼすため、...

 

互いに類似した x は、y に対する効果も類似していると考えられ、それらの一方を削除するのは妥当です。

もしくは、例えば Boruta など多変量解析に基づいて x を選択するようにしましょう。

Boruta の使い方
特徴量選択手法もしくは変数選択手法の一つに、Boruta があります。 こちらのこちらに書いた通り、 特徴量選択では、「予測精度」が上がるように特徴量を選ぶというより、不要な特徴量を削除するという意識で実施するとよいです。なぜなら、たとえト...

 

以上です。

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

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