Wprowadzenie do “data science”
Wykład 8 - przegl ˛
ad metod uczenia maszynowego
dr in˙z. Julian Sienkiewicz
Zadania
Zadania
uczenie maszynowe (machine learning) ≈ eksploracja danych (data mining)
Zadania uczenia maszynowego
1
opis, równie˙z EDA, redukcja wymiaru, wizualizacja
2szacowanie (estymacja) oraz przewidywanie (predykcja),
3klasyfikacja (uczenie pod nadzorem) + odkrywanie reguł,
4grupowanie (klastrowanie).
Opis + wizualizacja histogramy wykresy PCA, MDS FA, CCA ANOVA Estymacja + predykcja estymacja g ˛esto´sci najbli˙zsi s ˛asiedzi regresja Klasyfikacja + reguły klasyfikatory asocjacje sieci bay-esowskie i Markowa Klastrowanie metoda k-means klastrowanie hierarchiczneZadania
uczenie maszynowe (machine learning) ≈ eksploracja danych (data mining)
Zadania uczenia maszynowego
1
opis, równie˙z EDA, redukcja wymiaru, wizualizacja
2
szacowanie (estymacja) oraz przewidywanie (predykcja),
3klasyfikacja (uczenie pod nadzorem) + odkrywanie reguł,
4grupowanie (klastrowanie).
Opis + wizualizacja histogramy wykresy PCA, MDS FA, CCA ANOVA Estymacja + predykcja estymacja g ˛esto´sci najbli˙zsi s ˛asiedzi regresja Klasyfikacja + reguły klasyfikatory asocjacje sieci bay-esowskie i Markowa Klastrowanie metoda k-means klastrowanie hierarchiczneZadania
uczenie maszynowe (machine learning) ≈ eksploracja danych (data mining)
Zadania uczenia maszynowego
1
opis, równie˙z EDA, redukcja wymiaru, wizualizacja
2szacowanie (estymacja) oraz przewidywanie (predykcja),
3
klasyfikacja (uczenie pod nadzorem) + odkrywanie reguł,
4grupowanie (klastrowanie).
Opis + wizualizacja histogramy wykresy PCA, MDS FA, CCA ANOVA Estymacja + predykcja estymacja g ˛esto´sci najbli˙zsi s ˛asiedzi regresja Klasyfikacja + reguły klasyfikatory asocjacje sieci bay-esowskie i Markowa Klastrowanie metoda k-means klastrowanie hierarchiczneZadania
uczenie maszynowe (machine learning) ≈ eksploracja danych (data mining)
Zadania uczenia maszynowego
1
opis, równie˙z EDA, redukcja wymiaru, wizualizacja
2szacowanie (estymacja) oraz przewidywanie (predykcja),
3klasyfikacja (uczenie pod nadzorem) + odkrywanie reguł,
4
grupowanie (klastrowanie).
Opis + wizualizacja histogramy wykresy PCA, MDS FA, CCA ANOVA Estymacja + predykcja estymacja g ˛esto´sci najbli˙zsi s ˛asiedzi regresja Klasyfikacja + reguły klasyfikatory asocjacje sieci bay-esowskie i Markowa Klastrowanie metoda k-means klastrowanie hierarchiczneZadania
uczenie maszynowe (machine learning) ≈ eksploracja danych (data mining)
Zadania uczenia maszynowego
1
opis, równie˙z EDA, redukcja wymiaru, wizualizacja
2szacowanie (estymacja) oraz przewidywanie (predykcja),
3klasyfikacja (uczenie pod nadzorem) + odkrywanie reguł,
4grupowanie (klastrowanie).
Opis + wizualizacja histogramy wykresy PCA, MDS FA, CCA ANOVA Estymacja + predykcja estymacja g ˛esto´sci najbli˙zsi s ˛asiedzi regresja Klasyfikacja + reguły klasyfikatory asocjacje sieci bay-esowskie i Markowa Klastrowanie metoda k-means klastrowanie hierarchiczneZadania
uczenie maszynowe (machine learning) ≈ eksploracja danych (data mining)
Zadania uczenia maszynowego
1
opis, równie˙z EDA, redukcja wymiaru, wizualizacja
2szacowanie (estymacja) oraz przewidywanie (predykcja),
3klasyfikacja (uczenie pod nadzorem) + odkrywanie reguł,
4grupowanie (klastrowanie).
Opis + wizualizacja histogramy wykresy PCA, MDS FA, CCA ANOVA Estymacja + predykcja estymacja g ˛esto´sci najbli˙zsi s ˛asiedzi regresja Klasyfikacja + reguły klasyfikatory asocjacje sieci bay-esowskie i Markowa Klastrowanie metoda k-means klastrowanie hierarchiczneZadania
uczenie maszynowe (machine learning) ≈ eksploracja danych (data mining)
Zadania uczenia maszynowego
1
opis, równie˙z EDA, redukcja wymiaru, wizualizacja
2szacowanie (estymacja) oraz przewidywanie (predykcja),
3klasyfikacja (uczenie pod nadzorem) + odkrywanie reguł,
4grupowanie (klastrowanie).
Opis + wizualizacja histogramy wykresy PCA, MDS FA, CCA ANOVA Estymacja + predykcja estymacja g ˛esto´sci najbli˙zsi s ˛asiedzi regresja Klasyfikacja + reguły klasyfikatory asocjacje sieci bay-esowskie i Markowa Klastrowanie metoda k-means klastrowanie hierarchiczneZadania
uczenie maszynowe (machine learning) ≈ eksploracja danych (data mining)
Zadania uczenia maszynowego
1
opis, równie˙z EDA, redukcja wymiaru, wizualizacja
2szacowanie (estymacja) oraz przewidywanie (predykcja),
3klasyfikacja (uczenie pod nadzorem) + odkrywanie reguł,
4grupowanie (klastrowanie).
Opis + wizualizacja histogramy wykresy PCA, MDS FA, CCA ANOVA Estymacja + predykcja estymacja g ˛esto´sci najbli˙zsi s ˛asiedzi regresja Klasyfikacja + reguły klasyfikatory asocjacje sieci bay-esowskie i Markowa Klastrowanie metoda k-means klastrowanie hierarchiczneZadania
uczenie maszynowe (machine learning) ≈ eksploracja danych (data mining)
Zadania uczenia maszynowego
1
opis, równie˙z EDA, redukcja wymiaru, wizualizacja
2szacowanie (estymacja) oraz przewidywanie (predykcja),
3klasyfikacja (uczenie pod nadzorem) + odkrywanie reguł,
4grupowanie (klastrowanie).
Opis + wizualizacja histogramy wykresy PCA, MDS FA, CCA ANOVA Estymacja + predykcja estymacja g ˛esto´sci najbli˙zsi s ˛asiedzi regresja Klasyfikacja + reguły klasyfikatory asocjacje sieci bay-esowskie i Markowa Klastrowanie metoda k-means klastrowanie hierarchiczneOpis
LDA - liniowa analiza dyskryminacji
Rozwa˙zmy k klas i obserwacjex pochodz ˛ace z wielowymiarowego rozkładu Gaussa p(x|k ) ∼ N (mk,S), czyli: p(x|k ) = 1 (2π) p 2|S|12 exph−12(x − mk)TS−1(x − mk) i
ka˙zda klasa k jest scharakteryzowana warto´sci ˛a oczekiwan ˛amk
wszystkie klasy maj ˛a tak ˛a sam ˛a macierz kowariancjiS
korzystaj ˛ac z reguły bayesowskiej mo˙zna okre´sli´cfunkcj ˛e dyskryminacyjn ˛a dla dwóch klas δ12(x) = lnp(1|p(2|x)x)=lnππ1 2 +ln p(x|1) p(x|2)czyli δ12(x) = ln π1 π2 + 1 2(m1− m2)TS−1(m1+m2) + (m1− m2)TS−1x
Je˙zeli δ12(x) > 0, to obserwacja x zostaje sklasyfikowana jako pochodz ˛aca z klasy 1,
je´sli δ12(x) < 0, to x jest z klasy 2.
QDA - kwadratowa analiza dyskryminacji
W przypadku metody QDA zakładamy ró˙zne macierze kowariancji p(x|k ) ∼ N (mk,Sk).
δkl(x) = lnππ1 2+ 1 2ln |Sk| |Sl| +x T(S−1 l ml− S−1k mk) −12xT(S −1 l − S −1 k )x − 1 2mTlS −1 l ml+ 1 2m T kS −1 k mk =0
Opis
LDA - liniowa analiza dyskryminacji
Rozwa˙zmy k klas i obserwacjex pochodz ˛ace z wielowymiarowego rozkładu Gaussa p(x|k ) ∼ N (mk,S), czyli: p(x|k ) = 1 (2π) p 2|S|12 exph−12(x − mk)TS−1(x − mk) i
ka˙zda klasa k jest scharakteryzowana warto´sci ˛a oczekiwan ˛amk
wszystkie klasy maj ˛a tak ˛a sam ˛a macierz kowariancjiS
korzystaj ˛ac z reguły bayesowskiej mo˙zna okre´sli´cfunkcj ˛e dyskryminacyjn ˛a dla dwóch klas δ12(x) = lnp(1|p(2|x)x)=lnππ1 2 +ln p(x|1) p(x|2)czyli δ12(x) = ln π1 π2 + 1 2(m1− m2)TS−1(m1+m2) + (m1− m2)TS−1x
Je˙zeli δ12(x) > 0, to obserwacja x zostaje sklasyfikowana jako pochodz ˛aca z klasy 1,
je´sli δ12(x) < 0, to x jest z klasy 2.
QDA - kwadratowa analiza dyskryminacji
W przypadku metody QDA zakładamy ró˙zne macierze kowariancji p(x|k ) ∼ N (mk,Sk).
δkl(x) = lnππ1 2+ 1 2ln |Sk| |Sl| +x T(S−1 l ml− S−1k mk) −12xT(S −1 l − S −1 k )x − 1 2mTlS −1 l ml+ 1 2m T kS −1 k mk =0
Przykłady
Przykłady
Opis
Maszyny wektorów no´snych (support vector machines - SVM)
zadanie optymalizacji polega na znalezieniu najszerszego mo˙zli-wego marginesu,
po´srodku marginesu umieszcza si ˛e hiperpłaszyzn ˛e dyskrymina-cyjn ˛a,
nazwa SVM ma swoje ´zródło w tym, ˙ze hiperpłaszczyzny margi-nesów musz ˛a przechodzi´c przez konkretne elementy prób ucz ˛ a-cych (inaczej margines mo˙zna byłoby rozszerzy´c) - s ˛a to wła-´snie wektory podpieraj ˛ace.
W efekcie zadanie znalezienia optymalnego poło˙zenia hiperpłaszczyzny H sprowadza si ˛e do maksymalizacji wyra˙zenia d++d−= ||w||2 lub, co jest równowa˙zne, do
Opis
Maszyny wektorów no´snych (support vector machines - SVM)
zadanie optymalizacji polega na znalezieniu najszerszego mo˙zli-wego marginesu,
po´srodku marginesu umieszcza si ˛e hiperpłaszyzn ˛e dyskrymina-cyjn ˛a,
nazwa SVM ma swoje ´zródło w tym, ˙ze hiperpłaszczyzny margi-nesów musz ˛a przechodzi´c przez konkretne elementy prób ucz ˛ a-cych (inaczej margines mo˙zna byłoby rozszerzy´c) - s ˛a to wła-´snie wektory podpieraj ˛ace.
W efekcie zadanie znalezienia optymalnego poło˙zenia hiperpłaszczyzny H sprowadza si ˛e do maksymalizacji wyra˙zenia d++d−= ||w||2 lub, co jest równowa˙zne, do
Opis
Maszyny wektorów no´snych (support vector machines - SVM)
zadanie optymalizacji polega na znalezieniu najszerszego mo˙zli-wego marginesu,
po´srodku marginesu umieszcza si ˛e hiperpłaszyzn ˛e dyskrymina-cyjn ˛a,
nazwa SVM ma swoje ´zródło w tym, ˙ze hiperpłaszczyzny margi-nesów musz ˛a przechodzi´c przez konkretne elementy prób ucz ˛ a-cych (inaczej margines mo˙zna byłoby rozszerzy´c) - s ˛a to wła-´snie wektory podpieraj ˛ace.
W efekcie zadanie znalezienia optymalnego poło˙zenia hiperpłaszczyzny H sprowadza si ˛e do maksymalizacji wyra˙zenia d++d−= ||w||2 lub, co jest równowa˙zne, do
Opis
Maszyny wektorów no´snych (support vector machines - SVM)
zadanie optymalizacji polega na znalezieniu najszerszego mo˙zli-wego marginesu,
po´srodku marginesu umieszcza si ˛e hiperpłaszyzn ˛e dyskrymina-cyjn ˛a,
nazwa SVM ma swoje ´zródło w tym, ˙ze hiperpłaszczyzny margi-nesów musz ˛a przechodzi´c przez konkretne elementy prób ucz ˛ a-cych (inaczej margines mo˙zna byłoby rozszerzy´c) - s ˛a to wła-´snie wektory podpieraj ˛ace.
W efekcie zadanie znalezienia optymalnego poło˙zenia hiperpłaszczyzny H sprowadza si ˛e do maksymalizacji wyra˙zenia d++d−= ||w||2 lub, co jest równowa˙zne, do
Opis
Maszyny wektorów no´snych (support vector machines - SVM)
zadanie optymalizacji polega na znalezieniu najszerszego mo˙zli-wego marginesu,
po´srodku marginesu umieszcza si ˛e hiperpłaszyzn ˛e dyskrymina-cyjn ˛a,
nazwa SVM ma swoje ´zródło w tym, ˙ze hiperpłaszczyzny margi-nesów musz ˛a przechodzi´c przez konkretne elementy prób ucz ˛ a-cych (inaczej margines mo˙zna byłoby rozszerzy´c) - s ˛a to wła-´snie wektory podpieraj ˛ace.
W efekcie zadanie znalezienia optymalnego poło˙zenia hiperpłaszczyzny H sprowadza si ˛e do maksymalizacji wyra˙zenia d++d−= ||w||2 lub, co jest równowa˙zne, do
Przykłady
Struktura drzewa A korze ´n gał ˛a´z B dzieci C D E li ´s ´c Najlepsze rozdzielenie
Ró˙znorodno´s´c otrzymywanych cz ˛e´sci jest
mo˙zliwie najwi ˛eksza
80/20
80/0 0/20
konwencja rysowania drzew rosn ˛
acych od góry w dół [sic!]: korze ´n na
górze, na dole li´scie
od korzenia do
ka˙zdego li´scia prowadzi tylko jedna droga,
w korzeniach jest skupiona cała
próba ucz ˛
aca
, kolejne elementy PU s ˛
a
przesuwane wzdłu˙z gał ˛ezi, z góry w dół,
w ka˙zdym w ˛e´zle jest podejmowana o wyborze gał ˛ezi, wzdłu˙z której b
˛e-dzie trwa´c przesuwanie próby
Struktura drzewa A korze ´n gał ˛a´z B dzieci C D E li ´s ´c Najlepsze rozdzielenie
Ró˙znorodno´s´c otrzymywanych cz ˛e´sci jest
mo˙zliwie najwi ˛eksza
80/20
80/0 0/20
konwencja rysowania drzew rosn ˛
acych od góry w dół [sic!]: korze ´n na
górze, na dole li´scie
od korzenia do
ka˙zdego li´scia prowadzi tylko jedna droga,
w korzeniach jest skupiona cała
próba ucz ˛
aca
, kolejne elementy PU s ˛
a
przesuwane wzdłu˙z gał ˛ezi, z góry w dół,
w ka˙zdym w ˛e´zle jest podejmowana o wyborze gał ˛ezi, wzdłu˙z której b
˛e-dzie trwa´c przesuwanie próby
Struktura drzewa A korze ´n gał ˛a´z B dzieci C D E li ´s ´c Najlepsze rozdzielenie
Ró˙znorodno´s´c otrzymywanych cz ˛e´sci jest
mo˙zliwie najwi ˛eksza
80/20
80/0 0/20
konwencja rysowania drzew rosn ˛
acych od góry w dół [sic!]: korze ´n na
górze, na dole li´scie
od korzenia do
ka˙zdego li´scia prowadzi tylko jedna droga,
w korzeniach jest skupiona cała
próba ucz ˛
aca
, kolejne elementy PU s ˛
a
przesuwane wzdłu˙z gał ˛ezi, z góry w dół,
w ka˙zdym w ˛e´zle jest podejmowana o wyborze gał ˛ezi, wzdłu˙z której b
˛e-dzie trwa´c przesuwanie próby
Przykładowe drzewo klasyfikacyjne
Cel drzewa klasyfikuj ˛acego
Umo˙zliwienie klasyfikacji obserwacji, o których nie wiemy, do jakich klas
na-le˙z ˛
a.
Drzewo jest uczone (trenowane) na podstawie
próby ucz ˛
acej
:
od niej zale˙zy posta´c
warunków podziału
Przykładowe drzewo klasyfikacyjne
Cel drzewa klasyfikuj ˛acego
Umo˙zliwienie klasyfikacji obserwacji, o których nie wiemy, do jakich klas
na-le˙z ˛
a.
Drzewo jest uczone (trenowane) na podstawie
próby ucz ˛
acej
:
od niej zale˙zy posta´c
warunków podziału
Opis
Analiza skupie ´n w przestrzeni euklidesowej R
pmamy n-elementowy zbiór obserwacjixi, i = 1, ..., n o warto´sciach w Rp,
chcemy podzieli´c t ˛e prób ˛e na K skupie ´n, T = 1 2 n X i=1 n X i0=1 dii0
suma kwadratów odległo´sci pomi ˛edzy parami punktów próby
dii0=d (xi,xi0)
kwadrat odległo´sci pomi ˛edzy obserwacjamixiixi0
w ten sposób dokonali´smy arbitralnego podziału obserwacji na K rozł ˛acznych podzbiorów k = 1, .., K , gdzie oznaczymy C(i) = k jako przynale˙zno´s´c i-tej obserwacjixido k -tego podzbioru.
Algorytm K -´srednich (K -means)
0 inicjalizacja pocz ˛atkowych K ´srodkówmK,
1 w pierwszym kroku przypisujemy punkty do najbli˙zszych ´srodkówmk 2 obliczamy nowe ´srodki skupie ´n i wracamy do kroku 1
3 kontynuujemy iteracje, dopóki ˙zaden punkt nie przeniesie si ˛e z jednego skupienia
Opis
Analiza skupie ´n w przestrzeni euklidesowej R
pmamy n-elementowy zbiór obserwacjixi, i = 1, ..., n o warto´sciach w Rp,
chcemy podzieli´c t ˛e prób ˛e na K skupie ´n, T = 1 2 n X i=1 n X i0=1 dii0
suma kwadratów odległo´sci pomi ˛edzy parami punktów próby
dii0=d (xi,xi0)
kwadrat odległo´sci pomi ˛edzy obserwacjamixiixi0
w ten sposób dokonali´smy arbitralnego podziału obserwacji na K rozł ˛acznych podzbiorów k = 1, .., K , gdzie oznaczymy C(i) = k jako przynale˙zno´s´c i-tej obserwacjixido k -tego podzbioru.
Algorytm K -´srednich (K -means)
0 inicjalizacja pocz ˛atkowych K ´srodkówmK,
1 w pierwszym kroku przypisujemy punkty do najbli˙zszych ´srodkówmk 2 obliczamy nowe ´srodki skupie ´n i wracamy do kroku 1
3 kontynuujemy iteracje, dopóki ˙zaden punkt nie przeniesie si ˛e z jednego skupienia
Opis
Analiza skupie ´n w przestrzeni euklidesowej R
pmamy n-elementowy zbiór obserwacjixi, i = 1, ..., n o warto´sciach w Rp,
chcemy podzieli´c t ˛e prób ˛e na K skupie ´n, T = 1 2 n X i=1 n X i0=1 dii0
suma kwadratów odległo´sci pomi ˛edzy parami punktów próby
dii0=d (xi,xi0)
kwadrat odległo´sci pomi ˛edzy obserwacjamixiixi0
w ten sposób dokonali´smy arbitralnego podziału obserwacji na K rozł ˛acznych podzbiorów k = 1, .., K , gdzie oznaczymy C(i) = k jako przynale˙zno´s´c i-tej obserwacjixido k -tego podzbioru.
Algorytm K -´srednich (K -means)
0 inicjalizacja pocz ˛atkowych K ´srodkówmK,
1 w pierwszym kroku przypisujemy punkty do najbli˙zszych ´srodkówmk 2 obliczamy nowe ´srodki skupie ´n i wracamy do kroku 1
3 kontynuujemy iteracje, dopóki ˙zaden punkt nie przeniesie si ˛e z jednego skupienia do drugiego
Metody hierarchiczne
opieraj ˛
a si ˛e na pomiarze uogólnionej odmienno´sci mi ˛edzy dwoma
do-wolnymi zbiorami obserwacji,
nie wymagaj ˛
a z góry okre´slenia liczby skupie ´n,
w pierwszym kroku
metody aglomeracyjnej tworzymy tyle skupie ´n, ile
jest obserwacji,
w nast ˛epnym kroku w jedno skupienie ł ˛
aczona jest para najmniej
odle-głych obserwacji,
z kroku na krok skupie ´n jest coraz mniej, a˙z w ostatnim powstaje cała
próba w jednym skupieniu,
w efekcie otrzymuje si ˛e nieskierowane drzewo (dendrogram),
to samo mo˙zna otrzyma´c "id ˛
ac od góry"(
metoda oparta na dzieleniu),
Metody hierarchiczne
opieraj ˛
a si ˛e na pomiarze uogólnionej odmienno´sci mi ˛edzy dwoma
do-wolnymi zbiorami obserwacji,
nie wymagaj ˛
a z góry okre´slenia liczby skupie ´n,
w pierwszym kroku
metody aglomeracyjnej tworzymy tyle skupie ´n, ile
jest obserwacji,
w nast ˛epnym kroku w jedno skupienie ł ˛
aczona jest para najmniej
odle-głych obserwacji,
z kroku na krok skupie ´n jest coraz mniej, a˙z w ostatnim powstaje cała
próba w jednym skupieniu,
w efekcie otrzymuje si ˛e nieskierowane drzewo (dendrogram),
to samo mo˙zna otrzyma´c "id ˛
ac od góry"(
metoda oparta na dzieleniu),
Przykłady