CV は GroupKFold (group=`host_id`) が良かった?
今回私は3種類の CV を試しましたが、CV vs Public LB, CV vs Private LB の相関係数は以下の通りでした。
Fold |
CV vs Public LB |
CV vs Private LB |
GroupKFold(k=5, group=host_id ) |
0.720112 |
0.803084 |
StratifiedKFold(k=5, stratify=neighbourhood ) |
0.356559 |
0.395838 |
StratifiedKFold(k=5, stratify=y_bin ) |
-0.007198 |
0.130685 |
y_bin
は y
を対数変換したものを5つに binning したものです。
同じような民泊の立地でも host_id
によって y
に差があるなとは思っていたので host_id
によらず y
を正確に予測できるような特徴量エンジニアリングが重要だったのかなとの所感です。今回のデータセットは train/test とで host_id
が完全に分けられており、正直私は最後までどう対処するべきかよく分かりませんでした。
皆さんはいかがでしたか。