0 / 0
Go back to the English version of the documentation
Ciągłe uczenie maszynowe
Last updated: 12 sty 2023
Ciągłe uczenie maszynowe (SPSS Modeler)

Ciągłe uczenie maszynowe bazuje na rezultatach badań IBM i jest inspirowane biologicznym zjawiskiem naturalnej selekcji. Można z niego korzystać w węzłach Auto Klasyfikacja i Auto Predykcja.

Jedną z niedogodności związanych z modelowaniem jest dezaktualizacja modeli wynikająca ze zmian w danych źródłowych zachodzących na przestrzeni czasu. Zjawisko to jest często nazywane dryftem modelu lub dryfem modelu. SPSS Modeler oferuje funkcję ciągłego zautomatyzowanego uczenia maszynowego, która pomaga w skutecznym niwelowaniu skutków dryftu modelu.

Co to jest dryft modelu? Model zbudowany na podstawie danych historycznych jest zagrożony stagnacją. W wielu przypadkach wciąż napływają nowe dane (nowe odmiany, wzory, trendy itd.), które nie zostały odzwierciedlone w danych historycznych. Badacze IBM poszukujący rozwiązania tego problemu sięgnęli po inspirację do świata biologii, nawiązując do zjawiska doboru naturalnego (lub selekcji naturalnej). Wyobraźmy sobie, że modele to gatunki, a dane to natura. Powinniśmy pozwolić, by to dane wybierały model — tak jak natura wybiera gatunki. Istnieje jedna duża różnica między modelami a gatunkami: gatunki mogą ewoluować, ale modele są statyczne po ich zbudowaniu.

Istnieją dwa warunki wstępne ewolucji gatunku: mutacje genetyczne i populacja. Patrząc z perspektywy modelowania, aby spełnić pierwszy warunek wstępny (mutacje genetyczne), powinniśmy wprowadzać zmienione dane do istniejącego modelu. Aby spełnić drugi warunek konieczny (populacja), powinniśmy używać wielu modeli, a nie tylko jednego. Jak przedstawić wiele modeli? W postaci zbioru modelu zespolonego (EMS, Ensemble Model Set)!

Na poniższej ilustracji przedstawiono możliwą ewolucję zbioru EMS. Lewa górna część ilustracji to dane historyczne z grupami hybrydowymi. Grupy hybrydowe pozwalają uzyskać bogaty początkowy zbiór EMS. Prawa górna część ilustracji odpowiada nowej porcji danych, która staje się dostępna (z pionowymi paskami po obu stronach). Lewy pionowy pasek oznacza bieżący status, a prawy pionowy pasek oznacza status, przy którym istnieje ryzyko dryftu modelu. W każdym nowym cyklu ciągłego uczenia maszynowego wykonywane są dwa kroki w celu wymuszenia ewolucji modelu i uniknięcia dryftu.

Najpierw konstruujemy nowy zbiór modelu zespolonego (EMS) na podstawie istniejących danych uczących. Następnie, gdy pojawi się nowa porcja danych, budujemy nowe modele na podstawie tych nowych danych i dodajemy je do EMS jako modele składowe. Wagi istniejących modeli składowych w zbiorze EMS są poddawane ponownej ocenie na podstawie nowych danych. W wyniku tej ponownej oceny do bieżącej predykcji wybierane są modele składowe o wyższych wagach, a modele składowe o niższych wagach mogą zostać usunięte ze zbioru EMS. Ten proces odświeża zbiór EMS zarówno pod względem wag, jak i instancji modeli, przez co możliwe jest elastyczne i efektywne uwzględnienie skutków nieuniknionych zmian zachodzących w danych.

Rysunek 1. Ciągłe automatyczne uczenie maszynowe
Ciągłe automatyczne uczenie maszynowe

Zbiór modelu zespolonego (EMS) jest wygenerowanym automatyczny modelem użytkowym, a między węzłem modelowania automatycznego a wygenerowanym automatycznym modelem użytkowym istnieje odsyłacz definiujący relację odświeżania między nimi. Po włączeniu ciągłego automatycznego uczenia maszynowego nowe zasoby danych są w sposób ciągły kierowane do węzłów modelowania automatycznego, aby generowane były nowe modele składowe. Model użytkowy jest aktualizowany, a nie zastępowany.

