• Nie Znaleziono Wyników

Czy da się znaleźć cztery punkty na płaszczyźnie z odległością 1 między każdym z nich.

N/A
N/A
Protected

Academic year: 2021

Share "Czy da się znaleźć cztery punkty na płaszczyźnie z odległością 1 między każdym z nich."

Copied!
4
0
0

Pełen tekst

(1)

Skalowanie wielowymiarowe

Marcin Orchel

1 Wstęp

Czy da się znaleźć cztery punkty na płaszczyźnie z odległością 1 między każdym z nich.

Mamy dane punkty x i w przestrzeni R n , zadanie polega na znalezieniu podprze- strzeni R r tak aby zachować odległości euklidesowe między rzutami punktów na tą pod- przestrzeń. Pytanie czy jest to możliwe? Możemy osłabić ten warunek szukając takiej podprzestrzeni, aby minimalizować

V =

n

X

i=1 n

X

j=1



d 2 ij − d ∗2 ij  (1)

Wartość pod sumą będzie zawsze dodatnia, dlatego nie musimy tutaj dodawać wartości bezwzględnych. Rozwiązaniem tego zadania jest przestrzeń określona przez r pierwszych składowych głównych.

Nie musimy mieć danych wartości wektorów wejściowych do skalowania wielowymia- rowego. Wystarczą odmienności między n obiektami dane jako symetryczna macierz n na n.

Możemy dodatkowo założyć, że odmienności między obiektami spełniają warunek trójkąta, a więc

o (x, y) + o (y, z) ≥ o (x, z) (2)

gdzie o oznacza odmienność.

Tworzymy macierz Γ z macierzy odmienności następująco. Macierz Γ będzie miała elementy

γ ij = − 1

2 d 2 ij (3)

Konstruujemy macierz φ z elementami φ ij = γ ij

n

X

k=1

γ ik /n −

n

X

k=1

γ kj /n +

n

X

k=1 n

X

l=1

γ kl /n 2 (4)

Możemy tą macierz zapisać w postaci macierzowej jako

φ =  I − 11 T /n  Γ  I − 11 T /n  , (5) gdzie I to macierz jednostkowa i 1 jest wektorem n jedynek. Jeżeli macierz φ jest nie- ujemnie określona, to macierz φ jest co najwyżej rzędu n − 1. Wtedy możemy wyznaczyć

1

(2)

podprzestrzeń o wymiarze r dokładnie odtwarzającą odległości. Wymiar r jest równy rzędowi macierzy φ.

Algorytm wyznaczenia punktów po skalowaniu. Znajdujemy wartości własne λ 1λ 2 ≥ . . . ≥ λ n = 0 oraz wektory własne v i , i = 1, . . . , n macierzy φ. Tak skalujemy wektory własne, aby

v i T v i = λ i (6)

Wymiar przestrzeni r jest dany przez liczbę niezerowych wartości λ i . Współrzędne n punktów dane są przez kolejne współrzędne wektora v i . Najlepsza reprezentacja dla u < r jest dana przez u pierwszych wektorów własnych. Zachodzi również

V = 2n (λ u+1 + . . . + λ n ) (7)

Możemy wyznaczyć drzewo spinające z grafu punktów, a także minimalne drzewo spinające, w którym suma długości wszystkich krawędzi jest minimalna. Sprawdzamy na drzewie czy krawędzie odpowiadające mniejszym wartościom odmienności d ij są krótsze od krawędzi odpowiadających większym wartościom d ij .

Zamiast funkcji V stosuje się również inne funkcje takie jak L =

n

X

i=1 n

X

j=1



d ij − d ij  2 (8)

Reprezentacja Sammona

L = X

i6=j

 d ij − d ij  2 /d ij (9)

Innym rodzajem danych jest brak wartości liczbowej określającej odmienność, a je- dynie ciąg monotoniczny między odległościami w postaci

d i

1

j

1

≤ d i

2

j

2

≤ . . . ≤ d i

M

j

M

, (10) gdzie M = (1/2)n(n − 1), indeksy i k , j k ∈ {1, 2, . . . , n}.

Można również zastosować metody regresji, aby wygładzić wartości odległości po skalowaniu.

Lemat Johnsona-Lindenstraussa: dla każdego ε, 0 < ε < 1 i dla każdego n-elementowego zbioru V przestrzeni euklidesowej o wymiarze p, R p , istnieje funkcja f : R p → R r , przy czym

