Wyjaśnienie uczenia się częściowo nadzorowanego

W liście do akcjonariuszy firmy Amazon z 2017 roku Jeff Bezos napisał coś interesującego o Alexie, inteligentnej asystentce Amazon, sterowanej głosem:

W Stanach Zjednoczonych, Wielkiej Brytanii i Niemczech poprawiliśmy rozumienie języka mówionego Alexy o ponad 25% w ciągu ostatnich 12 miesięcy dzięki ulepszeniom w komponentach uczenia maszynowego Alexy i zastosowaniu technik uczenia się częściowo nadzorowanego. (Te częściowo nadzorowane techniki uczenia się zmniejszyły ilość oznaczonych danych potrzebnych do osiągnięcia tej samej poprawy dokładności o 40 razy!)

Biorąc pod uwagę te wyniki, może być interesujące wypróbowanie częściowo nadzorowanego uczenia się naszych własnych problemów klasyfikacyjnych. Ale co to jest częściowo nadzorowane uczenie się? Jakie są jego zalety i wady? Jak możemy to wykorzystać?

Co to jest uczenie się częściowo nadzorowane?

Jak można się spodziewać po nazwie, częściowo nadzorowane uczenie się jest pośrednie między uczeniem się nadzorowanym a uczeniem się nienadzorowanym. Uczenie nadzorowane rozpoczyna się od danych treningowych oznaczonych poprawnymi odpowiedziami (wartościami docelowymi). Po procesie uczenia się kończysz z modelem z dostrojonym zestawem wag, które mogą przewidywać odpowiedzi dla podobnych danych, które nie zostały jeszcze oznaczone.

Częściowo nadzorowane uczenie się wykorzystuje do dopasowania do modelu dane oznaczone i nieoznaczone. W niektórych przypadkach, takich jak Alexa, dodanie nieoznakowanych danych w rzeczywistości poprawia dokładność modelu. W innych przypadkach nieoznakowane dane mogą pogorszyć model; różne algorytmy mają podatności na różne cechy danych, co omówię poniżej.

Ogólnie rzecz biorąc, tagowanie danych kosztuje i wymaga czasu. Nie zawsze jest to problem, ponieważ niektóre zestawy danych mają już tagi. Ale jeśli masz dużo danych, z których tylko niektóre są otagowane, dobrym sposobem na wypróbowanie jest nauczanie częściowo nadzorowane.

Półnadzorowane algorytmy uczenia się

Nauka częściowo nadzorowana sięga co najmniej 15 lat wstecz, a może nawet więcej; Jerry Zhu z University of Wisconsin napisał ankietę dotyczącą literatury w 2005 r. W ostatnich latach częściowo nadzorowane uczenie się odrodziło się nie tylko w Amazonie, ponieważ zmniejsza poziom błędów w ważnych wzorcach.

Sebastian Ruder z DeepMind w kwietniu 2018 r. Napisał na blogu post o niektórych częściowo nadzorowanych algorytmach uczenia się, które tworzą etykiety proxy. Należą do nich samokształcenie, uczenie się z wielu perspektyw i samodzielne tworzenie zespołów.

Samouczenie wykorzystuje własne przewidywania modelu dotyczące danych bez etykiety, aby dodać je do zestawu danych z etykietami. Zasadniczo ustalasz pewien próg dla poziomu ufności prognozy, często 0,5 lub więcej, powyżej którego wierzysz prognozie i dodajesz ją do oznaczonego zestawu danych. Wciąż ponownie trenujesz model, aż nie będzie już prognoz, które są pewne.

To nasuwa pytanie o faktyczny model, który ma być użyty do treningu. Podobnie jak w przypadku większości systemów uczących się, prawdopodobnie chcesz wypróbować każdy rozsądny model kandydata w nadziei na znalezienie takiego, który działa dobrze.

Samokształcenie odniosło mieszany sukces. Największą wadą jest to, że model nie jest w stanie skorygować własnych błędów: jedna wysoce pewna (ale błędna) prognoza dotycząca, powiedzmy, wartości odstającej może uszkodzić cały model.

Szkolenie z wykorzystaniem wielu widoków uczy różne modele w różnych widokach danych, które mogą obejmować różne zestawy funkcji, różne architektury modeli lub różne podzbiory danych. Istnieje wiele algorytmów uczących w wielu widokach, ale jednym z najbardziej znanych jest trójtrening. Zasadniczo tworzysz trzy różne modele; za każdym razem, gdy dwa modele zgadzają się na etykiecie punktu danych, ta etykieta jest dodawana do trzeciego modelu. Podobnie jak w przypadku samokształcenia, zatrzymujesz się, gdy nie będzie już dodawanych etykiet do żadnego z modeli.

Samodzielne tworzenie zespołów zazwyczaj wykorzystuje jeden model z kilkoma różnymi konfiguracjami. W metodzie drabinkowej predykcja na czystym przykładzie jest używana jako etykieta zastępcza dla losowo zakłócanego przykładu w celu opracowania funkcji odpornych na zakłócenia.

Samouczek Jerry'ego Zhu z 2007 roku rozważa również szereg innych algorytmów. Obejmują one modele generatywne (takie jak te, które zakładają rozkład Gaussa dla każdej klasy), częściowo nadzorowane maszyny wektorów nośnych i algorytmy oparte na grafach.

Częściowo nadzorowane uczenie się w chmurze

Częściowo nadzorowane uczenie się powoli wkracza do głównego nurtu usług uczenia maszynowego. Na przykład Amazon SageMaker Ground Truth używa Amazon Mechanical Turk do ręcznego etykietowania i określania granic części zestawu obrazów oraz wykorzystuje trening sieci neuronowej do etykietowania pozostałej części zestawu obrazów.

Podobne schematy uczenia się częściowo nadzorowanego można wykorzystać do innych rodzajów uczenia się częściowo nadzorowanego, w tym do przetwarzania języka naturalnego, klasyfikacji i regresji w kilku usługach. Musisz jednak napisać własny kod kleju dla algorytmu częściowo nadzorowanego na większości z nich.

-

Przeczytaj więcej o uczeniu maszynowym: 

  • Wyjaśnienie uczenia maszynowego
  • Wyjaśnienie głębokiego uczenia się
  • Objaśnienie przetwarzania języka naturalnego
  • Wyjaśnienie nadzorowanego uczenia się
  • Wyjaśnienie uczenia się bez nadzoru
  • Wyjaśnienie uczenia się częściowo nadzorowanego
  • Wyjaśnienie uczenia się ze wzmocnieniem
  • Automatyczne uczenie maszynowe lub wyjaśnienie AutoML
  • Sztuczna inteligencja, uczenie maszynowe i uczenie głębokie: wszystko, co musisz wiedzieć
  • Najlepsze platformy do uczenia maszynowego i głębokiego uczenia się
  • 6 sposobów na niepowodzenie uczenia maszynowego
  • Lekcje uczenia maszynowego: 5 firm dzieli się swoimi błędami
  • Najlepsze oprogramowanie open source do uczenia maszynowego
  • 5 najlepszych języków programowania do rozwoju AI