2014-06-20 25 views
13

Próbuję zbudować modelu przy użyciu funkcji pakietu kolejowego z karetki:Jak śledzić postępy podczas budowania modelu za pomocą pakietu "Caret"?

model <- train(training$class ~ .,data=training, method = "nb") 

Szkolenie zestaw zawiera około 20K obserwacje, każda obserwacja ma ponad 100 zmiennych. Chciałbym wiedzieć, czy zbudowanie modelu z tego zestawu danych zajmie wiele godzin czy dni.

Jak oszacować czas potrzebny do pociągu modelu z danych? Jak śledzić postęp procesu szkoleniowego podczas korzystania z funkcji pakietu Caret?

Odpowiedz

21

Zakładając, że są szkolenia modelu z

  • rozbudowaną siatkę parametrów tuning (wszystkie kombinacje parametrów strojenia)
  • i techniki resamplingu wyboru (cross walidacji, bootstrap etc)

można ustawić

trainctrl <- trainControl(verboseIter = TRUE) 

i zestaw to w argumencie trControl funkcji kolejowej do śledzenia postępów szkoleniowych

model <- train(training$class ~ .,data=training, method = 'nb', trControl = trainctrl) 

ten wypisuje postęp się do konsoli na każdym etapie resamplingu i pozwala ocenić postęp strojenia szkolenia/parametrów.

Aby oszacować całkowity czas pracy, można uruchomić model jeden raz, aby zobaczyć, jak długo on działa, i oszacować całkowity czas przez pomnożenie odpowiednio w oparciu o schemat resampling i liczbę kombinacji parametrów. Można to zrobić poprzez ponowne ustawienie trainControl i ustawienie tuneLength 1:

trainctrl <- trainControl(method = 'none') 
model <- train(training$class ~ ., data = training, method = 'nb', trControl = trainctrl, tuneLength = 1) 

Nadzieja to pomaga! :)

Powiązane problemy