r ≥ 4  ε 2 /2 − ε 3 /3  −1 ln n (11) prawdziwe są dla wszystkich punktów u, v ∈ V nierówności

(1 − ε) ku − vk 2 ≤ kf (u) − f (v)k 2 ≤ (1 + ε) ku − vk 2 (12) dla normy euklidesowej. Inaczej, zbiór n punktów w przestrzeni euklidesowej o dowolnie dużym wymiarze p można zrzutować do przestrzeni euklidesowej o wymiarze rzędu ln n niezależnym od p, w taki sposób, by oryginalne odległości między punktami zostały zachowane z dokładnością do czynnika (1 ± ε), gdzie ε jest dowolnie małą, ustaloną stałą.

2

(3)

2 Zadania

Proszę o zapoznanie się z językiem R.

2.1 Zadania na 3.0

• wygenerować losowe dane w którym każdy wektor będzie dotyczył klienta a każda cecha dotyczy produktu. Kliencie oceniają produkty w skali 1 - pozytywnie, 0 - neutralnie, -1 - negatywnie.

• wygenerować macierz odległości, wartości macierzy reprezentują zgodność ocen, na przekątnej jest liczba produktów oceniana jawnie przez każdego z klientów

• przetestować skalowanie wielowymiarowe dla różnych parametrów

• wyznaczyć czas metody w zależności od rozmiaru macierzy odmienności

• zinterpretować grupy punktów

• uruchomić metodę dla miast euromat = as.matrix(eurodist)

• porównać metodę z pca Wskazówki:

• generacja danych syntetycznych, możemy wykorzystać pakiet mlbench, przykła- dowo

library(mlbench)

p <- mlbench.2dnormals(500,6)

• generacja danych set.seed(851982)

ex.matrix <- matrix(sample(c(-1, 0, 1), 24, replace=TRUE), nrow=4, ncol=6) row.names(ex.matrix)<-c(’A’, ’B’, ’C’, ’D’)

colnames(ex.matrix)<-c(’P1’, ’P2’, ’P3’, ’P4’, ’P5’, ’P6’)

• ex.mult<-ex.matrix %*% t(ex.matrix) ex.mult

dist

• uruchomienie mds

ex.mds<-cmdscale(ex.dist) plot(ex.mds, type=’n’)

text(ex.mds, c(’A’, ’B’, ’C’, ’D’))

3

(4)

2.2 Zadania na 4.0

• wykonać mds za pomocą wyznaczania wektorów własnych i wykonać testy z zadań na 3.0

2.3 Zadania na 5.0

• przetestować algorytm mds na wybranych danych rzeczywistych, wybrać duży zbiór danych do testów

4

Cytaty

Powiązane dokumenty

Przez 3 lata na koniec każdego miesiąca wpłacamy na konto w pewnym banku kwotę 400 zł. Obliczyć wartość zgromadzonych środków pół roku po ostatniej wpłacie, przy

pozostałych cyfr dodamy pięciokrotność odciętej cyfry jedności i powstanie w ten sposób liczba podzielna przez 7, to.. wyjściowa liczba też jest podzielna

Wśród dowolnych k różnych liczb całkowitych dodatnich istnieją dwie, których różnica jest podzielna przez n.. Wśród dowolnych k różnych liczb całkowitych dodatnich

Dla równoległoboku o przekątnych długości 6 i 8, przecinających się pod kątem α, oznaczmy przez S(α) sumę kwadratów długości jego boków

Na potrzeby tego zadania, liczbę naturalną k nazwiemy ładną, jeżeli istnieje liczb naturalna, której kwadrat ma sumę cyfr równą k.. Wiadomo, że wśród 11 kolejnych

Wnioskodawca przedstawił we wniosku główne zakresy planowanej działalności, w tym kody PKD 2007 oraz szczegółowo opisał, w jaki sposób operacja przyczyni się do wzrostu

Zajęcia laboratoryjne odbywają się w Laboratorium Podstaw Automatyki (LPA), lokalizacja: B4, I piętro, do końca korytarzem, wejście do KAP (109), sala 20 (domofon).. 5/1 –

uczeń wykazuje znaczenie skali mapy w przedstawianiu różnych informacji geograficznych na mapie; posługuje się skalą mapy do obliczenia odległości w tereniet.