AI 101
Czym jest uczenie zespołowe?

Jedną z najpotężniejszych technik uczenia maszynowego jest uczenie zespołowe. Uczenie zespołowe polega na wykorzystaniu wielu modeli uczenia maszynowego w celu poprawy niezawodności i dokładności prognoz. Ale w jaki sposób użycie wielu modeli uczenia maszynowego prowadzi do dokładniejszych prognoz? Jakie techniki są stosowane do tworzenia modeli uczenia zespołowego? Przyjrzymy się odpowiedziom na te pytania, analizując uzasadnienie stosowania modeli zespołowych oraz główne sposoby ich tworzenia.
Czym jest uczenie zespołowe?
Mówiąc najprościej, uczenie zespołowe to proces trenowania wielu modeli uczenia maszynowego i łączenia ich wyników. Różne modele służą jako baza do stworzenia jednego optymalnego modelu predykcyjnego. Połączenie zróżnicowanego zestawu indywidualnych modeli uczenia maszynowego może poprawić stabilność modelu ogólnego, prowadząc do dokładniejszych prognoz. Modele uczenia zespołowego są często bardziej niezawodne niż modele indywidualne, w związku z czym często zajmują pierwsze miejsca w wielu konkursach uczenia maszynowego. Istnieją różne techniki, których inżynier może użyć do stworzenia modelu uczenia zespołowego. Proste techniki uczenia zespołowego obejmują takie rzeczy jak uśrednianie wyników różnych modeli, podczas gdy istnieją również bardziej złożone metody i algorytmy opracowane specjalnie w celu łączenia prognoz wielu podstawowych uczących się/modeli.
Dlaczego stosować metody uczenia zespołowego?
Modele uczenia maszynowego mogą się od siebie różnić z różnych powodów. Różne modele uczenia maszynowego mogą operować na różnych próbkach danych populacji, mogą być stosowane różne techniki modelowania oraz może być używana inna hipoteza. Wyobraź sobie, że grasz w grę quizową z dużą grupą ludzi. Jeśli jesteś w drużynie sam, z pewnością są tematy, na które masz wiedzę, i wiele tematów, na które nie masz żadnej wiedzy. Załóżmy teraz, że grasz w drużynie z innymi osobami. Tak jak ty, będą oni mieli pewną wiedzę dotyczącą swoich własnych specjalności i brak wiedzy na inne tematy. Jednak gdy połączy się waszą wiedzę, macie dokładniejsze odpowiedzi w większej liczbie dziedzin, a liczba tematów, na które wasza drużyna nie ma wiedzy, maleje. Jest to ta sama zasada, która leży u podstaw uczenia zespołowego: łączenie prognoz różnych członków zespołu (modeli indywidualnych) w celu poprawy dokładności i minimalizacji błędów. Statystycy udowodnili, że gdy grupę ludzi poprosi się o odgadnięcie prawidłowej odpowiedzi na dane pytanie z zakresem możliwych odpowiedzi, wszystkie ich odpowiedzi tworzą rozkład prawdopodobieństwa. Osoby, które naprawdę znają prawidłową odpowiedź, wybiorą ją z pewnością, podczas gdy osoby, które wybiorą błędne odpowiedzi, rozproszą swoje przypuszczenia w zakresie możliwych nieprawidłowych odpowiedzi. Wracając do przykładu gry quizowej, jeśli ty i twoi dwaj przyjaciele wiecie, że prawidłowa odpowiedź to A, wszyscy troje zagłosujecie na A, podczas gdy trzy inne osoby w waszej drużynie, które nie znają odpowiedzi, prawdopodobnie błędnie zgadną B, C, D lub E. W rezultacie A ma trzy głosy, a inne odpowiedzi prawdopodobnie mają tylko jeden lub maksymalnie dwa głosy. Wszystkie modele mają pewien błąd. Błędy dla jednego modelu będą różnić się od błędów wytworzonych przez inny model, ponieważ same modele są różne z powodów opisanych powyżej. Gdy przeanalizuje się wszystkie błędy, nie będą one skupione wokół jednej lub drugiej odpowiedzi, lecz będą rozproszone. Nieprawidłowe przypuszczenia są w zasadzie rozłożone na wszystkie możliwe błędne odpowiedzi, wzajemnie się znosząc. Tymczasem prawidłowe przypuszczenia z różnych modeli będą skupione wokół prawdziwej, poprawnej odpowiedzi. Gdy stosuje się metody uczenia zespołowego, poprawną odpowiedź można znaleźć z większą niezawodnością.
Proste metody uczenia zespołowego
Proste metody uczenia zespołowego zazwyczaj polegają po prostu na zastosowaniu technik statystyki opisowej, takich jak określanie dominanty, średniej lub średniej ważonej zbioru prognoz. Dominanta odnosi się do najczęściej występującego elementu w zbiorze liczb. Aby uzyskać dominantę, poszczególne modele uczące zwracają swoje prognozy, a te prognozy są traktowane jako głosy na ostateczną prognozę. Określenie średniej prognoz odbywa się po prostu przez obliczenie średniej arytmetycznej prognoz, zaokrąglonej do najbliższej liczby całkowitej. Wreszcie, średnią ważoną można obliczyć, przypisując różne wagi modelom używanym do tworzenia prognoz, przy czym wagi reprezentują postrzeganą ważność danego modelu. Numeryczna reprezentacja prognozy klasy jest mnożona przez wagę od 0 do 1,0, indywidualne ważone prognozy są następnie sumowane, a wynik zaokrąglany do najbliższej liczby całkowitej.
Zaawansowane metody uczenia zespołowego
Istnieją trzy główne zaawansowane techniki uczenia zespołowego, z których każda jest zaprojektowana do radzenia sobie z określonym typem problemu uczenia maszynowego. Techniki „bagging” są używane do zmniejszenia wariancji prognoz modelu, przy czym wariancja odnosi się do tego, jak bardzo wynik prognoz różni się w oparciu o tę samą obserwację. Techniki „boosting” są używane do zwalczania obciążenia modeli. Wreszcie, „stacking” jest używany do ogólnej poprawy prognoz. Same metody uczenia zespołowego można ogólnie podzielić na jedną z dwóch różnych grup: metody sekwencyjne i równoległe metody zespołowe. Sekwencyjne metody zespołowe otrzymały nazwę „sekwencyjne”, ponieważ podstawowi uczący się/modele są generowane sekwencyjnie. W przypadku metod sekwencyjnych kluczową ideą jest wykorzystanie zależności między podstawowymi uczącymi się w celu uzyskania dokładniejszych prognoz. Błędnie oznaczone przykłady mają dostosowywane wagi, podczas gdy prawidłowo oznaczone przykłady zachowują te same wagi. Za każdym razem, gdy generowany jest nowy uczący się, wagi są zmieniane, a dokładność (miejmy nadzieję) się poprawia. W przeciwieństwie do sekwencyjnych modeli zespołowych, równoległe metody zespołowe generują podstawowych uczących się równolegle. Podczas przeprowadzania równoległego uczenia zespołowego chodzi o wykorzystanie faktu, że podstawowi uczący się mają niezależność, ponieważ ogólny wskaźnik błędów można zmniejszyć poprzez uśrednienie prognoz poszczególnych uczących się. Metody uczenia zespołowego mogą być z natury jednorodne lub heterogeniczne. Większość metod uczenia zespołowego jest jednorodna, co oznacza, że używają one pojedynczego typu podstawowego modelu/algorytmu uczącego się. Natomiast zespoły heterogeniczne wykorzystują różne algorytmy uczące się, różnicując i urozmaicając uczących się, aby zapewnić jak najwyższą dokładność.
Przykłady algorytmów uczenia zespołowego

