Skąd ta nagła fascynacja tensorami?

171

Zauważyłem ostatnio, że wiele osób opracowuje ekwiwalenty tensora wielu metod (faktoryzacja tensora, jądra tensora, tensory do modelowania tematów itp.) Zastanawiam się, dlaczego świat jest nagle zafascynowany tensorami? Czy pojawiły się ostatnio ostatnie artykuły / standardowe wyniki, które są szczególnie zaskakujące? Czy jest obliczeniowo dużo tańszy niż wcześniej podejrzewano?

Nie jestem glib, szczerze mnie to interesuje, a jeśli są jakieś wskazówki na ten temat, chciałbym je przeczytać.

YS
źródło
25
Wydaje się, że jedyną cechą, która „tensory dużych zbiorów danych” dzielą się ze zwykłą matematyczną definicją, jest to, że są to tablice wielowymiarowe. Powiedziałbym więc, że tensory big data to zbywalny sposób na powiedzenie „macierz wielowymiarowa”, ponieważ bardzo wątpię, aby ludzie uczący się maszyn dbali o prawa symetrii lub transformacji, którymi cieszą się zwykli tensory matematyki i fizyki, a zwłaszcza ich przydatność w tworzeniu równań swobodnych współrzędnych.
Alex R.
2
@AlexR. bez niezmienności transformacji nie ma tensorów
Aksakal
2
@Aksakal Z pewnością jestem nieco obeznany z wykorzystaniem tensorów w fizyce. Chodzi mi o to, że symetrie w tensorach fizyki pochodzą z symetrii fizyki, a nie coś istotnego w definicji tensora.
aginensky
3
@aginensky Jeśli tensor był niczym więcej niż wielowymiarową tablicą, to dlaczego definicje tensorów znajdujące się w podręcznikach matematyki brzmią tak skomplikowanie? Z Wikipedii: „Liczby w macierzy wielowymiarowej są znane jako składowe skalarne tensora ... Tak jak składowe wektora zmieniają się, gdy zmieniamy podstawę przestrzeni wektorowej, tak również komponenty tensora zmieniają się pod takim transformacja. Każdy tensor jest wyposażony w prawo transformacji, które szczegółowo opisuje, w jaki sposób elementy tensora reagują na zmianę podstawy ”. W matematyce tensor to nie tylko tablica.
littleO
4
Kilka ogólnych przemyśleń na temat tej dyskusji: Myślę, że podobnie jak wektory i macierze, faktyczne zastosowanie często staje się znacznie uproszczoną instancją znacznie bogatszej teorii. Czytam ten artykuł bardziej szczegółowo: epubs.siam.org/doi/abs/10.1137/07070111X?journalCode=siread, a jedna rzecz, która naprawdę robi na mnie wrażenie, to że narzędzia „reprezentacyjne” dla macierzy (rozkład wartości własnych i rozkład wartości w liczbie pojedynczej) mieć ciekawe uogólnienia w wyższych rzędach. Jestem pewien, że istnieje również wiele piękniejszych właściwości, poza ładnym pojemnikiem na więcej wskaźników. :)
YS

Odpowiedzi:

89

Tensory często oferują bardziej naturalne odwzorowanie danych, np. Rozważ wideo, które składa się z oczywiście skorelowanych obrazów w czasie. Państwo może przekształcić matrycy, ale to nie jest naturalne lub intuicyjny (co robi faktoryzacji macierzy jakiejś reprezentacji wideo na myśli?).

Tensory są popularne z kilku powodów:

  • nasze rozumienie algebry wieloliniowej gwałtownie się poprawia, szczególnie w różnych rodzajach faktoryzacji, co z kolei pomaga nam zidentyfikować nowe potencjalne zastosowania (np. analiza komponentów wielostronnych )
  • pojawiają się narzędzia programowe (np. Tensorlab ) i są mile widziane
  • Aplikacje Big Data można często rozwiązać za pomocą tensorów, na przykład systemów rekomendujących , a sama Big Data jest gorąca
  • zwiększa moc obliczeniową, ponieważ niektóre operacje tensorowe mogą być potężne (jest to również jeden z głównych powodów, dla których głębokie uczenie się jest teraz tak popularne)