Na poniższej ilustracji przedstawiono przykład wewnętrznej struktury zbioru EMS w scenariuszu ciągłego uczenia maszynowego. Do bieżącej predykcji wybierane są tylko trzy najlepsze modele składowe. Dla każdego modelu składowego (są one oznaczone M1, M2 i M3) utrzymywane są dwa rodzaje wag. Bieżąca waga modelu (CMW, Current Model Weight) mierzy jakość działania modelu na nowej porcji danych, natomiast zakumulowana waga modelu (AMW, Accumulated Model Weight) mierzy kompleksowo jakość działania modelu składowego na niedawnych porcjach danych. Waga AMW jest obliczana iteracyjnie na podstawie CMW i poprzednich wartości samej siebie, a do zachowywania równowagi między tymi wagami służy hiperparametr beta. AMW jest obliczana ze wzoru na tzw. wykładniczą średnią ruchomą.

Gdy pojawia się nowa porcja danych, SPSS Modeler na jej podstawie buduje kilka nowych modeli składowych. Na tej przykładowej ilustracji model czwarty (M4) ma CMW i AMW obliczone podczas pierwszej iteracji budowania modeli. SPSS Modeler używa nowej porcji danych do ponownej oceny istniejących modeli składowych (M1, M2 i M3), a następnie aktualizuje ich wagi CMW i AMW na podstawie wyników ponownej oceny. Na koniec SPSS Modeler może zmienić kolejność modeli składowych na podstawie wag CMW lub AMW i wybrać trzy najlepsze według tej nowej kolejności.

Na tej ilustracji waga CMW jest opisana przy użyciu wartości znormalizowanej (suma = 1), a waga AMW jest obliczana na podstawie CMW. W programie SPSS Modeler wagi CMW i AMW są wyrażone jako wartości bezwzględne (równe wybranej mierze, np. dokładności, ważonej wynikiem oceny).

Rysunek 2. Struktura zbioru EMS
Struktura zbioru EMS
Należy zauważyć, że istnieją dwa typy wag zdefiniowane dla każdego modelu komponentu EMS, z których oba mogą być używane do wyboru pierwszych N modeli i modelu komponentów:
  • Bieżąca waga modelu (CMW) jest obliczana na podstawie oceny z nową porcją danych (na przykład oceny dokładności działania modelu na tej nowej porcji danych).
  • Skumulowana waga modelu (AMW) jest obliczana na podstawie zarówno CMW, jak i dotychczasowych wartości AMW (na przykład metodą ważonej wykładniczo średniej ruchomej (EWMA, exponentially weighted moving average)).

    Wykładnicza formuła średniej ruchomej do obliczania wartości AMW:
    Wzór wykładniczej średniej ruchomej do obliczania AMW

