Jak określić parametry dla t-SNE w celu zmniejszenia wymiarów?

11

Jestem bardzo nowy w osadzaniu słów. Chcę wyobrazić sobie, jak wyglądają dokumenty po nauce. Czytałem, że t-SNE jest podejściem do tego. Mam 100 000 dokumentów o 250 wymiarach jako rozmiarze osadzenia. Dostępnych jest również kilka pakietów.

Jednak w przypadku t-SNE nie wiem, ile iteracji, wartość alfa lub wartość zdolności pertraktacyjnych powinienem się uczyć, aby lepiej się uczyć.

Czy są to hiper-parametry, czy można je określić na podstawie niektórych atrybutów?

silent_dev
źródło

Odpowiedzi:

12

Bardzo polecam artykuł Jak efektywnie korzystać z T-SNE . Ma świetne animowane wykresy procesu dopasowania tsne i było pierwszym źródłem, które pozwoliło mi intuicyjnie zrozumieć, co robi tsne.

Na wysokim poziomie, problem stanowi parametr. Dobrym pomysłem jest wypróbowanie zakłopotania 5, 30 i 50 i przyjrzenie się wynikom.

Ale poważnie, przeczytaj Jak efektywnie korzystać z T-SNE. Dzięki temu korzystanie z TSNE będzie bardziej efektywne.

W przypadku pakietów użyj Rtsne w R lub sklearn.manifold.TSNE w python

Zach
źródło
W przypadku większych zestawów danych i korzystania z GPU w obliczeniach. Sprawdź bibliotekę Rapids autorstwa nVidia. [Rapids.AI] (rapids.ai)
Aakash Gupta
2

Przytoczę najczęściej zadawane pytania ze strony internetowej t-SNE . Najpierw zakłopotanie:

Jak ustawić zakłopotanie w t-SNE?

Wydajność t-SNE jest dość solidna w różnych ustawieniach zakłopotania. Najbardziej odpowiednia wartość zależy od gęstości twoich danych. Mówiąc luźniej, można powiedzieć, że większy / gęstszy zestaw danych wymaga większego zakłopotania. Typowe wartości zakłopotania wynoszą od 5 do 50.

W przypadku wszystkich innych parametrów należy rozważyć przeczytanie tego:

Jak mogę ocenić jakość wizualizacji skonstruowanych przez t-SNE?

Najlepiej spójrz na nie! Zauważ, że t-SNE nie zachowuje odległości, ale prawdopodobieństwa, więc pomiar pewnego błędu między odległościami euklidesowymi w wysokich D i niskich D jest bezużyteczny. Jeśli jednak użyjesz tych samych danych i zakłopotania, możesz porównać rozbieżności Kullbacka-Leiblera, które zgłasza t-SNE. Dziesięć razy można uruchomić t-SNE i wybrać rozwiązanie o najniższej dywergencji KL.

Innymi słowy oznacza to: spójrz na wykres, jeśli wizualizacja jest dobra, nie zmieniaj parametrów. Możesz także wybrać przebieg z najmniejszą dywergencją KL dla każdej stałej zakłopotania.

Daniel Falbel
źródło