Marc Claesen
źródło
9
W części dotyczącej mocy obliczeniowej: Myślę, że najważniejsze jest to, że algebra liniowa może być bardzo szybka na procesorach graficznych, a ostatnio mają większe i szybsze pamięci, co jest największym ograniczeniem przy przetwarzaniu dużych danych.
Davidmh
6
Odpowiedź Marca Claesena jest dobra. David Dunson, wybitny profesor statystyki w Duke, był jednym z kluczowych wykładników podejścia do modelowania opartego na tensorze, tak jak w niniejszej prezentacji, regresja bayesowskiego tensora . icerm.brown.edu/materials/Slides/sp-f12-w1/…
Mike Hunter
Jak wspomniał David, algorytmy Tensor często nadają się do paralelizmu, w którym sprzęt (taki jak akceleratory GPU) jest coraz lepszy.
Thomas Russell
1
Założyłem, że rolę odegrały lepsze możliwości pamięci / procesora, ale ostatnia fala uwagi była interesująca; Myślę, że musi to wynikać z wielu zaskakujących sukcesów w systemach rekomendujących, a być może także w jądrach dla SVM itp. Dzięki za linki! świetne miejsca, aby zacząć uczyć się o tych rzeczach ...
YS
5
Jeśli przechowujesz wideo jako tablicę wielowymiarową, nie widzę, jak ta tablica wielowymiarowa miałaby jakąkolwiek właściwość niezmienniczości, jaką powinien mieć tensor. Nie wydaje się, aby słowo „tensor” było odpowiednie w tym przykładzie.
littleO
73

Myślę, że twojemu pytaniu powinna towarzyszyć odpowiedź równie płynna i otwarta, jak samo pytanie. Oto dwie moje analogie.

Po pierwsze, chyba że jesteś czystym matematykiem, prawdopodobnie najpierw nauczono cię prawdopodobieństw i statystyki jednowymiarowej. Na przykład najprawdopodobniej twój pierwszy przykład OLS był prawdopodobnie na modelu takim jak ten:

yi=a+bxi+ei
Najprawdopodobniej przeszedłeś przez oszacowanie poprzez faktyczne zminimalizowanie sumy najmniejszych kwadratów:
TSS=i(yia¯b¯xi)2
Następnie piszesz FOCs dla parametrów i uzyskaj rozwiązanie:
TTSa¯=0

Później dowiesz się, że istnieje łatwiejszy sposób na zrobienie tego za pomocą notacji wektorowej (macierzowej):

y=Xb+e

a TTS staje się:

TTS=(yXb¯)(yXb¯)

FOC to:

2X(yXb¯)=0

A rozwiązaniem jest

b¯=(XX)1Xy

Jeśli jesteś dobry w algebrze liniowej, pozostaniesz przy drugim podejściu, gdy się go nauczysz, ponieważ w rzeczywistości jest to łatwiejsze niż zapisanie wszystkich sum w pierwszym podejściu, zwłaszcza po przejściu do statystyki wielowymiarowej.

Stąd moja analogia jest taka, że ​​przejście do tensorów z macierzy jest podobne do przejścia z wektorów do macierzy: jeśli znasz tensory, niektóre rzeczy będą wyglądały łatwiej w ten sposób.

Po drugie, skąd pochodzą tensory? Nie jestem pewien całej historii tego, ale nauczyłem się ich w mechanice teoretycznej. Oczywiście mieliśmy kurs na tensorach, ale nie rozumiałem, na czym polegają te wszystkie fantazyjne sposoby zamiany indeksów na tym kursie matematyki. Wszystko zaczęło mieć sens w kontekście badania sił napięcia.

Tak więc w fizyce zaczynają od prostego przykładu ciśnienia zdefiniowanego jako siła na jednostkę powierzchni, stąd:

F=pdS
Oznacza to, że można obliczyć wektor siły F , mnożąc ciśnienie p (skalar) przez jednostkę powierzchni dS (wektor normalny). Wtedy mamy tylko jedną nieskończoną płaską powierzchnię. W tym przypadku jest tylko jedna siła prostopadła. Duży balon byłby dobrym przykładem.

Jeśli jednak studiujesz napięcie wewnątrz materiałów, masz do czynienia ze wszystkimi możliwymi kierunkami i powierzchniami. W tym przypadku siły na dowolnej powierzchni ciągną lub pchają we wszystkich kierunkach, nie tylko prostopadłych. Niektóre powierzchnie są odrywane przez siły styczne „na boki” itp. Zatem twoje równanie staje się:

F=PdS
Siła jest wektorem fa a pole powierzchni jest nadal reprezentowane przez jego normalny wektor reS. , ale P. jest a tensor teraz, a nie skalar.

Ok, skalar i wektor to także tensory :)

Innym miejscem, w którym tensory pojawiają się naturalnie, są macierze kowariancji lub korelacji. Pomyśl o tym: jak przekształcić macierz korelacji do0 na inną do1 ? Zdajesz sobie sprawę, że nie możemy tego zrobić w następujący sposób:

doθ(ja,jot)=do0(ja,jot)+θ(do1(ja,jot)-do0(ja,jot)),
gdzie θ[0,1] ponieważ musimy utrzymać wszystkiedoθ dodatnie w półokreśleniu.

Musielibyśmy więc znaleźć ścieżkę δdoθ taką, że do1=do0+θδdoθ , gdzie δdoθ jest małym zaburzeniem macierzy. Istnieje wiele różnych ścieżek i możemy szukać najkrótszych. W ten sposób wchodzimy w geometrię Riemanniana, rozmaitości i ... tensory.

AKTUALIZACJA: co to jest tensor?

@amoeba i inni rozpoczęli ożywioną dyskusję na temat znaczenia tensora i tego, czy jest to to samo, co tablica. Pomyślałem więc, że przykład jest w porządku.

Powiedzmy, że idziemy na bazar, żeby kupić artykuły spożywcze, a są tam dwaj kupcy, re1 i re2) . My zauważyliśmy , że jeśli płacimy x1 dolary re1 i x2) dolary do re2) następnie re1 sprzedaje nam r1=2)x1-x2) funtów jabłek i re2) sprzedaje nam r2)=-0,5x1+2)x2)pomarańcze. Na przykład, jeśli zapłacimy zarówno 1 dolara, tj. x1=x2)=1 , wówczas musimy dostać 1 funt jabłek i 1,5 pomarańczy.

Relację tę możemy wyrazić w postaci macierzy P. :

 2   -1
-0.5  2 

Następnie kupcy produkują tyle jabłek i pomarańczy, jeśli zapłacimy im x dolarów:

r=P.x

Działa to dokładnie jak macierz przez mnożenie wektorowe.

Powiedzmy, że zamiast kupować towary od tych sprzedawców osobno, deklarujemy, że wykorzystujemy dwa pakiety wydatków. Albo zapłacić obie 0,71 dolarów, lub płacimy re1 0,71 dolarów i 0,71 dolarów żądać od re2) plecach. Podobnie jak w przypadku początkowym, idziemy na bazar i wydajemy z1 na pakiet pierwszy i z2) na pakiet 2.

Spójrzmy więc na przykład, w którym wydajemy tylko z1=2) na pakiet 1. W tym przypadku pierwszy kupiec dostaje x1=1 dolar, a drugi kupiec dostaje ten sam x2)=1 . Dlatego musimy uzyskać takie same ilości produktów jak w powyższym przykładzie, prawda?

