キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
DataRobot コミュニティ

残差分布を見た後のチューニングアクション

Sasaki
NiCdバッテリー

残差分布を見た後のチューニングアクション

残差タブの「残差分布」の中の、一番左の

「残差と実測」のグラフが右下がり傾向にあるとき

どのようにチューニングをすれば良いかをコメント頂けますと幸いです。

 

データロボットのマニュアルはこちらを参照しております

https://docs.datarobot.com/ja/docs/modeling/analyze-models/evaluate/residuals.html

 

Linear Regressionで残差と実測のグラフを表示すると

概ね横一列に点が並んでいるのですが

Eureqa Regressor (Quick Search: 250 Generations)の場合、上記のマニュアルの図と同じような、下記の右下がりのグラフとなってしまいました。

つまり残差プロットが、目的変数の値が大きくなるほど過小評価され、小さくなるほど過大評価となる傾向が見られました。

右下がりの残差分布.PNG

本来であれば横一列に点が並ぶ方が望ましいと思うのですが

このような場合、どのようなチューニング(またはそもそも)のアクションが考えられるでしょうか?

 

なお別件となりますが、残差タブの横にリフトチャートがありますが、

こちら実測のオレンジの丸のサイズが大小あるのですが、何の大小を表現しているかマニュアルに記載がないように思えたので、お分かりでしたらコメント頂けますと幸いです。

なお青の線上にも一部、白い十字マークが付与されている点があるのですが、十字の意味もコメント頂けますと幸いです。

リフトチャート.PNG

 

よろしくお願いいたします。

 

0 件の賞賛
15件の返信15
Kei
データサイエンティスト
データサイエンティスト

Sakaki-san, 

 

"残差プロットが、目的変数の値が大きくなるほど過小評価され、小さくなるほど過大評価となる傾向が見られました。"

 

何か目的変数を予測するために重要な変数が抜けている場合にこのような現象が生じます。

モデルの細かいチューニングより、重要な変数を新しく入れることにFocusいただくと良いかと思います。

 

 

また、リフトチャートについてですが、お手数ですが、スクリーンショットをいただいてもよろしいでしょうか?

 

 

鎌田


 

0 件の賞賛
Sasaki
NiCdバッテリー

@Kei 

Kei-san

コメント頂きありがとうございます。

新規で特徴量を追加すると、この傾向が変わる可能性が高い、ということですね。

 

リフトチャートにつきまして、スクリーンショットを添付させていただきます。

コメントいただけますと幸いです。リフトチャート.PNG

 

よろしくお願いいたします。

 

Kei
データサイエンティスト
データサイエンティスト

 

@Sasaki -san, 

 

ありがとうございます。

そちらは、”ドリルダウンを有効化”を押していただいた後に見えるUIでございます。

”ドリルダウンを有効化”を押していただくと、リフトチャートの上位2つ・下位2つをクリックした際に、その部分の予測値をダウンロードしていただける仕様になっております。

どこのビンのデータをダウンロードできるかをわかりやすくするために、オレンジの丸が大きく、そして青の十字が少し光ってみえるようになっております。

 

Kei_0-1650340283630.png

Kei_1-1650340304884.png

 

 

 

0 件の賞賛
Sasaki
NiCdバッテリー

@Kei -san

早速ご返信いただきありがとうございます。

たしかに上位2つ・下位2つだけが丸が大きく、そして十字マークが付与されておりますね。ありがとうございます。

 

なお、前述のテーマの

"残差プロットが、目的変数の値が大きくなるほど過小評価され、小さくなるほど過大評価となる傾向になってしまう" 理由として

何か目的変数を予測するために重要な変数が抜けている場合にこのような現象が生じる

ということだったのですが、なぜ重要な変数が抜けるこの傾向になってしまうのか

についてコメント(または参考文献)などありましたら補足いただけますと大変ありがたいです。

 

経緯として、回帰分析では原点を通るように回帰線を引いてしまうと誤った結果になってしまうので、原点を通らない設定で線を引く必要がある、という話かと思い、

原点を0にしない設定に変えてみたのですが解消されなかったので、そういうことではないようでした。

 

よろしくお願いいたします。

Kei
データサイエンティスト
データサイエンティスト

@Sasaki -san, 

 

"何か目的変数を予測するために重要な変数が抜けている場合にこのような現象が生じるということだったのですが、なぜ重要な変数が抜けるこの傾向になってしまうのかについてコメント(または参考文献)などありましたら補足いただけますと大変ありがたいです"

 

こちらですが、データの特性を捉えたモデルを構築することができていれば、残差plotはノイズだけになるはずで、そこに規則性は生じない結果が出てきます。

一方、そこに傾向が生じるということは、何か捉えきれていない特徴がそこに存在するということであり、それは多くのケースで、そもそもまだ捉えきれていない変数があることになります。

 

お答えになっていますでしょうか?

 

 

0 件の賞賛
Sasaki
NiCdバッテリー

@Kei -san

コメント頂きありがとうございます。

 

