podcast EDAの重要さについて
EDAの重要さはよく耳にしますが、EDAで何を見たらよいかわからずついつい蔑ろにしてしまいます。EDA力はどうやって鍛えたらよいですか?おすすめの勉強法などあれば教えてください。
podcastで回答しました。
はじめの挨拶
マシュマロに質問をいただきました。今回はpodcastで回答します。
EDAとは
EDA(Exploratory data analysis)とは
探索的データ解析とは、モデルを過程せずに、フラットな状態で、データを眺めて見ようという意味です。
どうしてEDAをするか
・スコアを上げるため。100点であればする必要はない。
どのようにEDAをするか。はじめは次の2点を行って行くと思います。
1. データを把握
2. 課題を解決するため
質問者の方は蔑ろにしていると書いているが、notebookやDiscussionの情報を見ているのは、手を動かしていないがEDAをしているのと同じ。
notebookやDiscussionをみるのはとても効率が良いし、やり方も学べる。
しかし、銀メダルの上位から金メダルを取るためには、他の上位のチームにはないポイントを稼ぐ必要があり、EDAを行ってポイントを稼ぐことも1つの手段。
以降では、EDAの具体例を紹介
データを把握する
データをよくみることにより、特徴作成・バリデーションなどにいかす
以下具体例:
1. バリデーションの選択
バリデーションは、適切に決定する必要がある。グループがあって、そのグループがtrainとtestで分類されている場合、GroupKfoldを使う必要がある場合がある。
例えば、PetFinderコンペ。
2. 外れ値があることに気づく
Eloコンペではtargetに外れ値があった。外れ値はEDAをして気づく必要。
Eloコンペの上位の解法は、この外れ値について確率的に処理していて、とても参考になった。
参考:Kaggle Eloコンペの振り返り・上位解法まとめ - 天色グラフィティ
oofの性能が悪いセグメントに対する対応
特にout of foldで、精度が悪い予想を改善する。
out of foldで課題を見つけて、そこに対応すると性能が上がるのでやると良い。
例えば、Signateさんの、飯田産業 土地の販売価格の推定コンペ
上位の方の解法が、参考になる。
・建物や土地の価格の販売価格の予想が必要
・土地の価格予測の精度が建物に比べて悪い
・土地の価格予測の精度向上のために、別モデルを作ったり、augmentationをするなどして、精度をあげている。
・3位までのsolutionは公開されているので、参考になる。
終わりに
DSBコンペが終わった。かなりEDAが重要だった。
最近のコンペはEDAがかなり重要。勾配ブースティングでの予測は、参加者もできるしコンペ主催者もできるようになってきているので、典型的なタスクは出題されにくいし、他の参加者に差をつけるという点でもデータをよくみるということは一つのやり方。
EDA力はどうやって鍛えたらよいですか?おすすめの勉強法などあれば教えてください。
この質問の回答は、Kaggleのnotebookやdiscussionで勉強すると良い。
特に、どうしてそのEDAをやっているかの背景や、それでどう特徴を作るなどしてEDAを活かしているかを考えると良い。
また、わからないところなど、discussionで聞いてみたり、実際に話してみると更に理解が深まる。
今回、30分ぐらい話したが、なかなか説明は難しいと感じた。
また理解が深まったら同じテーマで話したい。要望などあればコメントやマシュマロまで。
コメントお待ちしています。匿名の質問はマシュマロから→https://marshmallow-qa.com/currypurin