Samonadzorowane uczenie się: co to jest i jak działa
Opublikowany: 2024-07-18Samonadzorowane uczenie się, najnowocześniejsza technika sztucznej inteligencji, umożliwia maszynom odkrywanie wewnętrznych wzorców i struktur w danych, naśladując ludzką zdolność uczenia się na podstawie kontekstu i doświadczenia, a nie na podstawie wyraźnych instrukcji.
Spis treści
- Co to jest uczenie się samonadzorowane?
- Samonadzorowany w porównaniu do innych typów uczenia maszynowego
- Jak działa nauka samonadzorowana
- Rodzaje uczenia się samonadzorowanego
- Zastosowania uczenia się samonadzorowanego
- Zalety uczenia się pod nadzorem
- Wady uczenia się samonadzorowanego
Co to jest uczenie się samonadzorowane?
Uczenie się samonadzorowane to rodzaj uczenia maszynowego (ML), które uczy modele tworzenia własnych etykiet — czyli jawnie sparowanych danych wejściowych i wyjściowych — przy użyciu surowych, nieoznaczonych danych. W przeciwieństwie do uczenia się pod nadzorem, które wymaga znacznej ilości oznakowanych danych, uczenie się pod nadzorem generuje pseudoetykiety (sztuczne etykiety) na podstawie samych danych. Technika ta nadaje modelowi orientację na cel i wymierność podejścia do uczenia się pod nadzorem, a także zdolność uczenia się bez nadzoru do wyciągania użytecznych wniosków z ogromnych ilości nieoznaczonych danych.
Uczenie maszynowe to podzbiór sztucznej inteligencji (AI), która wykorzystuje dane i metody statystyczne do tworzenia modeli naśladujących ludzkie rozumowanie, zamiast polegać na zakodowanych na stałe instrukcjach. Samonadzorowane uczenie się wykorzystuje ogromne ilości dostępnych nieoznaczonych danych, co czyni go skutecznym podejściem do poprawy wydajności modelu przy minimalnej interwencji ręcznej. W rzeczywistości dzisiejsze główne generatywne modele tekstu i obrazu AI są w dużej mierze szkolone przy użyciu samonadzorowanego uczenia się.
Samonadzorowany w porównaniu do innych typów uczenia maszynowego
Uczenie się samonadzorowane łączy w sobie elementy uczenia się pod nadzorem i bez nadzoru, ale różni się od uczenia się częściowo nadzorowanego:
- Uczenie nadzorowane: wykorzystuje oznaczone dane do uczenia modeli pod kątem określonych zadań, takich jak klasyfikacja i regresja. Etykiety zapewniają wyraźne wskazówki, umożliwiając modelowi dokonywanie dokładnych przewidywań. Typowe zastosowania obejmują wykrywanie spamu, klasyfikację obrazów i prognozowanie pogody.
- Uczenie się bez nadzoru: działa z nieoznakowanymi danymi w celu znalezienia wzorców i grup. Identyfikuje klastry i powiązania oraz zmniejsza złożoność danych, ułatwiając ich przetwarzanie. Przykłady obejmują segmentację klientów, systemy rekomendacji i wykrywanie anomalii.
- Uczenie się częściowo nadzorowane:wykorzystuje niewielką ilość oznakowanych danych w celu zapewnienia wstępnych wskazówek, a następnie wykorzystuje jeden lub więcej większych zbiorów nieoznaczonych danych w celu udoskonalenia i ulepszenia modelu. To podejście jest szczególnie przydatne, gdy masz pewne oznakowane dane, ale wygenerowanie ich wystarczającej do pełnego nadzorowanego uczenia się byłoby zbyt trudne lub kosztowne.
- Uczenie się samonadzorowane:wykorzystuje surowe dane do generowania własnych etykiet, umożliwiając modelowi uczenie się na podstawie danych bez żadnych początkowych danych oznaczonych etykietami. Takie podejście jest szczególnie cenne, gdy oznaczone dane nie są w ogóle dostępne lub stanowią jedynie niewielki ułamek dostępnych danych, na przykład w przypadku przetwarzania języka naturalnego (NLP) lub rozpoznawania obrazu.
Jak działa nauka samonadzorowana
Samokontrola oznacza, że dane same dostarczają prawidłowych odpowiedzi. Proces uczenia się samonadzorowanego składa się z kilku etapów, łączących aspekty metod nadzorowanych i bez nadzoru:
Zbieranie danych:Zbierz dużą ilość surowych, nieoznaczonych danych. Dane te stanowią podstawę do tworzenia pseudoetykiet i uczenia modelu. Wiele zbiorów danych jest dostępnych bezpłatnie.
- Przetwarzanie wstępne:Przygotuj dane, aby zapewnić jakość. Ten krok obejmuje usuwanie duplikatów, obsługę brakujących wartości i normalizowanie zakresów danych.
- Tworzenie zadań:Twórz zagadki do rozwiązania dla modelu, zwane zadaniami pretekstowymi. Są one tworzone poprzez usunięcie lub przetasowanie części danych, na przykład usunięcie słów, usunięcie pikseli obrazu lub przemieszanie klatek wideo. Cokolwiek istniało przed tym celowym zepsuciem, znane jest jako pseudoetykieta: „właściwa odpowiedź” utworzona na podstawie samych danych, a nie etykietowania przez człowieka.
- Szkolenie:Trenuj model na podstawie zadań pretekstowych, korzystając z wygenerowanych pseudoetykiet. Oznacza to, że model próbuje wygenerować poprawną odpowiedź, porównuje ją z pseudoetykietą, dostosowuje i ponownie próbuje wygenerować poprawną odpowiedź. Ta faza pomaga modelowi zrozumieć relacje w danych i ostatecznie tworzy złożone zrozumienie relacji między danymi wejściowymi i wyjściowymi.
- Dostrajanie:zmień model, aby uczyć się na podstawie mniejszego, oznaczonego zestawu danych i poprawiać jego wydajność w przypadku określonych zadań. Ten krok gwarantuje, że model wykorzysta reprezentacje wyuczone podczas początkowej fazy uczenia. Dostrajanie nie jest bezwzględnie konieczne, ale zazwyczaj prowadzi do lepszych wyników.
- Ocena:oceń wydajność modelu na danych, których jeszcze nie widział. Wykorzystując standardowe metryki istotne dla zadania, takie jak wynik F1, ocena ta gwarantuje, że model dobrze uogólnia nowe dane.
- Wdrażanie i monitorowanie:wdrażaj przeszkolony model w rzeczywistych aplikacjach i stale monitoruj jego wydajność. W razie potrzeby zaktualizuj model o nowe dane, aby zachować jego dokładność i przydatność.
Rodzaje uczenia się samonadzorowanego
Samonadzorowane uczenie się obejmuje różne typy, każdy z wieloma technikami i podejściami. W tym miejscu omówimy kilka typów, podkreślając ich unikalne metody szkoleniowe i podając jeden lub dwa reprezentatywne przykłady dla każdego.
Dla obrazów
- Uczenie się przez samoprzewidywanie:Uczenie się przez przewidywanie obejmuje techniki takie jak automatyczne kodowanie, w ramach którego model uczy się kompresować informacje do prostszej formy, a następnie odtwarzać z nich oryginalne dane. W przetwarzaniu obrazu często oznacza to selektywne niszczenie części obrazu (na przykład przez maskowanie sekcji) i trenowanie modelu w zakresie rekonstrukcji oryginału. Pomaga to modelowi lepiej rozpoznawać obiekty w różnych pozycjach, rozmiarach, a nawet częściowo ukryte.
- Uczenie się kontrastowe:W uczeniu kontrastowym model uczy się rozróżniać podobne i różne obrazy, porównując je w parach lub grupach. Na przykład metoda SimCLR wykorzystuje powiększanie obrazu (takie jak kadrowanie, zniekształcanie i odwracanie) w celu tworzenia par treningowych. Pary dodatnie powstają poprzez zastosowanie różnych zmian w tym samym obrazie, natomiast pary ujemne pochodzą z różnych obrazów. Model uczy się następnie, jakie cechy są wspólne w parach podobnych, a różne w parach odmiennych.
- Metody oparte na klastrach:Metody oparte na klastrach grupują podobne punkty danych i wykorzystują te klastry jako pseudoetykiety do uczenia. Na przykład DeepCluster grupuje obrazy według podobnych cech i wykorzystuje te klastry do uczenia modelu. Proces obejmuje naprzemiennie grupowanie i trenowanie, dopóki model nie będzie działał dobrze. SwAV (Swapping Assignments Between Views) usprawnia to, wykorzystując wiele wersji tego samego obrazu, aby pomóc modelowi nauczyć się podstawowych cech, które pozostają niezmienne, takich jak krawędzie, tekstury i położenie obiektów.
Dla tekstu
- Samoprzewidujące uczenie się:jest to podstawowy mechanizm szkoleniowy dużych modeli językowych (LLM), które rozumieją tekst jako serię tokenów. Zwykle reprezentują one jedno słowo, ale czasami część słowa lub grupę słów.
- Maskowane modele językowe (MLM):Są to zdania, w których brakuje niektórych tokenów i których zadaniem jest przewidywanie brakujących słów. Ucząc się, jak wypełniać te luki, firmy MLM opracowują dokładną reprezentację struktury języka i kontekstu, a także mogą uwzględniać kontekst całych danych wejściowych podczas formułowania prognoz. Przydatne wyniki, takie jak analiza nastrojów lub rozpoznawanie nazwanych jednostek, są opracowywane poprzez dostrajanie. Doskonałym przykładem jest BERT, którego Google używa do zrozumienia intencji wyszukiwanych haseł.
- Modele języka przyczynowego (CLM):modele generatywne, takie jak ChatGPT, Claude i Gemini, uczą się odtwarzać widziany tekst, przewidując jedno słowo na raz na podstawie poprzednich tokenów. Po przeszkoleniu traktują tekst wejściowy jako kontekst swoich przewidywań i kontynuują przewidywanie z każdym nowym wygenerowanym tokenem. To sekwencyjne przewidywanie jest powodem, dla którego ich dane wyjściowe wydają się być wpisywane same, a nie wyświetlane wszystkie na raz.
- Uczenie się kontrastywne:w tym podejściu porównuje się pary próbek tekstu, podkreślając różnice i podobieństwa między nimi. SimCSE tworzy dwie nieco różne wersje tego samego zdania, stosując dropout, który losowo ignoruje części reprezentacji zdania w ukrytych warstwach podczas szkolenia (więcej o ukrytych warstwach znajdziesz w naszym poście na temat głębokiego uczenia się). Model uczy się rozpoznawać te wersje jako podobne. Technika ta poprawia zdolność modelu do rozumienia i porównywania zdań, dzięki czemu jest przydatna w zastosowaniach takich jak wyszukiwanie podobnych zdań lub pobieranie odpowiednich informacji dla zapytań.
- Przewidywanie następnego zdania (NSP):Jak sama nazwa wskazuje, NSP polega na przewidywaniu, czy dane zdanie jest kolejnym zdaniem innego w dokumencie, pomagając modelom zrozumieć relacje między zdaniami i logiczny przepływ tekstu. Jest powszechnie używany w połączeniu z systemem MLM w celu lepszego zrozumienia większych zbiorów tekstu. Na przykład w BERT NSP model przewiduje, czy w tekście oryginalnym pojawią się dwa zdania kolejno.
Zastosowania uczenia się samonadzorowanego
Samonadzorowane uczenie się ma szeroki zakres zastosowań w różnych dziedzinach:
- Przetwarzanie języka naturalnego:Modele takie jak BERT i GPT-3 wykorzystują uczenie się samonadzorowane do rozumienia i generowania języka ludzkiego w aplikacjach takich jak chatboty, tłumaczenia i podsumowania tekstu.
- Wizja komputerowa:uczenie się pod nadzorem usprawnia analizę obrazów i wideo poprzez generowanie pseudoetykiet na podstawie surowych danych wizualnych. Zastosowania obejmują wykrywanie obiektów (np. w kamerze dzwonkowej), rozpoznawanie twarzy i automatyczne tworzenie klipów z dłuższych filmów.
- Rozpoznawanie mowy:modele samonadzorowane ulepszają systemy rozpoznawania mowy, ucząc się na podstawie ogromnych ilości nieoznakowanych danych dźwiękowych. Takie podejście zmniejsza potrzebę ręcznej transkrypcji i poprawia dokładność w przypadku różnych akcentów i dialektów.
- Opieka zdrowotna:Samodzielne uczenie się pomaga ulepszyć analizę obrazów medycznych, odkrywanie leków i monitorowanie pacjentów poprzez wykorzystanie dużych zbiorów danych z minimalną liczbą oznaczonych przykładów. Zwiększa dokładność wykrywania chorób i zaleceń dotyczących leczenia bez konieczności obszernego i kosztownego znakowania przez specjalistę.
- Robotyka:Roboty korzystają z samonadzorowanego uczenia się, aby zrozumieć swoje otoczenie i usprawnić procesy decyzyjne. Zastosowania obejmują autonomiczną nawigację, manipulację obiektami i interakcję człowiek-robot.
Zalety uczenia się pod nadzorem
- Oszczędność:zmniejsza potrzebę stosowania obszernych danych z etykietami, obniżając koszty adnotacji i wysiłek ludzki.
- Skalowalność:może obsłużyć duże zbiory danych, dzięki czemu nadaje się do zastosowań w świecie rzeczywistym, gdzie dane oznaczone etykietą są ograniczone, ale danych nieoznaczonych jest mnóstwo.
- Uogólnienie:model wyszkolony na wystarczającej liczbie surowych danych może nauczyć się wystarczająco dużo, aby wykonać nowe zadania, nawet jeśli nie został przeszkolony na bezpośrednio odpowiednich danych. Na przykład model NLP oparty na jednym języku może zostać wykorzystany do usprawnienia nauki tego opartego na innym języku.
- Elastyczność:Możliwość dostosowania do szerokiej gamy zadań i dziedzin, z wieloma dostępnymi podtypami dostosowanymi do konkretnych potrzeb.
Wady uczenia się samonadzorowanego
- Złożoność:tworzenie skutecznych zadań pretekstowych i generowanie pseudoetykiet wymaga starannego projektowania i eksperymentowania.
- Wrażliwość na szumy:Pseudoetykiety wygenerowane na podstawie surowych danych mogą być nieistotne dla celu i potencjalnie wpływać na wydajność, dając modelowi zbyt wiele niepotrzebnych danych wejściowych do przetworzenia.
- Zasoby obliczeniowe:szkolenie modeli samonadzorowanych, szczególnie w przypadku dużych zbiorów danych, wymaga znacznej mocy obliczeniowej i czasu.