データの特性を捉えたモデルを構築することができていれば、残差plotはノイズだけになるはずで、そこに規則性は生じない結果が出る

ということでおっしゃる通りだと思う一方で、同じデータセットなのですが、もっと単純な Linear Regression の結果が下記で

linear_reg_残差分布.PNG

左端の、実測と残差のグラフが、縦軸の0付近に上記よりも点が集まっているので

こちらのほうが「データの特性を捉えたモデル」にはなっているような気もする一方で

R2乗はこちらのが低く、さらにこの決定係数が-1.6という状況なので、良いモデルとは言えなさそうです。

 

上述のEureqa Regressor は過学習してしまい、性能指標自体は高くなったが、

過学習の裏付けとして、残差分布は右下がりになっていると考えられるでしょうか?

0 件の賞賛
Kei
データサイエンティスト
データサイエンティスト

@Sasaki -san,

 

データ分布の形だけ見ると、Linear regressionの方が、0付近に多いように見えますが、y軸のスケールにご注目いただければと思います。

Linear regressionの方が、外すときに幅(残差)が大きくなっているのが見えるかと思います。

 

Eureqa Regressor が過学習というより、シンプルにLinear Regressionの予測精度が、Eureqa Regressorよりも低いという解釈の方が妥当かと結果を見て私は思いましたが、いかがでしょうか?

 

0 件の賞賛
Isao
データサイエンティスト
データサイエンティスト

今回の例のように「残差分布」にて左上から右下へ一直線の残差プロットに関しては、「予測分布」の方で予測vs実測のプロットを見ていただくと問題点が直感的にわかると思います。

下図の例であれば、実測と無関係に一定の値をただ予測している、と言うことが分かります。このケースであれば結局「何も予測できていないモデル」が出来ており、今のデータには予測に必要な特徴量が入っていないと言う結論になるかと思います。(該当のモデルの決定係数は恐らく0付近と推察します。)

Isao_0-1650350257585.png

Isao_1-1650350274185.png

 



0 件の賞賛
Sasaki
NiCdバッテリー

@Kei -san

コメントありがとうございます。

 

確かにy軸のスケールに着目すると
Linear regressionの方が、外すときに幅(残差)が大きくなっているので
Eureqa RegressorよりもLinear Regressionの方が単純に予測精度が低い
という風に表現するのが妥当なように思えてきました。

 

 

@Isao -san

コメントありがとうございます。

予測分布を確認すると、

Linear Regression については

linear_reg_予測分布.PNG

となっており、縦か横に一直線、という状況にまではいっていない

という風にも解釈できそうでしょうか?

 

なお、Eureqa Regressor (Quick Search: 250 Generations)

の予測分布はこちらで

euの予測分布.PNG

決定係数は0.13と低いものの、こちらも

実測とは無関係に予測を一直線に出す、とまではいっていないようにも見えますでしょうか?

(実測が1.8等の特に大きいデータの情報を反映していないという観点もありますが)

0 件の賞賛
Isao
データサイエンティスト
データサイエンティスト

Linear Regressionは大半のデータをほぼ1付近で予測しており、その中でも実測が2の箇所を1、実測が1の箇所の数データを2や0以下と予測しており、余計な学習をしてむしろ外している様子を見て取れますので、極めて精度が悪いです。

決定係数がマイナスというのは「平均値予測より悪い」ということを示していますので、このモデルは「特性を捉えるどころが誤った学習をして余計に外している」ということになります。

 

Eureqa Regressor (Quick Search: 250 Generations)は
実測が0.6 - 1.8まである中で、0.8 - 1.2までの範囲でしか予測しておらず、決定係数が0.13であることから、「わずかに特性は捉えてはいるものの、ほとんど予測できてない」ということになります。

 

どちらにも共通するのは、学習・予測するのに有効な特徴量が今のデータには含まれていない、という結論になるかと存じます。

 

 

 

0 件の賞賛
Sasaki
NiCdバッテリー

@Kei さん

@Isao さん

 

コメントありがとうございます。

分析を深めている途中なのですが、一旦こちら解決とさせてください。

本当にありがとうございます。

0 件の賞賛
Sasaki
NiCdバッテリー

@Kei さん

@Isao さん

 

新規で「質問・ディスカッション」に投稿しようとしたのですが

スパムとしてマークしました

と表示されてしまい、投稿が止まってしまっております。

 

これはどのようにすれば解除(?)になるのでしょうか?

 

同じ内容で再度投稿してみたのですが、やはりまた投稿されませんでした。

0 件の賞賛
Kei
データサイエンティスト
データサイエンティスト

@Sasaki さん、

ご不便おかけして申し訳ございません。

一度内部で確認をして回答いたします!

0 件の賞賛
Kei
データサイエンティスト
データサイエンティスト

こちら対応させていただきました。再度ご確認いただいてもよろしいでしょうか?

0 件の賞賛
Sasaki
NiCdバッテリー

@Kei さん

お忙しいところご対応いただきありがとうございます。

無事反映されていることを確認いたしました。

引き続きよろしくお願いいたします。