Zadanie obejmujące uczenie maszynowe może nie być liniowe, ale ma kilka dobrze znanych kroków:
Zdefiniowanie problemu.
Przygotowanie danych.
Uczenie modelu bazowego.
Poprawa modelu bazowego poprzez oceny ilościowe i jakościowe.
Prezentacja modelu.
Dobrym sposobem na pogodzenie się z nowym problemem jest praca poprzez identyfikację i zdefiniowanie problemu w najlepszy możliwy sposób oraz nauczenie się modelu, który przechwytuje znaczące informacje z danych. Chociaż problemy w rozpoznawaniu wzorców i uczeniu maszynowym mogą być różnego rodzaju, można je ogólnie sklasyfikować w trzech kategoriach:
Uczenie pod nadzorem: Systemowi przedstawiane są przykładowe dane wejściowe i ich pożądane wyjścia, podane przez „nauczyciela”, a celem jest nauczenie się ogólnej reguły, która mapuje dane wejściowe na dane wyjściowe.
Uczenie bez nadzoru: Algorytmowi uczącemu nie są podawane żadne etykiety, pozostawiając go samemu sobie w celu znalezienia struktury w danych wejściowych. Uczenie bez nadzoru może być celem samym w sobie (odkrywanie ukrytych wzorców w danych) lub środkiem do celu (uczenie cech).
Uczenie przez wzmocnienie: System wchodzi w interakcję z dynamicznym środowiskiem, w którym musi wykonać określony cel (np. prowadzenie pojazdu lub gra z przeciwnikiem). System otrzymuje informacje zwrotne w postaci nagród i kar, gdy porusza się w przestrzeni problemowej.
Pomiędzy uczeniem nadzorowanym i nienadzorowanym znajduje się uczenie półnadzorowane, w którym nauczyciel przekazuje niekompletny sygnał treningowy: zbiór treningowy, w którym brakuje niektórych (często wielu) docelowych danych wyjściowych. W tym wpisie skupimy się na uczeniu nienadzorowanym i grupowaniu danych.
Uczenie nienadzorowane
W niektórych problemach rozpoznawania wzorców, dane szkoleniowe składają się z zestawu wektorów wejściowych x bez odpowiadających im wartości docelowych. Celem w takich problemach uczenia nienadzorowanego może być odkrycie grup podobnych przykładów w obrębie danych, gdzie nazywa się to grupowaniem, lub określenie, jak dane są rozmieszczone w przestrzeni, znane jako estymacja gęstości. Mówiąc prościej, dla n-próbkowanej przestrzeni x1 do xn, prawdziwe etykiety klas nie są dostarczane dla każdej próbki, stąd znane jako uczenie bez nauczyciela.
Problemy z uczeniem nienadzorowanym:
Uczenie nienadzorowane jest trudniejsze w porównaniu do zadań uczenia nadzorowanego…
Skąd wiemy, czy wyniki są znaczące, skoro nie są dostępne etykiety odpowiedzi?
Pozwolić ekspertowi spojrzeć na wyniki (ewaluacja zewnętrzna)
Zdefiniować funkcję celu na klasteryzację (ewaluacja wewnętrzna)
Dlaczego uczenie nienadzorowane jest potrzebne pomimo tych problemów?
Anotowanie dużych zbiorów danych jest bardzo kosztowne i dlatego możemy ręcznie etykietować tylko kilka przykładów. Przykład: Speech Recognition
Mogą wystąpić przypadki, w których nie wiemy na ile/jakie klasy podzielone są dane. Przykład: Data Mining
Możemy chcieć użyć klastrowania, aby uzyskać pewien wgląd w strukturę danych przed zaprojektowaniem klasyfikatora.
Uczenie nienadzorowane można dalej podzielić na dwie kategorie:
Parametric Unsupervised Learning W tym przypadku zakładamy parametryczny rozkład danych. Zakłada on, że przykładowe dane pochodzą z populacji, która podąża za rozkładem prawdopodobieństwa opartym na ustalonym zestawie parametrów. Teoretycznie, w normalnej rodzinie rozkładów, wszyscy członkowie mają ten sam kształt i są sparametryzowani przez średnią i odchylenie standardowe. Oznacza to, że jeśli znamy średnią i odchylenie standardowe, oraz że rozkład jest normalny, znamy prawdopodobieństwo każdej przyszłej obserwacji. Parametric Unsupervised Learning polega na konstrukcji Gaussian Mixture Models i wykorzystaniu algorytmu Expectation-Maximization do przewidywania klasy danej próbki. Ten przypadek jest znacznie trudniejszy niż standardowe uczenie nadzorowane, ponieważ nie ma dostępnych etykiet odpowiedzi, a tym samym nie ma poprawnej miary dokładności dostępnej do sprawdzenia wyniku.
Nieparametryczne uczenie nienadzorowane W nieparametrycznej wersji uczenia nienadzorowanego, dane są pogrupowane w klastry, gdzie każdy klaster (miejmy nadzieję) mówi coś o kategoriach i klasach obecnych w danych. Metoda ta jest powszechnie używana do modelowania i analizy danych z małymi rozmiarami próbek. W przeciwieństwie do modeli parametrycznych, modele nieparametryczne nie wymagają od modelera przyjęcia żadnych założeń dotyczących rozkładu populacji, i dlatego są czasami nazywane metodą bezrozkładową.
Co to jest klastrowanie?
Klastrowanie może być uważane za najważniejszy problem uczenia nienadzorowanego; tak, jak każdy inny problem tego rodzaju, zajmuje się znalezieniem struktury w zbiorze nieoznakowanych danych. Luźną definicją klastrowania może być „proces organizowania obiektów w grupy, których członkowie są do siebie w jakiś sposób podobni”. Klaster jest więc zbiorem obiektów, które są „podobne” między sobą i są „niepodobne” do obiektów należących do innych klastrów.
Klastrowanie oparte na odległości.
Dając zbiór punktów, z pojęciem odległości między punktami, grupuje punkty w pewną liczbę klastrów, takich, że
odległości wewnętrzne (wewnątrz klastra) powinny być małe i.członkowie klastrów są blisko/podobni do siebie.
zewnętrzne (wewnątrzklastrowe) odległości powinny być duże, tj. członkowie różnych klastrów są niepodobni do siebie.
Cele klastrowania
Celem klastrowania jest określenie wewnętrznego grupowania w zbiorze nieoznakowanych danych. Ale jak zdecydować, co stanowi dobrą klasteryzację? Można pokazać, że nie ma absolutnego „najlepszego” kryterium, które byłoby niezależne od ostatecznego celu klasteryzacji. W związku z tym, to użytkownik powinien dostarczyć to kryterium, w taki sposób, aby wynik klasteryzacji odpowiadał jego potrzebom.