W programie SPSS Modeler po wykonaniu węzła Auto Klasyfikacja w celu wygenerowania modelu użytkowego dostępne są następujące opcje ciągłego uczenia maszynowego w odniesieniu do modeli:

  • Włącz ciągłe automatyczne uczenie maszynowe podczas odświeżania modelu. Wybranie tej opcji włącza ciągłe uczenie maszynowe. Należy pamiętać, że do uczenia ciągłego modelu automatycznego wymagana jest spójność metadanych (modelu danych). Jeśli ta opcja zostanie wybrana, inne opcje zostaną włączone.
  • Włącz automatyczną ponowną oceną wag modelu automatycznego. Ta opcja określa, czy przy każdym odświeżeniu modelu mają być obliczane miary ewaluacyjne (np. dokładność). Wybranie tej opcji powoduje, że — podczas odświeżania modelu — po odświeżeniu zbioru EMS zostanie uruchomiony proces automatycznej oceny. Wynika to z faktu, że zwykle konieczna jest ponowna ocena istniejących modeli składowych przy wykorzystaniu nowych danych, pozwalająca uzyskać odzwierciedlenie bieżącego stanu danych. Następnie modelom składowym w zbiorze EMS przypisywane są wagi na podstawie wyników ponownej ewaluacji; na podstawie tych wag określany jest udział każdego modelu składowego w ostatecznej predykcji zespolonej. Ta opcja wybierana jest domyślnie.
    Rysunek 3. Ustawienia modelu
    Ustawienia modelu
    Rysunek 4. Przewidywana zmienna typu flaga
    Przewidywana zmienna typu flaga
    Poniżej wymieniono wagi CMW i AMW obsługiwane przez węzeł Auto Klasyfikacja:
    Tabela 1. Obsługiwane wagi CMW i AMW
    Typ docelowy CMW AMW
    zmienna przewidywana typu flaga Ogólna dokładność
    Obszar pod krzywą
    Skumulowana dokładność
    Skumulowany obszar pod krzywą
    przewidywana zmienna nominalna Ogólna dokładność Skumulowana dokładność

    Poniższe trzy opcje dotyczą wagi AMW, która służy do oceny jakości działania modelu składowego na niedawnych porcjach danych:

  • Włącz czynnik skumulowany podczas ponownego wyznaczania wag modelu. Wybranie tej opcji powoduje, że podczas ponownej oceny modelu (wyznaczania wag) obliczana będzie waga AMW. AMW reprezentuje wszechstronną wydajność modelu komponentu EMS w ostatnich okresach porcji danych, związanych z skumulowanym czynnikiem β zdefiniowanym w formule AMW wymienionym wcześniej, które można dostosować we właściwościach węzła. Gdy ta opcja nie jest wybrana, obliczana będzie tylko waga CMW. Ta opcja wybierana jest domyślnie.
  • Redukuj model na podstawie skumulowanego limitu podczas odświeżania modelu. Należy wybrać tę opcję, jeśli modele składowe o wagach AMW niższych od określonego limitu mają być usuwane ze zbioru EMS modeli automatycznych podczas odświeżania modeli. Może to być przydatne, gdy chcemy usuwać bezużyteczne modele składowe, by zapobiec nadmiernemu rozrastaniu się zbioru EMS.
    Gdy jako metoda zespolenia wybrane jest Głosowanie ważone oceną, ocena skumulowanych wag względem limitu jest dokonywana dla miary skumulowanej. Patrz poniżej.
    Rysunek 5. Zmienne przewidywane nominalne i typu flaga
    Zmienne przewidywane nominalne i typu flaga

    Należy zauważyć, że jeśli jako miara ewaluacyjna zostanie wybrana Dokładność modelu, to usuwane będą modele o skumulowanej dokładności niższej od określonego limitu. Jeśli jako miara ewaluacyjna zostanie wybrany Obszar pod krzywą, to usuwane będą modele o skumulowanym obszarze pod krzywą niższym od określonego limitu.

    Domyślnie miarę ewaluacyjną w węźle Auto Klasyfikacja jest Dokładność modelu; jest także dostępna opcjonalna miara, Obszar pod krzywą ROC, przeznaczona do zmiennych przewidywanych typu flaga.

  • Użyj skumulowanego głosowania ważonego oceną. Wybierz tę opcję, jeśli do bieżącej oceny/predykcji ma być używana waga AMW. W przeciwnym razie (domyślnie) używana jest waga CMW. Ta opcja jest włączona, gdy jako metodę zespolenia wybrano Głosowanie ważone oceną.

    W przypadku zmiennych typu flaga wybranie tej opcji i miary ewaluacyjnej Dokładność modelu powoduje użycie wartości Skumulowana dokładność jako wagi AMW przy ocenie bieżącej. Natomiast w przypadku wybrania miary ewaluacyjnej Obszar pod krzywą, jako waga AMW przy bieżącej ocenie będzie używana wartość Skumulowany obszar pod krzywą. Jeśli ta opcja nie zostanie wybrana, a jako miara ewaluacyjna wybrana zostanie opcja Dokładność modelu, to Ogólna dokładność będzie używana jako waga CMW przy bieżącej ocenie. W przypadku wybrania miary Obszar pod krzywą wartość Obszar pod krzywą będzie używana jako miary CMW przy bieżącej ocenie.

    Dla nominalnych zmiennych przewidywanych wybranie opcji Użyj skumulowanego głosowania ważonego oceną powoduje, że Skumulowana dokładność będzie używana jako waga AMW przy bieżącej ocenie. W przeciwnym razie Ogólna dokładność będzie używana jako waga CMW przy bieżącej ocenie.

