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

【DataRobot JAM】Residual(残差)について

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

【DataRobot JAM】Residual(残差)について

本日DaraRobot JAMは過去コンペ(kaggleのWeb Traffic Time Series Forecasting, Predicting Molecular Properties、ProbSpaceの給与推定コンペ)のResidual(残差)をうまく利用できたsolutionを紹介しました。重要なポイントが下記の三つです。

1.残差が大きいレコードを外れ値とみなしてdrop

2.Multi Stage Modelingで残差を取りながら多段階推論、ただこれが有効な前提はNueral Network と LightGBMの精度が両方とも高い

3.各段階モデルの特徴量はそれぞれ作って、多様性を作れる

給与推定コンペ給与推定コンペ

皆さんはもし他のアイディアがあれば、シェアしていただけるととても嬉しいです。

5件の返信5
Isao
データロボット同窓生

残差が大きいデータを信頼性の低い外れ値として除去してモデリングしたり、残差自体をターゲットとして前のステージの予測値を使いながら予測するモデルを作ったり、縦横無尽に応用なさっていて、とても勉強になりました。

少し横道の話ですが、SenkinさんがKaggle days用にスライドを使って教えてくれた、Null Importanceも面白かったです。実際のImportanceとターゲットを無茶苦茶にしたImportanceを比較して特徴量の重要度のスコアを出すアプローチは大変興味深いです。

興味がある方はぜひ!(該当ページは18)↓

https://www.slideshare.net/JinZhan/kaggle-days-tokyo-jin-zhan-204409794

YuyaYamamoto
データロボット同窓生

残差にfitさせていくのは精度向上だけでなく、例えばNeural Networkの残差にLightGBMをfitさせてその際のSHAPを見ることでNeural Networkにどのような観点が足りていないかのヒントになるという話を関西の強Kagglerであるnyanp氏が以前していたのを思い出しました。とても興味深いアプローチだと思います。

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

今まで残差が大きいところに対して、どうカバーするのかしか考えてないが、トレーニングデータから除外する発想は勉強になりました!

確かに評価指標がMAEになった場合、もっとあてに行くことが大事で、指標が変わるとやり方も考えないといけないですね。

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

評価指標がRMSEとかの場合は残差大きいものって皆さん抜きます?

ターゲットの分布次第だと思いますけど、ファットテイル気味なら大きくともそっちに引っ張って欲しいというのもあって残しておきたいという思いもあります。

残差大きいものを抜く候補には毎回いれますが、外れ値として抜くかの最終判断は個人的にはドメインと照らした意味を見てから抜きたい派です。

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

実は同じ話をDiscussion内でしていました。

予測が当たっていないものに対して、あてにいくという考え方は自然であると思います。僕は基本的にまず抜かないで試します。

とはいえ、手にあるデータからはどうやってもあてにいくサンプルに引っ張られることになるので、予測が当たらなくてある程度当然だとドメイン知識から判断できる場合は、今回のSenkinさんのように残差が大きいものを除外する方法は有効だということになると思います。