Próba lepszego zrozumienia, w jaki sposób train(tuneLength =)
działa w . Moje zamieszanie zdarzyło się, gdy próbowałem zrozumieć niektóre różnice między metodami SVM z {kernlab}
. Przejrzałem dokumentację (here) i stronę z instrukcją szkolenia (here).Wyjaśnienie {caret} train (tuneLength =) i metody SVM od {kernlab}
Mój przykład zabawki polegał na utworzeniu pięciu modeli przy użyciu zestawu danych iris
. Wyniki to here, a odtwarzalny kod to here (są one dość długie, więc nie zostały skopiowane i wklejane do postu).
Z dokumentacji {caret}
:
tuneLength
liczbą całkowitą oznaczającą ilość ziarnistości w siatce parametrów strojenia. Domyślnie ten argument jest liczbą poziomów dla każdego parametru strojenia, który powinien być generowany przez pociąg. Jeśli parametr trainControl ma opcję search = "random", jest to maksymalna liczba kombinacji parametrów strojenia, które zostaną wygenerowane podczas wyszukiwania losowego. (UWAGA: Jeśli podany, argument ten musi być nazwane.)
W this example, trainControl(search = "random")
i train(tuneLength = 30)
, ale wydaje się, że 67 wyników, a nie 30 (maksymalna liczba kombinacji parametrów strojenia)? Próbowałem odtwarzać, aby zobaczyć, czy może było 30 unikalnych wartości ROC
, czy nawet wartości ydim
, ale według mojego rachunku nie są.
Na przykład zabawki, stworzyłem poniższej tabeli:
Czy istnieje sposób, aby zobaczyć, co się dzieje „pod maską”? Na przykład, M1
(svmRadial
) i M3
(svmRadialSigma
) przyjmują i są podane te same parametry melodyczne, ale na podstawie wywołania $results
wydaje się używać ich inaczej?
Moje rozumienie train(tuneLength = 9)
było to, że oba modele będą produkować wyniki sigma
i C
każdego z 9 values, 9 times
od 9
jest liczba poziomów dla każdego parametru tuning (wyjątkiem jest przypadkowy Search)? Podobnie, M4
będzie 9^3
od train(tuneLength = 9)
i są tam parametry strojenia 3
?
Michael
Witam Max, bardzo dziękuję za szybką i szczegółową odpowiedź. To jest bardzo pomocne. Używanie APM w klasie razem z ESL, PDSwR i Elder's Ensemble Methods - to świetny tekst. Michael –
@topepo robi 'svmRadialWeight' akceptuje argument' wag "za pośrednictwem' train'? – cdeterman