Ciągłe automatyczne uczenie maszynowe sprawia, że automatyczny model użytkowy stale ewoluuje w wyniku przebudowywania modelu automatycznego. Użytkownik ma więc do dyspozycji najbardziej aktualną wersję odzwierciedlającą bieżący stan danych. SPSS Modeler umożliwia wybieranie N najlepszych modeli składowych ze zbioru EMS na podstawie ich bieżących wag, a tym samym dostosowywanie modelu EMS do zmian danych zachodzących wraz z upływem czasu.

Uwaga: Węzeł Auto Predykcja jest znacznie prostszą sprawą, udostępniając podzbiór opcji w węźle Auto Klasyfikacja.

Przykład

W tym przykładzie wykorzystamy ciągłe uczenie maszynowe do przewidywania zachowań i zapobiegania rezygnacjom klientów w branży telekomunikacyjnej.

W poniższym przepływie zasób danych zawiera informacje o klientach, którzy zrezygnowali w ostatnim miesiącu (kolumna Churn). Ponieważ co miesiąc dostępne będą nowe dane, ten scenariusz jest odpowiedni do ciągłego uczenia maszynowego. W tym przykładzie na podstawie danych ze stycznia (Jan) konstruujemy początkowy model automatyczny, a następnie na podstawie danych z lutego (Feb) doskonalimy model automatyczny poprzez ciągłe uczenie maszynowe.

Rysunek 6. Przykładowy przepływ
Przykładowy przepływ
W górnej gałęzi przepływu, za węzłem zasobu danych, Data Asset, znajduje się węzeł filtru, który odfiltrowuje nieistotne zmienne. Na końcu gałęzi znajduje się końcowy węzeł Auto Klasyfikacja. W ustawieniach zaawansowanych węzła wybieramy algorytmy, których chcemy używać do uczenia. W tym przykładzie wybieramy trzy algorytmy: Regresja logistyczna, Sieć bayesowska i Sieć neuronowa. Następnie uruchamiamy przepływ, aby wygenerować automatyczny model użytkowy.

Zobaczmy teraz, co kryje się we wnętrzu automatycznego modelu użytkowego. Widzimy, że zawiera on trzy modele składowe odpowiadające trzem wybranym algorytmom. Dla każdego modelu składowego generowanych jest kilka miar ewaluacyjnych (takich jak dokładność i obszar pod krzywą). Te miary ewaluacyjne opisują jakość działania modelu na danych uczących (zbiorze danych ze stycznia). Możemy wybrać, które modele składowe mają być używane w bieżącej predykcji zespolonej.

Rysunek 7. Miary ewaluacyjne
Miary ewaluacyjne

Możemy także przejrzeć skumulowane miary ewaluacyjne. Te skumulowane miary są wykorzystywane do ciągłego uczenia maszynowego, ponieważ opisują jakość działania modelu składowego na ostatnio zmienionych danych. W efekcie pozwalają na kompleksową ocenę jakości działania modelu na danych z jakiegoś okresu. Ponieważ jest to nasz początkowy model automatyczny, widzimy, że początkowe wartości skumulowanych miar są takie same, jak wartości odpowiednich miar bieżących. Domyślnie miary ewaluacyjne są obliczane według danych uczących, zatem możliwy jest pewien stopień przeuczenia. Aby go uniknąć, węzeł Auto Klasyfikacja oferuje opcję budowania, która oblicza bardziej stabilne miary ewaluacyjne poprzez walidację krzyżową.