Może, może nie. Zauważyłeś, że macierz P. nie jest przekątna. Wskazuje to, że z jakiegoś powodu, ile jeden kupiec pobiera za swoje produkty, zależy również od tego, ile zapłaciliśmy drugiemu kupcowi. Muszą dowiedzieć się, ile płacą, może przez pogłoski? W takim przypadku, jeśli zaczniemy kupować w pakietach, będą na pewno wiedzieć, ile płacimy za każdy z nich, ponieważ deklarujemy nasze pakiety na bazarze. W takim przypadku skąd wiemy, że macierz P. powinna pozostać niezmieniona?

Może przy pełnej informacji o naszych płatnościach na rynku formuły cenowe również by się zmieniły! Spowoduje to zmianę naszej macierzy P. i nie ma sposobu, aby powiedzieć, jak dokładnie.

Tutaj wchodzimy do tensorów. Zasadniczo w przypadku tensorów mówimy, że obliczenia nie zmieniają się, gdy zaczynamy handlować pakietami zamiast bezpośrednio z każdym sprzedawcą. Jest to ograniczenie, które nałoży reguły transformacji na P. , które nazwiemy tensorem.

W szczególności możemy zauważyć, że mamy podstawę ortonormalną re¯1,re¯2) , gdzie reja oznacza wypłatę 1 dolara na rzecz handlowca ja nic na rzecz drugiego. Możemy również zauważyć, że pakiety tworzą również podstawę ortonormalną re¯1,re¯2), który jest również prostym obrotem pierwszej podstawy o 45 stopni w kierunku przeciwnym do ruchu wskazówek zegara. Jest to również rozkład na PC na pierwszej podstawie. dlatego mówimy, że przejście na wiązki jest prostą zmianą współrzędnych i nie powinno zmieniać obliczeń. Zauważ, że jest to zewnętrzne ograniczenie, które nałożyliśmy na model. Nie pochodziło to od właściwości matematycznych macierzy.

Teraz nasze zakupy można wyrazić jako wektor x=x1re¯1+x2)re¯2) . Wektory są również tensorami, btw. Tensor jest interesujący: może być reprezentowany jako

P.=jajotpjajotre¯jare¯jot
, a artykuły spożywcze jakor=r1re¯1+r2)re¯2) . Z zakupamirjaoznacza funt produktu od kupca ja , a nie zapłacone dolary.

Teraz, kiedy zmieniliśmy współrzędne na wiązki, równanie tensorowe pozostaje takie samo:

r=P.z

To dobrze, ale wektory płatności mają teraz inną podstawę:

z=z1re¯1+z2)re¯2)
, podczas gdy możemy zachować wektory produkcyjne na starej podstawie r=r1re¯1+r2)re¯2) . Zmienia się również tensor:
P.=jajotpjajotre¯jare¯jot
. Łatwo jest ustalić, jak tensor musi zostać przekształcony, będzie to P.ZA , gdzie macierz obrotu jest zdefiniowana jako d¯=ZAre¯ . W naszym przypadku jest to współczynnik pakietu.

Możemy opracować formuły transformacji tensorowej, które dadzą taki sam wynik jak w przykładach z x1=x2)=1 i z1=0,71,z2)=0 .

Aksakal
źródło
2
Byłem tutaj zdezorientowany: So, let's look at an example where we spend just z1=1.42 on bundle 1. In this case, the first merchant gets x1=1 dollars, and the second merchant gets the same x2=1.wcześniej mówisz, że pierwszy pakiet to my pay both 0.71 dollars. Tak więc wydanie 1,42 na pierwszy pakiet powinno dostać 0,71, a nie 1, nie?
ameba
@ameba, chodzi o to, że pakiet 1 to , więc zre¯1/2)+re¯2)/2) pakiet 1 dostajesz ˉ d 1+ ˉ d 2, tj. 1$każdy2)re¯1+re¯2)
Aksakal
2
@Aksakal, wiem, że ta dyskusja jest dość stara, ale ja też tego nie rozumiem (chociaż tak naprawdę starałem się). Skąd ta idea, że ​​pakiet 1 to pochodzą z? Czy mógłbyś opracować? Jak to się dzieje, że gdy płacisz 1,42 za pakiet, obaj kupcy otrzymują 1? d¯1/2+d¯2/2
Matek
@Aksakal To jest świetne, dzięki! Myślę, że masz literówkę w ostatnim wierszu, gdzie mówisz x1 = x2 = 1 (poprawne) i z1 = 0,71, z2 = 0. Zakładając, że wszystko zrozumiałem poprawnie, z1 powinno wynosić 1,42 (lub 1,41, co jest nieco bliżej do 2 ^ 0,5).
Mike Williamson,
71

