Powrót do strony głównej

Lekcje Kaggle: Jak wejść do top-12% z 158 próbami | ML

Artykuł analizuje doświadczenie udziału w konkursie Kaggle ASHRAE dotyczącym prognozowania zużycia energii. Autor dzieli się trzema kluczowymi lekcjami: konieczność uczenia się od zwycięzców, używanie wielu modeli z blendowaniem i znaczenie rozległego doświadczenia w strojeniu hiperparametrów. Praktyczne wnioski pomogą data scientistom podnieść swoje kwalifikacje.

Jak 158 prób w Kaggle wywindowało mnie do top-12% prognostyków zużycia energii
Advertisement 728x90

# Od porażki do top 12%: Trzy lekcje Kaggle dla data scientistów

Udział w międzynarodowym konkursie Kaggle ASHRAE dotyczącym prognozowania zużycia energii w budynkach stał się dla mnie przełomowy. Zaczynając od 2431. miejsca na 3614, przez pięć miesięcy pracy nad 158 late submission wspięłam się do 558., wchodząc do top 12%. Ta droga nauczyła mnie trzech kluczowych lekcji, którymi dzielę się z kolegami data scientistami.

Lekcja 1: Tylko zwycięzcy mogą stać się waszymi nauczycielami

Po zakończeniu konkursu w grudniu 2019 roku zetknęłam się z brutalną rzeczywistością: mój private score 1.415 (2431. miejsce) był daleki od zwycięstwa. W styczniu 2020 zwycięzcy opublikowali swoje rozwiązania — i to stało się moim wybawieniem. Większość zespołów otwarcie dzieliła się architekturami modeli, kodem i strategiami wstępnego przetwarzania danych. Poświęciłam cały dzień na analizę kluczowych rozwiązań i zrozumiałam: aby osiągnąć wynik, trzeba kopiować metody topowych zespołów, a nie wymyślać koła na nowo.

Mimo 12-letniego doświadczenia w rozwijaniu modeli matematycznych dla rosyjskiego hurtowego rynku energii elektrycznej poczułam się jak kompletny nowicjusz. Pierwsze próby wdrożenia skomplikowanych pipeline'ów kończyły się klęską: oczekiwania rozmijały się z rzeczywistością, metryki się pogarszały. W mailu do kolegi opisałam to jako „uczucie grozy". Ale właśnie tu kryje się siła Kaggle: platforma zmusza cię do wyjścia ze strefy komfortu. Każda late submission to krok ku zrozumieniu, jak działają state-of-the-art rozwiązania. Po 50 iteracjach zaczęło pojawiać się poczucie „działa”, a przy 158. przesłaniu weszłam do top 12%.

Google AdInline article slot

Lekcja 2: Skuteczny data scientist operuje wieloma modelami

ASHRAE otworzył przede mną świat bibliotek, z którymi wcześniej nie pracowałam: LightGBM, CatBoost, Prophet. Zwycięzcy używali kombinacji tysięcy modeli, połączonych przez blending. Na przykład druga drużyna stworzyła 20 000 modeli, mieszając wyniki XGBoost, LightGBM, CatBoost i sieci neuronowych. Kluczowy insight: do skutecznego ensemblingu potrzebne są dwa warunki:

  • Modele muszą wykazywać porównywalną dokładność
  • Algorytmy muszą wnosić różnorodność (diversity) do predykcji

Moje rozwiązanie opierało się na uśrednieniu trzech zestawów:

  • 56 modeli LightGBM według terytoriów
  • 24 modele LightGBM według typów energii
  • 36 modeli XGBoost według terytoriów

Wstępne przetwarzanie obejmowało liniową interpolację danych pogodowych i usuwanie stałych wartości zużycia energii. Brak postprocessingu i ograniczone różnorodie modeli wyjaśniają mój wynik ~12% w porównaniu do top 1% zwycięzców. Wniosek: rozwiązania oparte na jednym algorytmie w Kaggle są skazane na porażkę. Skuteczność osiąga się przez hybrydowe pipeline'y z kontrolowaną różnorodnością.

Google AdInline article slot

Lekcja 3: Ekstensywne doświadczenie to nieunikniony etap mistrzostwa

Praca z hiperparametrami wymaga systematycznego przeszukiwania. Dla LightGBM i XGBoost testowałam dziesiątki kombinacji, zmieniając tylko jeden parametr na raz. Całkowita liczba obliczonych predykcji przekroczyła 16 miliardów: 158 przesłaniy × 20M rekordów na uczenie + 158 × 42M na predykcję. Większość eksperymentów odpadała przed etapem submission, ale właśnie one ukształtowały intuicję.

Teraz natychmiast widzę, jak zmiana num_leaves w LightGBM wpłynie na przeuczenie, albo dlaczego regularyzacja reg_lambda jest kluczowa dla XGBoost na hałaśliwych danych. To nie wiedza teoretyczna — to pamięć mięśniowa wyrobiona przez tysiące iteracji. Kaggle jest idealny do takiego uczenia: możesz eksperymentować bez ryzyka dla projektów komercyjnych. W zadaniach służbowych nie mogę poświęcać 4 godzin dziennie na przeszukiwanie hiperparametrów, ale w Kaggle ta „strata czasu” staje się inwestycją w rozwój zawodowy.

Co jest ważne

  • Ucz się od zwycięzców: Ich rozwiązania to najlepsza metoda dydaktyczna. Analizuj ich podejścia, nawet jeśli boli to ego.
  • Używaj ensemblów: Mieszaj wyniki kilku modeli (LightGBM, XGBoost, CatBoost), aby zwiększyć dokładność. Różnorodność jest kluczowa.
  • Gromadź ekstensywne doświadczenie: Wielokrotne iteracje z hiperparametrami kształtują intuicję. Kaggle to idealna platforma do tego poza projektami komercyjnymi.

— Editorial Team

Google AdInline article slot
Advertisement 728x90

Czytaj dalej