Zobaczmy teraz, jak generowana jest ostateczna predykcja zespolona. Jeśli otworzymy właściwości modelu automatycznego, zobaczymy w obszarze Zmienne przewidywane typu flaga w modelu zespolonym, że przewidywana zmienna Churn jest flagą tak/nie. W obszarze Zmienne przewidywane nominalne w modelu zespolonym (dla zmiennych przewidywanych zawierających więcej niż dwie wartości) znajduje się lista rozwijana Metoda zespolenia. Na liście rozwijanej dostępnych jest kilka opcji (na przykład Głosowanie większościowe oznacza, że każdy model składowy ma jeden głos, a Głosowanie ważone ufnością oznacza, że jako waga w głosowaniu używana jest predykcja każdego z modeli składowych — przy czym predykcje o wyższej ufności mają większy wpływ na ostateczną predykcję zespoloną). Podobnie, aby stworzyć lepsze warunki do ciągłego uczenia maszynowego, można użyć opcji Głosowanie ważone oceną, która powoduje, że wagą w głosowaniu będzie miara ewaluacyjna modelu składowego (np. dokładność lub obszar pod krzywą). W przypadku zmiennej przewidywanej typu flaga można także wybrać konkretną miarę ewaluacyjną jako wagę w głosowaniu typu Głosowanie ważone oceną. W przypadku nominalnej zmiennej przewidywanej obsługiwana jest obecnie tylko miara Dokładność.

Rysunek 8. Zmienne przewidywane nominalne i typu flaga
Zmienne przewidywane nominalne i typu flaga

Ciągłe uczenie maszynowe włącza się w obszarze Wspólne ustawienia modelu zespolonego. Możemy teraz sięgnąć po dane z lutego i sprawdzić, co się stanie. Możemy wybrać dwa różne algorytmy, aby móc odróżnić je od algorytmów istniejących modeli składowych. Po ponownym zbudowaniu przepływu i wyświetleniu zawartości modelu automatycznego widzimy, że dodane zostały dwa nowe modele składowe (C5 i C&RT). Zauważamy także, że miary ewaluacyjne istniejących modeli składowych zostały ponownie obliczone. Zarówno miary CMW, jak i AMW są inne niż dotychczas. Możemy teraz porównać je z odpowiednimi miarami w pierwotnym modelu automatycznym.

Rysunek 9. Miary ewaluacyjne
Miary ewaluacyjne

Co teraz? Dzięki udoskonalonemu modelowi auto można wybrać priorytetową miarę ewaluacyjną i uzyskać N najlepszych modeli składowych uporządkowanych według tej miary. Następnie w przyszłych analizach predykcyjnych użyjemy N najlepszych modeli składowych do ostatecznej predykcji zespolonej. A jeśli jako Metoda zespolenia wybrane jest Głosowanie ważone oceną, możemy jako wag głosowania użyć skumulowanych miar, zaznaczając po prostu opcję Użyj skumulowanego głosowania ważonego oceną w ustawieniach Wspólne ustawienia modelu zespolonego. Jeśli ta opcja nie jest wybrana, to przy głosowaniu ważonym ocenami domyślnie używane są miary CMW.

Ciągłe automatyczne uczenie maszynowe sprawia, że automatyczny model użytkowy stale ewoluuje w wyniku przebudowywania modelu na podstawie nowych porcji danych. Użytkownik ma więc do dyspozycji najbardziej aktualną wersję odzwierciedlającą bieżący stan danych. Możliwe jest dzięki temu wybieranie N najlepszych modeli składowych ze zbioru EMS na podstawie ich bieżących lub skumulowanych miar ewaluacyjnych, a tym samym dostosowywanie modelu EMS do zmian danych zachodzących wraz z upływem czasu

Okresowo użytkownik może zdecydować się na okresowe wdrożenie najbardziej aktualnego modelu Auto w Watson Machine Learning dla wygody użytkownika.

Generative AI search and answer
These answers are generated by a large language model in watsonx.ai based on content from the product documentation. Learn more