Dlaczego normalizacja wektorowa może poprawić dokładność grupowania i klasyfikacji?

W Mahout in Action opisano, że normalizacja może nieznacznie poprawić dokładność. Czy ktoś może wyjaśnić powód, dzięki!

Author: Ming Li, 2013-04-03

2 answers

Normalizacja nie zawsze jest wymagana, ale rzadko boli.

Niektóre przykłady:

K-oznacza :

K-oznacza grupowanie jest "izotropowe" we wszystkich kierunkach przestrzeni i dlatego ma tendencję do wytwarzania mniej lub bardziej okrągłych (a nie wydłużonych) klastry. W tej sytuacji pozostawienie różnic nierównych jest równoznaczne z większe obciążenie zmiennych przy mniejszej wariancji.

Przykład w Matlab:

X = [randn(100,2)+ones(100,2);...
     randn(100,2)-ones(100,2)];

% Introduce denormalization
% X(:, 2) = X(:, 2) * 1000 + 500;

opts = statset('Display','final');

[idx,ctrs] = kmeans(X,2,...
                    'Distance','city',...
                    'Replicates',5,...
                    'Options',opts);

plot(X(idx==1,1),X(idx==1,2),'r.','MarkerSize',12)
hold on
plot(X(idx==2,1),X(idx==2,2),'b.','MarkerSize',12)
plot(ctrs(:,1),ctrs(:,2),'kx',...
     'MarkerSize',12,'LineWidth',2)
plot(ctrs(:,1),ctrs(:,2),'ko',...
     'MarkerSize',12,'LineWidth',2)
legend('Cluster 1','Cluster 2','Centroids',...
       'Location','NW')
title('K-means with normalization')

Tutaj wpisz opis obrazka

Tutaj wpisz opis obrazka

(FYI: Jak mogę wykryć, czy mój zbiór danych jest klastrowy lub niezaklustrowany (tj. tworząc jeden pojedynczy klaster)

Rozproszone klastry :

Analiza porównawcza pokazuje, że wyniki rozproszonego klastrowania zależy od rodzaju procedury normalizacji.

Sztuczna sieć neuronowa (wejścia):

Jeśli zmienne wejściowe są połączone liniowo, jak w MLP, to jest rzadko ściśle niezbędne do standaryzacji nakładów, przynajmniej w teoria. Powodem jest to, że każde przeskalowanie wektora wejściowego może być skutecznie cofać poprzez zmianę odpowiednich wag i uprzedzeń, zostawiając cię z dokładnie tymi samymi wyjściami, co wcześniej. Jednakże, istnieje wiele praktycznych powodów, dla których standaryzacja danych wejściowych może przyspieszyć trening i zmniejszyć ryzyko utknięcia w lokalna optima. Również rozpad masy i oszacowanie bayesowskie mogą be done wygodniej dzięki standardowym wejściom.

Sztuczna sieć neuronowa (wejścia/wyjścia)

Czy należy zrobić jedną z tych rzeczy ze swoimi danymi? Odpowiedź brzmi: to to zależy.

Standaryzacja zmiennych wejściowych lub docelowych powoduje, że trening proces lepiej zachowuje się poprzez poprawę stanu liczbowego (patrz ftp://ftp.sas.com/pub/neural/illcond/illcond.html ) optymalizacji problem i zapewnienie, że różne wartości domyślne związane z inicjalizacja i zakończenie są odpowiednie. Standaryzacja celów może również wpływać na funkcję celu.

Do standaryzacji przypadków należy podchodzić ostrożnie, ponieważ odrzuca informacje. Jeśli ta informacja jest nieistotna, to standaryzacja przypadków może być bardzo pomocna. Jeśli informacja ta jest ważne, wtedy standaryzacja przypadków może być katastrofalna.


Co ciekawe, Zmiana jednostek miary może nawet prowadź, aby zobaczyć zupełnie inną strukturę klastrów: Kaufman, Leonard i Peter J. Rousseeuw.. "Finding groups in data: an introduction to cluster analysis." (2005).

W niektórych zastosowaniach Zmiana jednostek miary może prowadzić nawet do aby zobaczyć zupełnie inną strukturę klastrów. Na przykład wiek (w lat) i wysokość (w centymetrach) czterech wyimaginowanych osób podaje się w tabeli 3 i wykreślone na rysunku 3. Wygląda na to, że {A, B) i { C, 0) są dwa dobrze wyodrębnione gromady. Z drugiej strony, gdy wysokość jest wyrażona w stopach otrzymuje tabelę 4 i Rys. 4, gdzie oczywiste klastry to teraz {a, C} i { B, D}. Ta partycja jest całkowicie różni się od pierwszego, ponieważ każdy podmiot otrzymał inny towarzyszu. (Rysunek 4 zostałby spłaszczony jeszcze bardziej, gdyby wiek miał mierzone w dniach.)

Aby uniknąć tej zależności od wyboru jednostek miary, należy możliwość standaryzacji danych. To konwertuje oryginał pomiary do zmiennych jednostkowych.

Tutaj wpisz opis obrazkaTutaj wpisz opis obrazka

Kaufman i in. kontynuuje kilka ciekawych rozważań (Strona 11):

Z filozoficznego punktu widzenia standaryzacja nie Rozwiąż problem. Wybór jednostek miary rodzi bowiem do względnych wag zmiennych. Wyrażanie zmiennej w mniejszych jednostki doprowadzą do większego zakresu dla tej zmiennej, który następnie mieć duży wpływ na powstałą strukturę. Z drugiej strony, przez standaryzacji próbuje się nadać wszystkim zmiennym jednakową wagę, w nadzieję osiągnięcia obiektywizmu. Jako taki może być używany przez praktykujący, który nie posiada wcześniejszej wiedzy. Może jednak być że niektóre zmienne są z natury ważniejsze od innych w konkretnego zastosowania, a następnie przypisanie ciężarów powinno być na podstawie wiedzy merytorycznej (zob. np. Abrahamowicz, 1985). On na z drugiej strony, były próby opracowania klastrów techniki niezależne od skali zmiennych (Friedman i Rubin, 1967). The proposal of Hardy and Rasson (1982) aby wyszukać partycję, która minimalizuje całkowity wolumen wypukłe łuski gromad. W zasadzie taka metoda jest niezmienna w odniesieniu do przekształceń liniowych danych, ale niestety nie istnieje żaden algorytm do jego implementacji (z wyjątkiem przybliżenie, które jest ograniczone do dwóch wymiarów). W związku z tym, dylemat normalizacji wydaje się obecnie nieunikniony i programy opisane w tej książce pozostawiają wybór użytkownikowi.

 34
Author: Franck Dernoncourt,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 11:54:12

Powodem tego jest to, że czasami pomiary różnych zmiennych mają różny charakter, więc wariancja wyników jest korygowana przez normalizację. na przykład w porównaniu wieku(x) i wagi (y) dla zestawu dzieci, wiek może wynosić od jednego do 10, a waga może wynosić od 10 funtów do 100. jeśli nie normalizacji grafika będzie produkować dwa bardzo dziwne długie owalne kształty po prawej stronie wykresu, ponieważ obie skale muszą przejść od jednego do 100. normalizacja dałaby zarówno oś A 1 do 100 skala hecnce grafika pokaże bardziej znaczące klastry.

 0
Author: user2903700,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-06-03 06:31:51