@DennisSoemers'ın harika bir çözümü var. Biraz daha açık ve Özellik Mühendisliği ve Seçime dayanan iki benzer çözüm ekleyeceğim : Max Kuhn ve Kjell Johnson'ın Tahmin Edici Modeller için Pratik Bir Yaklaşım .
Kuhn , bir veri kümesini resample
tanımlamak için bu terimi kullanır fold
, ancak StackExchange'teki baskın terim gibi görünmektedir fold
, bu yüzden fold
aşağıdaki terimi kullanacağım .
Seçenek 1 - İç içe arama
Hesaplama gücü sınırlayıcı bir faktör değilse, 3 düzey iç içe yerleştirmenin olduğu iç içe bir doğrulama yaklaşımı önerilir:
1) dış katlar, her kat farklı bir özellik alt kümesine sahip
2) iç kıvrımlar, her kat bir hiperparametre araması ile
3) her hiperparametre aramasının iç katları, her kat farklı bir hiperparametre seti ile.
İşte algoritma:
-> Split data into train and test sets.
-> For each external fold of train set:
-> Select feature subset.
-> Split into external train and test sets.
-> For each internal fold of external train set:
-> Split into internal train and test sets.
-> Perform hyperparameter tuning on the internal train set. Note that this
step is another level of nesting in which the internal train set is split
into multiple folds and different hyperparameter sets are trained and tested on
different folds.
-> Examine the performance of the best hyperparameter tuned model
from each of the inner test folds. If performance is consistent, redo
the internal hyperparameter tuning step on the entire external train set.
-> Test the model with the best hyperparameter set on the external test set.
-> Choose the feature set with the best external test score.
-> Retrain the model on all of the training data using the best feature set
and best hyperparameters for that feature set.
Bölüm 11.2'deki resim: Basit Filtreler
-> Select feature subset
Adım rastgele gibi ima, ancak kitabın özetlenen diğer teknikler vardır Bölüm 11 .
Açıklığa kavuşturmak için -> Perform hyperparameter tuning step
, iç içe çapraz doğrulamanın önerilen yaklaşımını okuyabilirsiniz . Fikir, eğitim ve test sürecini farklı veri katlarında tekrar tekrar gerçekleştirerek ve test sonuçlarının ortalamasına bakarak bir eğitim sürecinin sağlamlığını test etmektir.
Seçenek 2 - Ayrı hiperparametre ve özellik seçimi araması
-> Split data into hyperameter_train, feature_selection_train, and test sets.
-> Select a reasonable subset of features using expert knowledge.
-> Perform nested cross validation with the initial features and the
hyperparameter_train set to find the best hyperparameters as outlined in option 1.
-> Use the best hyperparameters and the feature_selection_train set to find
the best set of features. Again, this process could be nested cross
validation or not, depending on the computational cost that it would take
and the cost that is tolerable.
Kuhn ve Johsnon süreci şöyle ifade ediyor:
Global bir arama yöntemini ayarlama parametrelerine sahip bir modelle birleştirirken, mümkünse, özellik kümesinin sorun hakkında uzman bilgisi kullanılarak önce bilinmesini öneririz. Daha sonra, makul bir ayar parametresi değerleri aralığı tanımlamak önemlidir. Yeterli sayıda örnek mevcutsa, bunların bir kısmı bölünebilir ve tüm özellikleri kullanarak potansiyel olarak iyi bir dizi parametre değeri bulmak için kullanılabilir. Ayar parametresi değerleri, özellik alt kümeleri için mükemmel bir seçim olmayabilir, ancak en uygun alt kümeyi bulmak için makul düzeyde etkili olmalıdırlar.
Bölüm 12.5: Global Arama Yöntemleri