Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

pl:dydaktyka:ml:mlrep3 [2017/07/17 10:08]
pl:dydaktyka:ml:mlrep3 [2019/06/27 15:50] (aktualna)
Linia 1: Linia 1:
 +
 +====== Peter Flach: Machine Learning, repetytorium 3 ======
 +
 +===== -#7 Modele liniowe =====
 +//Linear models//
 +
 +Cechą charakterystyczną tych modeli jest operowanie pojęciami dotyczącymi geometrii przestrzeni,​ np. w układzie współrzędnych kartezjańskich.
 +Modele liniowe wykorzystują pojęcia linii, lub (hiper) płaszczyzny do ustrukturalizowania przestrzeni instancji.
 +
 +Zaletą modeli liniowych jest ich względna prostota, są to modele:
 +  - parametryczne - mają określoną strukturę, która jest dopasowywana w procesie uczenia poprzez parametry
 +  - stabilne - niewielkie zmiany danych uczących wywołują relatywnie niewielkie zmiany w otrzymywanych parametrach modelu
 +  - mniej podatne na przeuczenie - głównie ze względu na niewielką liczbę parametrów;​ za to czasami mogą występować sub optymalne kombinacje parametrów.
 + 
 +==== Metoda najmniejszych kwadratów ====
 +//The least-squares method//
 +
 +''​S180''​
 +Model jednowymiarowej regresji liniowe, i jego interpretacja geometryczna na ''​S181''​.
 +Slajd ''​S182''​ pokazuje wpływ (relatywnie niewielki-stabilność) na otrzymane parametry.
 +
 +''​S183-5''​
 +Opis przypadku wielowymiarowego wymaga notacji macierzowej.
 +
 +''​S186''​
 +Jeżeli cechy są nieskorelowane,​ przypadek wielowymiarowy może zdekomponowany na N przypadków jednowymiarowych.
 +Tymczasem silna korelacja może prowadzić do niestabilności modelu.
 +Aby ją ograniczyć stosuje się //​regularyzację//​.
 +
 +''​S187-191''​
 +Regresję możemy stosować nie tylko do aproksymacji funkcji, ale przede wszystkim do konstruowania klasyfikatora binarnego - separującego przestrzeń na 2 części.
 +Staramy się minimalizować liczbę źle sklasyfikowanych przypadków pozytywnych i negatywnych.
 +Na ''​S190''​ pokazana jest interpretacja geometryczna,​ w tym przypadku 3 przykłady są niepoprawnie sklasyfikowane - na górnej osi 1 fn (po lewej) i na dolnej 2 fp (po prawej).
 +
 +==== Perceptron jako klasyfikator liniowy ====
 +//The perceptron: a heuristic learning algorithm for linear classifiers//​
 +
 +''​S192''​
 +Perceptron reprezentowany jako prosta liniowa sieć neuronowa jest przykładem klasyfikatora binarnego dającego dobre rezultaty.
 +W procesie uczenia uaktualniamy wektory wag, ze współczynnikiem nazywanym prędkością uczenia.
 +Algorytm jest na ''​S193''​ - wagi są powiązane z cechami obiektów.
 +
 +''​S194''​
 +Prędkość uczenia może polepszać zbieżność tego procesu, jednak tylko jeśli nie jest za duża.
 +
 +''​S195''​
 +W przypadku dualnym, wagi są powiązane z instancjami obiektów (nie cechami).
 +A sam algorytm wygląda analogicznie ''​S196''​.
 +
 +''​S197''​
 +Porównuje omówione klasyfikatory liniowe.
 +
 +==== Metody z wektorem wspierającym ====
 +//Support vector machines//
 +
 +''​S200''​
 +ilustruje koncepcję [[wp>​Support Vector Machine]].
 +
 +''​S201-7'' ​
 +pokazują metodę maksymalizacji marginesów pomiędzy prostą, a skrajnymi/​najbliższymi przykładami,​ z użyciem
 +[[http://​pl.wikipedia.org/​wiki/​Mno%C5%BCniki_Lagrange%E2%80%99a|mnożników Lagrange'​a]] pozwalających ro rozwiązanie problemu dualnego.
 +W tej sytuacji w celu znalezienia rozwiązania analizujemy iloczyn skalarny współczynników w [[http://​pl.wikipedia.org/​wiki/​Macierz_Grama|macierzy Grama]].
 +
 +''​S209-13''​
 +Ilustrują metodę zwiększenia tolerancji co do ustalenia marginesów za pomocą specjalnych zmiennych "​luzujących"​ (//​slack//​),​ dzięĸi temu uzyskujemy zmienny margines błędu.
 +
 +Przydatna dokumentacja do SVM:
 +  * [[http://​www.support-vector-machines.org/​|Support Vector Machines]]
 +  * [[http://​www.tristanfletcher.co.uk/​SVM%20Explained.pdf|Support Vector Machines Explained]]
 +  * [[http://​research.microsoft.com/​en-us/​um/​people/​cburges/​papers/​svmtutorial.pdf|A Tutorial on Support Vector Machines for Pattern Recognition]]
 +  * [[http://​www.csie.ntu.edu.tw/​~cjlin/​papers/​guide/​guide.pdf|A Practical Guide to Support Vector Classifcation]]
 +
 +Wybrane narzędzia do SVM:
 +  * [[http://​www.support-vector-machines.org/​SVM_soft.html|lista narzędzi]]
 +  * [[http://​www.csie.ntu.edu.tw/​~cjlin/​libsvm/​|libsvm]]
 +
 +
 +
 +
 +==== Klasyfikatory liniowe a prawdopodobieństwo ====
 +//Obtaining probabilities from linear classifiers//​
 +
 +''​S215-8''​
 +poprzez rzutowanie przestrzeni przykładów do przestrzeni odpowiedniej funkcji gęstości prawdopodobieństwa,​ możemy uzyskać intepretację wyniku działania klasyfikatora liniowego w postaci prawdopodobieństwa,​ jest to tzw. kalibracja.
 +
 + 
 +==== Klasyfikacja nieliniowa - kernels ====
 +//Going beyond linearity with kernel methods//
 +
 +''​S220-3''​
 +Wprowadzenie specjalnego przekształcenia ([[wp>​Kernel_trick]]) pozwala na klasyfikację danych, które nie są liniowo separowalne w oryginalnej przestrzeni.
 +Przykład wizualizacji [[http://​www.youtube.com/​watch?​v=3liCbRZPrZA|Kernel visualization]].
 +Wybrane kernele to np. [[wp>​Polynomial_kernel]],​ [[wp>​Radial_basis_function_kernel]].
 +
 +
 +===== -#8 Modele odległościowe =====
 +//​Distance-based models//
 +
 +''​S225-8''​
 +uogólniona miara Minkowskiego pozwala na odwzorowanie rożnych metryk (def. na ''​S227''​).
 +
 +==== Definicje sąsiedztwa ====
 +//​Neighbours and exemplars//
 +
 +''​S230-3''​
 +W zależności od doboru metryki można różnie rozumieć sąsiedztwo.
 +
 +==== Metoda najbliższego sąsiada ====
 +//​Nearest-neighbour classification//​
 +
 +''​S235-6''​
 +Bazując na wcześniej zdefiniowanej tassalacji Voronoia,
 +buduje się [[wp>​K-Nearest Neighbor Algorithm]],​
 +w którym przyjmujemy //a priori// liczbę k sąsiadów branych pod uwagę do określenia granic klas.
 +
 +==== Klastryzacja odległościowa ====
 +//​Distance-based clustering//​
 +
 +''​S238-246''​
 +Algorytm K-means pozwala na klastryzację (grupowanie) danych.
 +Jest to klasyczny przykład uczenia nienadzorowanego.
 +
 +''​S249-252''​
 +K-menas jest wrażliwy na charakter danych wejściowych,​ mogą one wymagać preprocesingu,​ np. skalowania.
 +Wykresy //​silhouettes//​ pozwalają na porównywanie jakości grupowań.
 +
 +Przykład klasteryzacji przy pomocy narzędzia [[http://​www.carrot2.org|Carrot 2]].
 +
 +==== Klastryzacja hierarchiczna ====
 +//​Hierarchical clustering//​
 +
 +''​S254-7''​
 +Dendogramy są metodą wizualizacji klastryzaji hierarchicznej.
 +
  
pl/dydaktyka/ml/mlrep3.txt · ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0