0
0

More than 3 years have passed since last update.

[Kaggle] ep.X - バリデーション

Posted at

tldr

バリデーションの手法について勉強しました。

バリデーション手法

hold-out法

学習データの一部を学習に使わず、バリデーション用に取っておく方法。
学習データとテストデータがランダムに分割されているということを前提とした方法。
時系列データは別の方法をとる。

クロスバリデーション (CV)

学習データを分割し、hold-out法の手続きを複数回繰り返すことで、各回のバリデーションの学習に用いるデータの量を保ちつつ、バリデーションの評価に用いるデータを学習データ全体とする方法。

分割されたデータをfoldと呼び、分割数をfold数と呼びます。
fold数を増やすほど学習データの量を確保できる。反面、計算時間が増える。だいたいの場合、fold数は4-5で良い。

stratified k-fold

分類タスクの場合に、foldごとに含まれるクラスの割合を等しくすることがしばしば行われ、これを層化抽出 (stratified sampling) と呼ぶ。

group k-fold

分析コンペによっては、学習データとテストデータがランダムに分割されていない場合があります。

leave-one-out

データ数が多い場合にfold数を極端に大きくすることでバリデーションデータが各1件になる手法。

時系列データのバリデーション手法

時系列データのタスクでは、学習データとテストデータは時系列に沿って分割されているケースが多い。
つまり、学習データにはテストデータと同じ期間のデータが含まれない。
このようなケースでは、単純にランダムに分割してしまうと、バリデーションデータと同じ期間のデータで学習できてしまい、モデルの性能を過大評価する可能性が高い。

hold-out法

テストデータに近い期間のデータをバリデーションデータとする。

クロスバリデーション

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0