Wizualizacja boosting’u zespołowego. Zdjęcie: Sirakorn via Wikimedia Commons, CC BY SA 4.0, (https://commons.wikimedia.org/wiki/File:Ensemble_Boosting.svg)
Przykładami sekwencyjnych metod zespołowych są AdaBoost, XGBoost oraz Gradient tree boosting. Są to wszystkie modele boosting’u. Dla tych modeli boosting’u celem jest przekształcenie słabych, niedziałających dobrze uczących się w bardziej wydajnych uczących się. Modele takie jak AdaBoost i XGBoost zaczynają od wielu słabych uczących się, które działają tylko nieznacznie lepiej niż losowe zgadywanie. W miarę kontynuowania treningu, wagi są nakładane na dane i dostosowywane. Instancje, które zostały błędnie sklasyfikowane przez uczących się we wcześniejszych rundach treningu, otrzymują większą wagę. Po powtórzeniu tego procesu przez żądaną liczbę rund treningowych, prognozy są łączone za pomocą albo ważonej sumy (dla zadań regresji) i ważonego głosowania (dla zadań klasyfikacji).

Proces uczenia bagging. Zdjęcie: SeattleDataGuy via Wikimedia Commons, CC BY SA 4.0 (https://commons.wikimedia.org/wiki/File:Bagging.png)
Przykładem równoległego modelu zespołowego jest klasyfikator Random Forest, a Random Forests jest również przykładem techniki bagging. Termin „bagging” pochodzi od „bootstrap aggregation”. Próbki są pobierane z całkowitego zbioru danych przy użyciu techniki próbkowania znanej jako „bootstrap sampling”, które są używane przez podstawowych uczących się do tworzenia prognoz. Dla zadań klasyfikacji, wyniki modeli bazowych są agregowane przy użyciu głosowania, podczas gdy dla zadań regresji są one uśredniane. Random Forests używa indywidualnych drzew decyzyjnych jako swoich podstawowych uczących się, a każde drzewo w zespole jest budowane przy użyciu innej próbki ze zbioru danych. Losowy podzbiór cech jest również używany do wygenerowania drzewa. Prowadzi to do wysoce zrandomizowanych indywidualnych drzew decyzyjnych, które są wszystkie połączone razem, aby zapewnić niezawodne prognozy.

Wizualizacja stacking’u zespołowego. Zdjęcie: Supun Setunga via Wikimedia Commons, CC BY S.A 4.0 (https://commons.wikimedia.org/wiki/File:Stacking.png)
Jeśli chodzi o techniki stacking’u zespołowego, wiele modeli regresji lub klasyfikacji jest łączonych razem za pośrednictwem modelu meta wyższego poziomu. Niższego poziomu, podstawowe modele są trenowane poprzez podanie im całego zbioru danych. Wyniki modeli bazowych są następnie używane jako cechy do trenowania modelu meta. Modele stacking’u zespołowego są często heterogeniczne z natury.












