検証データを含めないでTarget encoding
注意してtarget encodingしないと、leakageが発生するらしい。
よくやるのが、検証データを含めてtarget encodingをしてしまうこと。
この状態でデータを学習してしまうと、leakageを起こす。
何故ならば、target encodingした特徴量に検証データ(未来のデータ)が含まれているためである。
そのため、訓練データと検証データを分離してからtarget encodingを行う必要がある。
sklearn.model_selectionのKFoldを使用して、target encodingしてみた。
平均を求めるとき、検証データを使用しないように気をつける。
参考