To nie jest odpowiedź na twoje pytanie, ale rozszerzony komentarz na temat poruszony tutaj w komentarzach przez różne osoby, a mianowicie: czy uczenie maszynowe „tensory” to to samo, co tensory w matematyce?

Teraz, zgodnie z Cichoki 2014, Era przetwarzania dużych zbiorów danych: nowe podejście za pośrednictwem Tensor Networks i Tensor Decompositions oraz Cichoki i in. 2014, Dekompozycje tensorów do zastosowań przetwarzania sygnałów ,

Tensor wyższego rzędu można interpretować jako tablicę wielodrogową, [...]

Tensor można traktować jako tablicę numeryczną z wieloma indeksami, [...]

Tensory (tj. Tablice wielokierunkowe) [...]

Tak zwane tensory w uczeniu maszynowym

Zatem w uczeniu maszynowym / przetwarzaniu danych tensor wydaje się być po prostu zdefiniowany jako wielowymiarowa tablica numeryczna. Przykładem takiego tensora 3D może być klatek wideo o rozmiarze 640 × 480 . Zwykła macierz danych n × p jest przykładem tensora 2D zgodnie z tą definicją.1000640×480n×p

Nie tak definiuje się tensory w matematyce i fizyce!

VVVp×pp×p×ppV

3×34×44×4×4×4 V

VWpVqW

V

p×ppVn×pX

XWVWnVpXVWXWV

XRn×pRn×pn×p

Mój wniosek jest następujący: (a) tensory uczenia maszynowego nie są tensorami matematycznymi / fizycznymi oraz (b) przeważnie nie jest użyteczne postrzeganie ich jako elementów produktów tensorowych.

Zamiast tego są wielowymiarowymi uogólnieniami macierzy. Niestety nie ma na to ustalonego matematycznego terminu, więc wydaje się, że to nowe znaczenie terminu „tensor” pozostanie.

ameba
źródło
19
p
10
n3)n
4
@amoeba, w programowaniu macierze wielowymiarowe są zwykle nazywane tablicami , ale niektóre języki, takie jak MATLAB, nazywają je macierzami . Na przykład w FORTRAN tablice mogą mieć więcej niż 2 wymiary. W językach takich jak C / C ++ / Java tablice są jednowymiarowe, ale możesz mieć tablice tablic, dzięki czemu działają one podobnie jak tablice wielowymiarowe. MATLAB obsługuje 3 lub więcej tablic wymiarowych w składni.
Aksakal,
3
To jest bardzo interesujące. Mam nadzieję, że podkreślisz ten punkt. Uważaj jednak, aby nie pomylić zbioru z wyznaczoną przez niego przestrzenią wektorową, ponieważ rozróżnienie jest ważne w statystyce. W szczególności (aby wybrać jeden ze swoich przykładów), chociaż liniowa kombinacja ludzi jest bez znaczenia, liniowa kombinacja funkcji o wartościach rzeczywistych na zbiorze ludzi jest zarówno znacząca, jak i ważna. Jest to na przykład klucz do rozwiązania regresji liniowej.
whuber
8
Per T. Kolda, B, Bada, „Dekompozycje i aplikacje Tensora” SIAM Review 2009, epubs.siam.org/doi/pdf/10.1137/07070111X „Tensor to tablica wielowymiarowa. Bardziej formalnie, tensor w kierunku N lub rzędu N jest elementem iloczynu tensora w przestrzeniach wektora N, z których każda ma swój własny układ współrzędnych. Tego pojęcia tensorów nie należy mylić z tensorami w fizyce i inżynierii (takimi jak tensory naprężeń), które są ogólnie określane jako pola tensorów w matematyce ”
Mark L. Stone,
14

