Interesuje mnie korzystanie z narzędzia do robienia wniosków na temat określonego zestawu danych. Czy można wykonać następujące czynności:
wytwarzam współczynniki modelu glmnet, który trenowałem w toku. Chciałbym używać glmnet ze względu na nieodłączny wybór funkcji, ponieważ nie wierzę, że glm go ma?
inne niż metryka ROC, czy istnieje inna metryka, której mogę użyć do oceny dopasowania modelu? Takich jak skorygowane ?
Celem tej analizy jest wyciągnięcie wniosków na temat skutków poszczególnych zmiennych, a nie prognozowanie. Po prostu podoba mi się pakiet karetki, ponieważ do tej pory korzystanie z macierzy było łatwe.
Odpowiedzi:
Powiedzmy, że twój model karetki nazywa się „modelem”. Możesz uzyskać dostęp do ostatecznego modelu glmnet za pomocą
model$finalModel
. Następnie możesz zadzwonićcoef(model$finalModel)
itp. Będziesz musiał wybrać wartość lambda, dla której chcesz uzyskać współczynniki, takie jakcoef(model$finalModel, model$bestTune$.lambda)
.Spójrz na
summaryFunction
parametrtrainControl
funkcji. Pozwoli ci to określić dowolną funkcję, którą chcesz zminimalizować (lub zmaksymalizować, patrzmaximize
argument dotrain
), podając predyktor i odpowiedź.W ten sposób może być trudno uzyskać skorygowane R ^ 2, ale prawdopodobnie możesz dostać R ^ 2 lub coś podobnego.
źródło
caret
wersji6.0.78
, najlepiej dostrojony lambda jest teraz:model$bestTune$lambda
.