AI 101
Co czym jest Meta-Learning?

Co czym jest Meta-Learning?
Jednym z najszybciej rozwijających się obszarów badań w dziedzinie machine learning jest obszar meta-learning. Meta-learning, w kontekście machine learning, jest wykorzystaniem algorytmów machine learning do wspomagania szkolenia i optymalizacji innych modeli machine learning. Ponieważ meta-learning staje się coraz bardziej popularny i rozwijany, korzystnie jest mieć zrozumienie czym jest meta-learning i mieć pojęcie o różnych sposobach jego zastosowania. Przeanalizujmy idee za meta-learningiem, typy meta-learningu, a także niektóre ze sposobów, w jaki meta-learning może być wykorzystany.
Termin meta-learning został ukuty przez Donalda Maudsleya, aby opisać proces, w którym ludzie zaczynają kształtować to, czego się uczą, stając się “coraz bardziej kontrolowanymi przez nawyki percepcji, zapytania, uczenia się i wzrostu, które internalizują”. Później, naukowcy kognitywni i psycholodzy opisali meta-learning jako “uczenie się, jak się uczyć”.
Dla wersji machine learning meta-learning, ogólna idea “uczenia się, jak się uczyć” jest stosowana do systemów AI. W sensie AI, meta-learning jest zdolnością sztucznie inteligentnej maszyny do uczenia się, jak wykonywać różne złożone zadania, biorąc pod uwagę zasady, które zostały użyte do nauki jednego zadania i stosując je do innych zadań. Systemy AI zwykle muszą być szkolone, aby osiągnąć zadanie poprzez opanowanie wielu małych podzadań. To szkolenie może trwać długo i agenci AI nie łatwo przenoszą wiedzę zdobytą podczas jednego zadania do innego zadania. Tworzenie modeli i technik meta-learningu może pomóc AI w nauce, jak ogólnie stosować metody uczenia się i nabywać nowych umiejętności szybciej.
Typy Meta-Learningu
Optimizer Meta-Learning
Meta-learning jest często wykorzystywany do optymalizacji wydajności już istniejącej sieci neuronowej. Metody meta-learningu optymalizatora zwykle funkcjonują przez dostosowanie hiperparametrów innej sieci neuronowej w celu poprawy wydajności sieci podstawowej. Wynikiem jest to, że sieć docelowa powinna stać się lepsza w wykonywaniu zadania, na które jest szkolona. Przykładem meta-learningu optymalizatora jest użycie sieci do poprawy gradient descent wyników.
Few-Shots Meta-Learning
Podejście few-shots meta-learning jest takie, w którym inżynierowie tworzą głęboką sieć neuronową, która może uogólniać dane szkoleniowe na nieznane zestawy danych. Przykład few-shot klasyfikacji jest podobny do normalnego zadania klasyfikacji, ale zamiast tego, próbki danych są całe zestawy danych. Model jest szkolony na wielu różnych zadaniach szkoleniowych i następnie optymalizowany do osiągnięcia szczytowej wydajności na wielu zadaniach szkoleniowych i nieznanych danych. W tym podejściu, pojedyncza próbka szkoleniowa jest podzielona na wiele klas. Oznacza to, że każda próbka szkoleniowa/zestaw danych może potencjalnie składać się z dwóch klas, co daje łącznie 4-shots. W tym przypadku, całe zadanie szkoleniowe może być opisane jako 4-shot 2-klasowa klasyfikacja.
W few-shot learning, idea jest taka, że poszczególne próbki szkoleniowe są minimalistyczne i że sieć może nauczyć się identyfikować obiekty po zobaczeniu tylko kilku zdjęć. Jest to podobne do tego, jak dziecko uczy się rozróżniać obiekty po zobaczeniu tylko kilku zdjęć. To podejście zostało wykorzystane do stworzenia technik takich jak one-shot generative models i memory augmented neural networks.
Metric Meta-Learning
Meta-learning oparty na metrykach jest wykorzystaniem sieci neuronowych do określenia, czy metryka jest używana skutecznie i czy sieć lub sieci osiągają docelową metrykę. Meta-learning oparty na metrykach jest podobny do few-shot learningu, ponieważ tylko kilka przykładów jest używanych do szkolenia sieci i nauczenia jej metryki przestrzeni. Ta sama metryka jest używana w całym zróżnicowanym dziedzinie i jeśli sieci odbiegają od metryki, są uważane za nieudane.
Recurrent Model Meta-Learning
Recurrent model meta-learning jest zastosowaniem technik meta-learningu do Recurrent Neural Networks i podobnych Long Short-Term Memory sieci. Ta technika działa poprzez szkolenie modelu RNN/LSTM do sekwencyjnego uczenia się zestawu danych, a następnie wykorzystanie tego wytrenowanego modelu jako podstawy dla innego uczącego się. Meta-uczący się przyjmuje optymalizacyjny algorytm, który został użyty do szkolenia pierwotnego modelu. Odziedziczone parametryzowanie meta-uczącego się umożliwia mu szybkie zainicjowanie i zbieżność, ale nadal pozwala na aktualizację w nowych sytuacjach.
Jak Działa Meta-Learning?
Dokładny sposób, w jaki meta-learning jest prowadzony, zależy od modelu i natury zadania. Jednak ogólnie, zadanie meta-learningu obejmuje kopiowanie parametrów pierwszej sieci do parametrów drugiej sieci/optymalizatora.
Istnieją dwa procesy szkoleniowe w meta-learningu. Model meta-learningu jest zwykle szkolony po kilku krokach szkolenia podstawowego modelu. Po przodu, tyłu i optymalizacji krokach, które szkolą podstawowy model, przód szkolenia jest wykonywany dla modelu optymalizacji. Na przykład, po trzech lub czterech krokach szkolenia podstawowego modelu, meta-strata jest obliczana. Po obliczeniu meta-straty, gradienty są obliczane dla każdego meta-parametru. Po tym, meta-parametry w optymalizatorze są aktualizowane.
Jedną z możliwości obliczania meta-straty jest zakończenie przodu szkolenia pasma pierwotnego modelu, a następnie połączenie strat, które już zostały obliczone. Meta-optymalizator może być nawet innym meta-uczącym się, choć w pewnym momencie musi być użyty dyskretny optymalizator, taki jak ADAM lub SGD.
Wiele głębokich modeli learningu może mieć setki tysięcy lub nawet miliony parametrów. Tworzenie meta-uczącego się, który ma całkowicie nowy zestaw parametrów, byłoby kosztowne obliczeniowo, a z tego powodu, jest używana taktyka zwana współdzielonymi współrzędnymi. Współdzielone współrzędne obejmują inżynierię meta-uczącego się/optymalizatora, tak aby nauczył się jednego parametru z podstawowego modelu, a następnie sklonował ten parametr zamiast wszystkich innych parametrów. Wynikiem jest to, że parametry, które optymalizator posiada, nie zależą od parametrów modelu.