Jako ktoś, kto bada i buduje sieci neuronowe i wielokrotnie zadawał to pytanie, doszedłem do wniosku, że pożyczamy użyteczne aspekty notacji tensorowej po prostu dlatego, że znacznie ułatwiają wyprowadzanie i utrzymują nasze gradienty w ich natywnych kształtach. Zasada łańcucha tensor jest jednym z najbardziej eleganckich narzędzi otrzymywania pochodnych, jakie kiedykolwiek widziałem. Dalsze notacje tensorowe zachęcają do wydajnych obliczeniowo uproszczeń, które są po prostu koszmarne do znalezienia, gdy używa się wspólnych rozszerzonych wersji rachunku wektorowego.

Na przykład w rachunku wektorowym / macierzowym istnieją 4 rodzaje produktów macierzowych (Hadamard, Kronecker, zwykły i elementowy), ale w rachunku tensorowym istnieje tylko jeden rodzaj mnożenia, ale obejmuje wszystkie mnożenia macierzowe i więcej. Jeśli chcesz być hojny, zinterpretuj tensor jako tablicę wielowymiarową, dla której zamierzamy użyć rachunku opartego na tensorze do znalezienia pochodnych, a nie że obiekty, którymi manipulujemy, są tensorami .

Szczerze mówiąc, prawdopodobnie nazywamy nasze tensory tablic wielowymiarowych, ponieważ większość ekspertów w dziedzinie uczenia maszynowego nie dba o przestrzeganie definicji matematyki lub fizyki wysokiego poziomu. W rzeczywistości pożyczamy dobrze opracowane konwencje sumowania Einsteina i kalkulatory, które są zwykle używane podczas opisywania tensorów i nie chcą powtarzać rachunku opartego na konwencji sumowania Einsteina. Może kiedyś opracujemy nowy zestaw notacji i konwencji, które kradną tylko to, czego potrzebują z rachunku tensorowego specjalnie do analizy sieci neuronowych, ale jako młode pole, które wymaga czasu.

James Ryland
źródło
Zarejestruj się i / lub połącz swoje konta (informacje o tym, jak to zrobić, znajdziesz w sekcji Moje konto w naszym centrum pomocy ), wtedy będziesz mógł edytować i komentować własne odpowiedzi.
gung
10

Teraz zgadzam się z większością treści pozostałych odpowiedzi. Ale w jednym miejscu będę grał adwokata diabła. Znowu będzie swobodnie płynąć, więc przepraszam ...

Google ogłosił program o nazwie Tensor Flow do głębokiego uczenia się. To sprawiło, że zastanawiałem się, czym był „tensor” w głębokim uczeniu się, ponieważ nie mogłem nawiązać do definicji, które widziałem.

wprowadź opis zdjęcia tutaj

jar

rja=σ(βjajotxjot)

Teraz chodzi o połączenie szeregu takich transformacji, aby uzyskać użyteczną reprezentację oryginalnych współrzędnych. Na przykład po ostatniej transformacji obrazu prosta regresja logistyczna zapewni doskonałą dokładność klasyfikacji; podczas gdy na surowym obrazie na pewno nie.

Teraz rzeczą, która wydaje się, że zaginęła z pola widzenia, są właściwości niezmienności poszukiwane we właściwym tensorze. Zwłaszcza, gdy wymiary zmiennych transformowanych mogą być różne dla poszczególnych warstw. [Np. Niektóre rzeczy, które widziałem na tensorach, nie mają sensu dla nieobstawionych jakobianów - być może brakuje mi niektórych metod]

Zachowano pojęcie transformacji zmiennych oraz to, że niektóre reprezentacje wektora mogą być bardziej przydatne niż inne do określonych zadań. Analogicznie jest, czy bardziej sensowne jest rozwiązanie problemu we współrzędnych kartezjańskich czy biegunowych.


