Układanie modeli w stos z karetką

21

Często carettrenuję kilka różnych modeli predykcyjnych przy użyciu w R. Wyszkolę je wszystkie na tych samych fałdach sprawdzania krzyżowego, używając caret::: createFolds, a następnie wybieram najlepszy model na podstawie błędu zweryfikowanego krzyżowo.

Jednak mediana prognoz z kilku modeli często przewyższa najlepszy pojedynczy model w niezależnym zestawie testów. Zastanawiam się nad napisaniem niektórych funkcji do układania w stosy / zestawiania modeli karetki, które były trenowane z tymi samymi fałdami walidacji krzyżowej, na przykład poprzez przyjmowanie mediany przewidywań z każdego modelu przy każdym fałdzie lub przez trenowanie „meta-modelu”.

Oczywiście może to wymagać zewnętrznej pętli weryfikacji krzyżowej. Czy ktoś wie o istniejących pakietach / otwartym kodzie źródłowym do zestawiania modeli Caret (i ewentualnie krzyżowej weryfikacji tych zestawów)?

Zach
źródło

Odpowiedzi:

19

Wygląda na to, że Max Kuhn faktycznie zaczął pracować nad pakietem do łączenia modeli caret , ale nie miał jeszcze czasu, aby go ukończyć. Właśnie tego szukałem. Mam nadzieję, że projekt zostanie ukończony pewnego dnia!

edycja: Napisałem własny pakiet, aby to zrobić: caretEnsemble

Zach
źródło
1
Doskonała praca nad tym pakietem!
mikeycgto
8

To, czego szukasz, nazywa się „zestawem modeli”. Prosty samouczek wprowadzający z kodem R można znaleźć tutaj: http://viksalameterms.blogspot.jp/2012/01/intro-to-ensemble-learning-in-r.html

thiakx
źródło
3
Nie jestem wybredny, ale „zestawianie” jest dokładnie w tytule mojego postu. Bardzo konkretnie szukam pakietu R do łączenia dowolnych modeli, który wydaje się nie istnieć. Dziękujemy za opublikowanie kodu. Może napiszę własną paczkę!
Zach.
1

Nie jestem do końca pewien, czego szukasz, ale to może pomóc: http://www.jstatsoft.org/v28/i05/paper

To jak używać wielu modeli w karetce. Część, która może Cię zainteresować, to sekcja 5 na stronie. 13

screechOwl
źródło
To, czego szukam, to pakiet, który jako dane wejściowe pobierałby listę obiektów karetki, a następnie generowałby medianę, średnią lub średnią ważoną ich prognoz. Bardziej zaawansowane funkcje mogą obejmować optymalizację wag poprzez sprawdzanie poprawności zagnieżdżonej.
Zach.