Czy wybielanie jest zawsze dobre?

27

Częstym etapem wstępnego przetwarzania algorytmów uczenia maszynowego jest wybielanie danych.

Wydaje się, że zawsze dobrze jest wybielić, ponieważ dekoreluje dane, co ułatwia modelowanie.

Kiedy wybielanie nie jest zalecane?

Uwaga: mam na myśli dekorelację danych.

Biegł
źródło
1
czy możesz podać odniesienie do wybielania?
Atilla Ozgur
2
Myślę, że ten wątek to skrót. Naprawdę powinien zostać rozszerzony. - - Aktualnie akceptowana odpowiedź zawiera tak mało informacji. - - Nie zaakceptowałbym tego i otworzyłbym nagrodę tutaj.
Léo Léopold Hertz -
Twoje pytanie jest również stronnicze, ponieważ „zawsze” tam jest. Oczywiście wybielanie nie zawsze jest dobre. Zdefiniuj także rodzaje wybielania. Myślę, że prowadzi to do niezbyt konstruktywnych odpowiedzi. - - Zdefiniuj typy danych do wykorzystania. - - Myślę, że lepszym pytaniem może być: Jak można poprawić stosowanie tego wybielania na tych wystarczająco ładnych danych? . - - @AtillaOzgur Jedno źródło en.wikipedia.org/wiki/Whitening_transformation, jeśli uwzględni się podstawową transformację wybielania.
Léo Léopold Hertz -

Odpowiedzi:

13

Wstępne wybielanie to uogólnienie normalizacji cech, które uniezależnia dane wejściowe, przekształcając je względem przekształconej macierzy kowariancji wejściowej. Nie rozumiem, dlaczego to może być coś złego.

Jednak szybkie wyszukiwanie ujawniło „Wykonalność wybielania danych w celu poprawy wydajności radaru pogodowego” ( pdf ), który brzmi:

W szczególności wybielanie działało dobrze w przypadku wykładniczej ACF (co jest zgodne z wynikami Monakowa), ale gorzej w przypadku metody Gaussa. Po eksperymentach numerycznych stwierdziliśmy, że przypadek Gaussa jest uwarunkowany numerycznie w tym sensie, że liczba warunków (stosunek wartości maksymalnej do minimalnej wartości własnej) jest wyjątkowo duża dla macierzy kowariancji Gaussa.

Nie jestem wystarczająco wykształcony, aby komentować to. Być może odpowiedź na twoje pytanie jest taka, że ​​wybielanie jest zawsze dobre, ale istnieją pewne błędy (np. Przy losowych danych nie zadziała dobrze, jeśli zostanie wykonane za pomocą funkcji autokorelacji Gaussa).

andreister
źródło
2
jak rozumiem, działa dobrze, jeśli macierz kowariancji jest dobrze oszacowana. Czy ktoś może to skomentować? dzięki.
Ran
3
Powyższy cytat nie odnosi się do źle oszacowanej macierzy kowariancji (chociaż byłoby to również problematyczne). Mówi się, że w przypadku doskonale określonej macierzy kowariancji dokładne wykonanie wymaganej faktoryzacji (i związanych z nią transformacji danych) nadal może być trudne. Wynika to z niepoprawności numerycznej , co oznacza, że ​​błędy zaokrąglania o skończonej precyzji zanieczyszczają obliczenia.
GeoMatt22
2
To niewystarczająca odpowiedź. Skopiował głównie materiały, które nie są ze sobą powiązane. - - Ta odpowiedź powinna zostać naprawdę rozszerzona. To jest zalążek.
Léo Léopold Hertz -
20

Po pierwsze, uważam, że dekorelacja i wybielanie to dwie osobne procedury.

Σ=XX

ΣΦ=ΦΛ

Λ

ΦXΦ

Możemy również zapisać przekątną kowariancję jako:

(1)ΦΣΦ=Λ

xja

(2)xja=Φxja

Λ

Λ-1/2)ΛΛ-1/2)=ja

(1)

Λ-1/2)ΦΣΦΛ-1/2)=ja

xixja

(3)xi=Λ1/2xi=Λ1/2Φxi

xixiE(xixi)=I

Σ

I wreszcie, istnieje powszechna „gotcha”, na którą ludzie powinni uważać. Należy uważać, aby obliczyć współczynniki skalowania na danych treningowych , a następnie użyć równań (2) i (3), aby zastosować te same współczynniki skalowania do danych testowych, w przeciwnym razie istnieje ryzyko przeregulowania (używałbyś informacje z zestawu testów w procesie szkolenia).

Źródło: http://courses.media.mit.edu/2010fall/mas622j/whiten.pdf

tdc
źródło
2
Dzięki za wyjaśnienie, masz rację. Miałem na myśli dekorelację. btw: na końcu piszesz, że wybielanie jest wykonywane tylko na danych treningowych. o ile wiem, obliczasz macierz na podstawie danych treningowych, ale wykonujesz ją zarówno na danych treningowych, jak i testowych.
Ran
@Ran tak właśnie to miałem na myśli ... Zaktualizuję odpowiedź
tdc
Byłoby miło, gdybyś mógł również zaoferować sekcje w swojej odpowiedzi. Zapoznaj się ze wstępem, podsumowaniem i zagadnieniami matematycznymi. - - Myślę, że w swojej odpowiedzi nie sięgasz wystarczająco głęboko. - - Twoja odpowiedź obejmuje głównie trywialne propozycje, ale nie jest wystarczająco głęboka w temacie. Masz tylko podstawowy skopiowany materiał z notatek z wykładu, ale bardzo niewiele własnej pracy na ten temat.
Léo Léopold Hertz -
więc w prostych słowach, zrób pca, aby uzyskać funkcje skorelowane, a następnie wypowiedz nową funkcję, podziel przez wariancję, aby uzyskać cechy wybielone.
awokado
1

From http://cs231n.github.io/neural-networks-2/

Jedną ze słabości tej transformacji jest to, że może ona znacznie wyolbrzymić szum w danych, ponieważ rozciąga wszystkie wymiary (w tym nieistotne wymiary niewielkiej wariancji, które w większości są szumem), aby były jednakowej wielkości na wejściu. W praktyce można to złagodzić poprzez silniejsze wygładzenie ...

Niestety nie jestem wystarczająco wykształcony, aby komentować dalej.

DharmaTurtle
źródło
Proszę określić, które formy hałasu są przesadzone. Twoje referencje są rygorystyczne. To tylko podstawowa informatyka na ten temat, tj. Biały szum ze starożytnym podejściem do sieci neuronowej. - - Praca przesadza Należy również zdefiniować .
Léo Léopold Hertz -
Wydaje mi się, że jest to związane ze skalowaniem wszystkich funkcji w celu uzyskania tej samej wariancji, prawda? Więc jeśli istniałaby funkcja, której wariancją w zestawie treningowym był hałas, moglibyśmy oczekiwać, że ogólna wariancja tej cechy będzie znacznie mniejsza niż inna cecha; transformacja ta sprawiłaby, że zarówno funkcja „szumu”, jak i druga cecha miałyby tę samą wariancję i mogłyby być postrzegane jako „szum wzmacniający”.
ijoseph