EDYCJA w odpowiedzi na @Aksakal:

Wektor nie może być doskonale zachowany ze względu na zmiany liczby współrzędnych. Jednak w pewnym sensie przynajmniej przydatne informacje mogą zostać zachowane w trakcie transformacji. Na przykład w przypadku PCA możemy upuścić współrzędną, więc nie możemy odwrócić transformacji, ale redukcja wymiarowości może być jednak przydatna. Gdyby wszystkie kolejne transformacje były odwracalne, można odwzorować z przedostatniej warstwy na przestrzeń wejściową. W tej chwili widziałem tylko modele probabilistyczne, które umożliwiają to (RBM) poprzez próbkowanie.

przypuszczenia
źródło
1
W kontekście sieci neuronowych zawsze zakładałem, że tensory działają tak samo jak tablice wielowymiarowe. Czy potrafisz wyjaśnić, w jaki sposób właściwości niezmienniczości pomagają w klasyfikacji / reprezentacji?
YS
Może powyżej nie byłem jasny, ale wydaje mi się - jeśli interpretacja jest poprawna - cel niezmienniczych właściwości został porzucony. Wydaje się, że zachowano ideę transformacji zmiennych.
przypuszcza
r¯
ale czy nie jest to właściwość transformacji bardziej niż tensor? Przynajmniej w przypadku transformacji liniowych i elementarnych, które wydają się bardziej popularne w sieciach neuronowych, są one jednakowo obecne w wektorach i macierzach; jakie są dodatkowe zalety tensorów?
YS
1
@conjectures, PCA to tylko rotacja i projekcja. To jak obracanie N-wymiarowej przestrzeni na podstawie komputera, a następnie rzutowanie na podprzestrzeń. Tensory są używane w podobnych sytuacjach w fizyce, np. Podczas patrzenia na siły na powierzchniach wewnątrz ciał itp.
Aksakal
7

Oto lekko zredagowany (dla kontekstu) fragment z nieujemnego faktoryzacji tensora z zastosowaniem aplikacji do statystyki i wizji komputerowej, A. Shashua i T. Hazan, który dociera do sedna, dlaczego przynajmniej niektórzy ludzie są zafascynowani tensorami.

Każdy n-wymiarowy problem można przedstawić w formie dwuwymiarowej poprzez połączenie wymiarów. Tak więc na przykład problemem znalezienia nieujemnego rozkładu zestawu obrazów niskiej rangi jest 3-NTF (nieujemna faktoryzacja tensora), z obrazami tworzącymi wycinki kostki 3D, ale można je również przedstawić jako problem NMF (nieujemna faktoryzacja macierzy) poprzez wektoryzację obrazów (obrazów tworzących kolumny macierzy).

Istnieją dwa powody, dla których matrycowa reprezentacja zbioru obrazów nie byłaby odpowiednia:

  1. Nadmiarowość przestrzenna (piksele, niekoniecznie sąsiadujące, o podobnych wartościach) jest tracona w wektoryzacji, dlatego spodziewalibyśmy się mniej wydajnej faktoryzacji i
  2. Rozkład NMF nie jest unikalny, dlatego nawet jeśli istnieje model generatywny (części lokalnych), NMF niekoniecznie poruszałby się w tym kierunku, co zostało empirycznie zweryfikowane przez Chu, M., Diele, F., Plemmons, R., & Ragni, S. „Optymalność, obliczanie i interpretacja nieujemnych faktoryzacji macierzowych” SIAM Journal on Matrix Analysis, 2004. Na przykład niezmienne części zestawu obrazów mają tendencję do tworzenia duchów we wszystkich czynnikach i zanieczyszczają efekt rzadkości. NTF jest prawie zawsze wyjątkowy, dlatego spodziewalibyśmy się, że schemat NTF przejdzie w kierunku modelu generatywnego i nie będą miały na niego wpływu niezmienne części.
Mark L. Stone
źródło
6

[EDYCJA] Właśnie odkryłem książkę Petera McCullagha, Tensor Methods in Statistics .

