Podczas przesyłania danych strumieniowych może nie być konieczne / konieczne osadzenie wszystkich punktów w historii na jednej mapie t-SNE. Alternatywnie możesz wykonać osadzanie online, wykonując następujące proste kroki:
wybierz przedział czasu trwania T, wystarczająco długi, aby każdy interesujący wzór pojawiał się co najmniej kilka razy w czasie trwania okna.
przewijaj okno w miarę przesyłania danych, z krokiem czasowym dt znacznie mniejszym niż T. Dla każdej pozycji okna, oblicz osadzenie punktów danych w oknie czasowym przez t-SNE.
zaszczepiaj każde osadzenie wynikiem poprzedniego. W t-SNE należy wybrać początkowe współrzędne punktów danych w przestrzeni niskiego wymiaru. W naszym przypadku, ponieważ wybraliśmy dt znacznie mniejszy niż T, dwa kolejne osadzenia współdzielą większość swoich punktów danych. Dla wszystkich współdzielonych punktów danych dopasuj ich początkowe współrzędne w bieżącym osadzeniu do ich ostatecznych współrzędnych w poprzednim osadzeniu . Ten krok zapewni spójną reprezentację podobnych wzorców w kolejnych osadzeniach. (w implementacji sklearn w pythonie parametr początkowy to „init”. Domyślnie implementacja sklearn określa losową pozycję punktów)
Uwaga 1: Ważne jest, aby interesujące wzorce pojawiały się co najmniej raz w dowolnym oknie czasowym, aby pamięć reprezentacji nie została utracona, gdy okno przesuwa się przez zestaw danych. Rzeczywiście, t-SNE zwykle nie jest zbieżny z unikalnym rozwiązaniem, ale tylko z lokalnym minimum, więc jeśli pamięć zostanie utracona, podobny wzorzec może być reprezentowany na bardzo różne sposoby w dwóch przypadkach osadzania.
Uwaga 2: Ta metoda jest szczególnie istotna w przypadku niestacjonarnych szeregów czasowych, w których chce się śledzić wzorce, które ewoluują powoli w czasie. Rzeczywiście, każde osadzanie jest tutaj specjalnie dostosowane do małego okna czasowego, w którym jest obliczane, zapewniając, że najlepiej przechwytuje lokalną strukturę czasową (w przeciwieństwie do pełnego osadzania całego niestacjonarnego zestawu danych).
Uwaga 3: W tej metodzie kolejne osadzanie nie może być zrównoleglone, ponieważ potrzeba wyniku poprzedniego osadzania, aby zaszczepić następne. Ponieważ jednak ziarno (tj. Początkowe współrzędne punktów) jest dobrze wybrane dla większości punktów (wszystkich wspólnych punktów między kolejnymi osadzeniami), osadzanie zazwyczaj zbiega się bardzo szybko, tylko w kilku iteracjach.
Przykład zastosowania tej metody do niestacjonarnych szeregów czasowych znajduje się w tym artykule ( ICLR 2016, Uczenie się stabilnych reprezentacji w zmieniającym się świecie za pomocą on-line t-SNE: dowód koncepcji w śpiewie ptaków ), gdzie została z powodzeniem zastosowana aby śledzić pojawianie się sylab w całym rozwoju ptaka śpiewającego.