Zanim pojawiły się modele językowe, uczenie maszynowe od dekad działało w tle: filtrowało spam, rekomendowało filmy, wykrywało oszustwa płatnicze. Zrozumienie jego podstaw jest niezbędne, żeby dyskusja o AI nie sprowadzała się do wrażeń.
Programowanie kontra uczenie maszynowe
W klasycznym programowaniu piszesz reguły: jeśli w tytule jest "darmowa nagroda", oznacz jako spam. Ty tworzysz logikę, komputer ją wykonuje.
W uczeniu maszynowym reguł nie piszesz. Podajesz przykłady - dziesiątki tysięcy wiadomości oznaczonych jako spam i nie-spam - a algorytm sam wyszukuje zależności. Efektem jest model: zbiór parametrów pozwalający ocenić nową wiadomość.
Trzy główne rodzaje uczenia
Uczenie nadzorowane
Najczęstsze. Dane treningowe zawierają poprawne odpowiedzi: zdjęcie z etykietą "kot", historia kredytowa z informacją o spłacie. Model uczy się odwzorowania wejścia na wyjście. Stąd klasyfikacja (kategoria) i regresja (wartość liczbowa).
Uczenie nienadzorowane
Dane bez etykiet. Algorytm szuka struktury sam: grupuje klientów o podobnych zachowaniach, wykrywa anomalie, redukuje liczbę wymiarów. Przydatne, gdy nie wiesz z góry, czego szukasz.
Uczenie ze wzmocnieniem
Model uczy się przez działanie i nagrody. Wykonuje ruch, dostaje sygnał zwrotny, koryguje strategię. Tak trenowano systemy grające w gry planszowe, a wariant z oceną ludzi jest jednym z etapów szkolenia modeli językowych.
Dane: najważniejszy i najbardziej niedoceniany element
Jakość modelu jest ograniczona jakością danych. Trzy problemy pojawiają się właściwie zawsze:
- Za mało danych - model zapamiętuje przykłady, zamiast wyciągać z nich ogólne prawidłowości.
- Niereprezentatywne dane - model uczony na jednej grupie zawodzi na innej. Klasyczny przypadek: system rekrutacyjny uczony na historycznych decyzjach powiela zawarte w nich uprzedzenia.
- Wyciek informacji - w danych treningowych znajduje się coś, co w praktyce będzie niedostępne. Model osiąga świetne wyniki na testach i rozpada się na produkcji.
Przeuczenie i niedouczenie
Przeuczenie to sytuacja, w której model nauczył się danych treningowych na pamięć, łącznie z ich szumem. Doskonałe wyniki na zbiorze treningowym, słabe na nowych danych.
Niedouczenie jest odwrotnością: model jest zbyt prosty, żeby uchwycić zależność, i myli się wszędzie po równo.
Dlatego dane dzieli się na trzy części: treningową (model się uczy), walidacyjną (dobiera się ustawienia) i testową (jednorazowa, uczciwa ocena). Zaglądanie do zbioru testowego przy dostrajaniu unieważnia całą ocenę.
Metryki: dokładność bywa myląca
Model wykrywający rzadką chorobę występującą u 1% populacji może odpowiadać "zdrowy" zawsze i mieć 99% dokładności. Bezużyteczny, a na papierze świetny.
- Precyzja - ile spośród wskazanych przypadków było trafnych.
- Czułość - ile spośród faktycznych przypadków model wychwycił.
- F1 - kompromis między nimi.
Wybór metryki to decyzja biznesowa. W wykrywaniu chorób gorsze jest przeoczenie niż fałszywy alarm; w filtrze spamu odwrotnie.
Sieci neuronowe i uczenie głębokie
Sieć neuronowa to model złożony z warstw prostych jednostek obliczeniowych. Każda warstwa przekształca dane, przekazując wynik dalej. "Głębokie" oznacza po prostu: wiele warstw.
Przewaga sieci polega na tym, że same wyodrębniają cechy z surowych danych. W klasycznym uczeniu maszynowym trzeba było ręcznie zdefiniować, na co algorytm ma patrzeć. Sieć uczy się tego sama - kosztem większej ilości danych, mocy obliczeniowej i przejrzystości.
Modele językowe to sieci neuronowe o architekturze transformera - ta sama zasada, tylko w skali miliardów parametrów.
Najczęstsze pytania
Do świadomego korzystania i oceny wdrożeń - nie. Do budowania i strojenia modeli - tak, przede wszystkim algebrę liniową, rachunek prawdopodobieństwa i podstawy analizy.
Od setek przykładów przy dostrajaniu gotowego modelu do milionów przy trenowaniu od zera. Dziś prawie zawsze zaczyna się od modelu wstępnie wytrenowanego - to skraca drogę o rzędy wielkości.
Nie w sensie absolutnym. Model odzwierciedla dane, na których się uczył, a te powstały w konkretnym kontekście społecznym. Można mierzyć i ograniczać obciążenia, ale nie da się ich całkowicie usunąć - dlatego przy decyzjach dotyczących ludzi wymagany jest nadzór człowieka.