Tensory wykazują właściwości zainteresowania w identyfikacji nieznanej mieszaniny w sygnale (lub obrazie), szczególnie wokół pojęcia kanonicznego rozkładu tensorów Polyadic (CP), patrz na przykład Tensors: a Brief Introduction , P. Comon, 2014. Dziedzina jest znana pod nazwą „ślepa separacja źródeł (BSS)”:

Dekompozycje tensorów są rdzeniem wielu algorytmów ślepego rozdzielania źródeł (BSS), jawnych lub niejawnych. W szczególności kanoniczny rozkład tensorów poliadadowych (CP) odgrywa kluczową rolę w identyfikacji niedookreślonych mieszanin. Pomimo pewnych podobieństw CP i Singular Value Decomposition (SVD) są zupełnie inne. Mówiąc bardziej ogólnie, tensory i macierze mają różne właściwości, jak wskazano w tym krótkim wprowadzeniu.

Ostatnio uzyskano pewne wyniki dotyczące wyjątkowości tensorów trzeciego rzędu: O wyjątkowości kanonicznego rozkładu poliadowego tensorów trzeciego rzędu ( część 1 , część 2 ), I. Domanov i in. , 2013.

Rozkłady tensorów są często związane z rozproszeniami rzadkimi, na przykład poprzez narzucenie struktury czynnikom rozkładu (ortogonalność, Vandermonde, Hankel) i niskiej rangi, aby dostosować się do niejednorodności.

W związku z rosnącą potrzebą niepełnej analizy danych i określania złożonych pomiarów z matryc czujników, tensory są coraz częściej wykorzystywane do uzupełniania matrycy, analizy zmiennych utajonych i separacji źródeł.

Uwaga dodatkowa: najwyraźniej kanoniczny rozkład poliadyczny jest również równoważny rozkładowi Waringa jednorodnego wielomianu jako sumy potęg form liniowych z zastosowaniami w identyfikacji systemu (struktura blokowa, równoległe modele Wienera-Hammersteina lub nieliniowe modele przestrzeni stanów).

Laurent Duval
źródło
3

Czy mogę z godnością polecić moją książkę: Kroonenberg, PM Applied Multiway Data Analysis oraz Smilde i in. Analiza wielostronna. Aplikacje w naukach chemicznych (oba Wiley). Interesujący może być również mój artykuł: Kroonenberg, PM (2014). Historia analizy komponentów wielostronnych i trójstronnej analizy korespondencji. W Blasius, J. i Greenacre, MJ (red.). Wizualizacja i werbalizacja danych (s. 77–94). Nowy Jork: Chapman & Hall / CRC. ISBN 9781466589803.

Odnośniki te dotyczą raczej danych wielostronnych niż tensorów, ale odnoszą się do tego samego obszaru badań.

PM Kroonenberg
źródło
-1

Prawdą jest, że osoby uczące się maszynowo nie oglądają tensorów z taką samą ostrożnością, jak matematycy i lekarze. Oto artykuł, który może wyjaśnić tę rozbieżność: Comon P., „Tensors: krótkie wprowadzenie” IEEE Sig. Proc. Magazyn , 31 maja 2014 r

Moun
źródło
5
Czy rozróżnienie między tensorem w matematyce / fizyce a tensorem w uczeniu maszynowym jest rzeczywiście „opieką”? Wydaje się, że ludzie uczący się maszynowo używają „tensora” jako ogólnego terminu na tablice liczb (skalar, wektor, macierz i tablice z 3 lub więcej osiami, np. W TensorFlow), podczas gdy „tensor” w kontekście matematyki / fizyki ma inny znaczenie. Sugeruję, że pytanie dotyczy „opieki”, tak myślę, aby źle opisać użycie jako „niepoprawne” w zdolności uczenia maszynowego, podczas gdy w rzeczywistości kontekst uczenia maszynowego nie ma na celu precyzyjnego odtworzenia użycia matematyki / fizyki.
Sycorax,