XGBoost może obsłużyć brakujące dane w fazie prognozowania

12

Niedawno sprawdziłem algorytm XGBoost i zauważyłem, że ten algorytm może obsłużyć brakujące dane (bez konieczności przypisywania) w fazie szkolenia. Zastanawiałem się, czy XGboost może obsłużyć brakujące dane (bez konieczności imputacji), gdy jest używany do prognozowania nowych obserwacji, czy konieczne jest przypisanie brakujących danych.

Z góry dziękuję.

Ricardo UES
źródło

Odpowiedzi:

14

xgboost decyduje w czasie szkolenia, czy brakujące wartości trafiają do prawego czy lewego węzła. Wybiera, które mają zminimalizować straty. Jeśli w czasie szkolenia nie ma brakujących wartości, domyślnie wysyłane są nowe braki do właściwego węzła.

Jeśli w rozkładzie twoich braków jest sygnał, to w zasadzie pasuje to do modelu.

Zachowaj ostrożność, jeśli dane punktowe mają rozłożone brakujące wartości inaczej niż dane treningowe. Brak obsługi xgboost jest wygodny, ale nie chroni przed maskowaniem.

Źródło: ta odpowiedź

Dex Groves
źródło