W jaki sposób sztuczna sieć neuronowa ANN może być wykorzystywana do klastrowania bez nadzoru?


52

Rozumiem, w jaki sposób artificial neural network (ANN)można trenować w nadzorowany sposób, stosując propagację wsteczną, aby poprawić dopasowanie, zmniejszając błąd w prognozach. Słyszałem, że ANN można wykorzystać do nauki bez nadzoru, ale jak można tego dokonać bez jakiejś funkcji kosztowej, która poprowadziłaby etapy optymalizacji? W przypadku k-średnich lub algorytmu EM istnieje funkcja, dla której każda iteracja próbuje zwiększyć.

  • Jak możemy grupować za pomocą ANN i jakiego mechanizmu używa do grupowania punktów danych w tej samej lokalizacji?

(i jakie dodatkowe możliwości przynoszą dodatkowe warstwy?)


Czy interesuje Cię nauka NN bez nadzoru w ogóle, czy szczególnie klastrowanie bez nadzoru z sieciami neuronowymi?
Denis Tarasov

@DenisTarasov, Interesuje mnie przede wszystkim grupowanie NN bez nadzoru, ale ogólnie niewiele wiem o uczeniu się NN bez nadzoru. Byłoby wspaniale, gdyby odpowiedź zawierała trochę wiedzy NN bez nadzoru w ogóle przed omówieniem konkretnego zastosowania.
Vass

1
Samoorganizująca się mapa (SOM) to rodzaj sieci służącej do tworzenia klastrów.
Cagdas Ozgenc

uczenie się bez nadzoru w ANN - Wyodrębnia właściwości statystyczne ze zbioru szkoleniowego. - Uczenie się bez nadzoru jest trudniejsze, ale jest postrzegane jako biologicznie wiarygodne - Nie wymaga nauczyciela.
yonas,

Odpowiedzi:


56

Sieci neuronowe są szeroko stosowane w uczeniu się bez nadzoru, aby uczyć się lepszej reprezentacji danych wejściowych. Na przykład, biorąc pod uwagę zestaw dokumentów tekstowych, NN może nauczyć się mapowania z dokumentu na wektor o wartościach rzeczywistych w taki sposób, że powstałe wektory są podobne dla dokumentów o podobnej treści, tj. Zachowanie odległości. Można to osiągnąć na przykład za pomocą auto-koderów - modelu wyszkolonego do rekonstrukcji oryginalnego wektora z mniejszej reprezentacji (aktywacja warstwy ukrytej) z błędem rekonstrukcji (odległość od funkcji ID) jako funkcją kosztów. Ten proces nie zapewnia klastrów, ale tworzy znaczące reprezentacje, których można użyć do grupowania. Możesz na przykład uruchomić algorytm klastrowania na aktywacjach ukrytej warstwy.

Klastrowanie: Istnieje wiele różnych architektur NN specjalnie zaprojektowanych do klastrowania. Najbardziej znana jest prawdopodobnie samoorganizująca się mapa. SOM to NN, który ma zestaw neuronów połączonych w celu utworzenia siatki topologicznej (zwykle prostokątnej). Kiedy SOM przedstawia jakiś wzór, neuron o najbliższym wektorze ciężaru jest uważany za zwycięzcę, a jego masy są dostosowywane do wzoru, a także masy jego sąsiedztwa. W ten sposób SOM naturalnie znajduje klastry danych. Nieco pokrewnym algorytmem jest wzrost gazu neuronowego (nie jest on ograniczony do określonej liczby neuronów).

Innym podejściem jest Teoria Rezonansu Adaptacyjnego, w której mamy dwie warstwy: „pole porównania” i „pole rozpoznania”. Pole rozpoznania określa również najlepsze dopasowanie (neuron) do wektora przeniesionego z pola porównania, a także ma boczne połączenia hamujące. Szczegóły implementacji i dokładne równania można łatwo znaleźć, przeglądając nazwy tych modeli, więc nie umieszczę ich tutaj.


15

Chcesz spojrzeć na samoorganizujące się mapy . Kohonen (który je wynalazł) napisał o nich książkę . Są do tego pakiety w języku R ( som , kohonen ), a także implementacje w innych językach, takich jak MATLAB .


czy możesz wniknąć w szczegóły na temat tego, jak NN może to zrobić i rozwinąć teorię? być może wyjaśnić również efekt użycia głębokiego NN (DNN)?
Vass

1
Obawiam się, że mam tutaj bardzo małą wiedzę specjalistyczną, @Vass. Nie sądzę, aby dodanie dodatkowych warstw zrobiło wiele, oprócz spowolnienia. Ktoś inny będzie musiał podać ci teorię, chciałem tylko, żebyś zaczął.
gung - Przywróć Monikę

1
Student w naszym laboratorium eksperymentował z grupowaniem przy użyciu SOM. Trwało to wiecznie, a wyniki były bardzo rozczarowujące w porównaniu z innymi podejściami (w naszym przypadku standardowe algorytmy grupowania wykresów). Zawsze byłem zaskoczony faktem, że standardowa domena 2D (siatka topologiczna) wydaje się być wysoce arbitralną przestrzenią. Bardziej niepokojące jest to, że jest bardzo uproszczone i zasadniczo wymaga skompresowania danych do przestrzeni opisanej tylko przez dwie zmienne.
micans

@micans ma kilka dobrych argumentów, ale dane nie są po prostu kompresowane do przestrzeni opisanej tylko przez dwie zmienne, ponieważ każdy węzeł jest również powiązany z prototypem. Również jeśli działa wolno, może to być problem z implementacją. Statystycznie inne metody niż SOM powinny osiągnąć lepsze wyniki klasyfikacji. Jeśli chodzi o kwestię topologii, mózg wydaje się być zorganizowany jako warstwy topologii 2D, ale osiąga świetne wyniki (a przynajmniej tak chciałbym myśleć).
Tom Anderson
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.