METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING

Podobne dokumenty
UCZENIE MASZYNOWE III - SVM. mgr inż. Adam Kupryjanow

Adrian Horzyk

METODY INŻYNIERII WIEDZY

IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ

METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING

7. Maszyny wektorów podpierajacych SVMs

SZTUCZNA INTELIGENCJA

METODY INŻYNIERII WIEDZY

METODY INŻYNIERII WIEDZY

wiedzy Sieci neuronowe

SVM: Maszyny Wektorów Podpieraja cych

METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

TRANSFORMACJE I JAKOŚĆ DANYCH

W ostatnim wykładzie doszliśmy do tego, że problem znalezienia klasyfikatora optymalnego pod względem marginesów można wyrazić w następujący sposób:

Popularne klasyfikatory w pakietach komputerowych

Uczenie sieci typu MLP

Uczenie sieci radialnych (RBF)

INTERPOLACJA I APROKSYMACJA FUNKCJI

Programowanie liniowe

Wstęp do przetwarzania języka naturalnego. Wykład 11 Maszyna Wektorów Nośnych

Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta

Ontogeniczne sieci neuronowe. O sieciach zmieniających swoją strukturę

Opis kształtu w przestrzeni 2D. Mirosław Głowacki Wydział Inżynierii Metali i Informatyki Przemysłowej AGH

Optymalizacja ciągła

4.1. Wprowadzenie Podstawowe definicje Algorytm określania wartości parametrów w regresji logistycznej...74

Sztuczne Sieci Neuronowe

5. Analiza dyskryminacyjna: FLD, LDA, QDA

WYKŁAD: Perceptron Rosenblatta. Maszyny wektorów podpierających (SVM). Empiryczne reguły bayesowskie. Zaawansowane Metody Uczenia Maszynowego

PROGNOZOWANIE OSIADAŃ POWIERZCHNI TERENU PRZY UŻYCIU SIECI NEURONOWYCH**

( n) Łańcuchy Markowa X 0, X 1,...

Data Mining Wykład 6. Naiwny klasyfikator Bayes a Maszyna wektorów nośnych (SVM) Naiwny klasyfikator Bayesa.

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

8. Neuron z ciągłą funkcją aktywacji.

Obóz Naukowy Olimpiady Matematycznej Gimnazjalistów

METODY INŻYNIERII WIEDZY

SIECI RBF (RADIAL BASIS FUNCTIONS)

Co to jest grupowanie

1. Historia 2. Podstawy neurobiologii 3. Definicje i inne kłamstwa 4. Sztuczny neuron i zasady działania SSN. Agenda

Elementy Modelowania Matematycznego

Zastosowania sieci neuronowych

WSTĘP I TAKSONOMIA METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING. Adrian Horzyk. Akademia Górniczo-Hutnicza

PROGRAMOWANIE KWADRATOWE

Rysunek 1 Przykładowy graf stanów procesu z dyskretnymi położeniami.

Elementy Modelowania Matematycznego Wykład 7 Programowanie nieliniowe i całkowitoliczbowe

1. Model procesu krzepnięcia odlewu w formie metalowej. Przyjęty model badanego procesu wymiany ciepła składa się z następujących założeń

Laboratorium Metod i Algorytmów Sterowania Cyfrowego

BIOCYBERNETYKA SIECI NEURONOWE. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.

Prof. Stanisław Jankowski

INTERPRETACJA WYNIKÓW BADANIA WSPÓŁCZYNNIKA PARCIA BOCZNEGO W GRUNTACH METODĄ OPARTĄ NA POMIARZE MOMENTÓW OD SIŁ TARCIA

OPTYMALNE PROJEKTOWANIE ELEMENTÓW KONSTRUKCYJNYCH WYKONANYCH Z KOMPOZYTÓW WŁÓKNISTYCH

Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.

METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING. EKSPLORACJA DANYCH Ćwiczenia. Adrian Horzyk. Akademia Górniczo-Hutnicza

SZTUCZNA INTELIGENCJA

ALGORYTMY OPTYMALIZACJI wyklad 3.nb 1. Wykład 3. Sformułujemy teraz warunki konieczne dla istnienia rozwiązań zagadnienia optymalizacyjnego:

Metody eksploracji danych 2. Metody regresji. Piotr Szwed Katedra Informatyki Stosowanej AGH 2017

Sztuczne sieci neuronowe Ćwiczenia. Piotr Fulmański, Marta Grzanek

Lekcja 5: Sieć Kohonena i sieć ART

PROGRAMOWANIE NIELINIOWE

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe


Optymalizacja systemów

Projekt Sieci neuronowe

TOZ -Techniki optymalizacji w zarządzaniu

Systemy Inteligentnego Przetwarzania wykład 7: Sieci RBF

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka Adaline.

6. Perceptron Rosenblatta

synaptycznych wszystko to waży 1.5 kg i zajmuje objętość około 1.5 litra. A zużywa mniej energii niż lampka nocna.

Optymalizacja ciągła

Programowanie liniowe

Przykładowe funkcje przejścia używane przy budowie sztucznych neuronów

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania. Technologie informatyczne

Kody Huffmana oraz entropia przestrzeni produktowej. Zuzanna Kalicińska. 1 maja 2004

n := {n} n. Istnienie liczb naturalnych gwarantują: Aksjomat zbioru pustego, Aksjomat pary nieuporządkowanej oraz Aksjomat sumy.

Podstawy sztucznej inteligencji

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 335

METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING

Widzenie komputerowe

Metody klasyfikacji i rozpoznawania wzorców. Najważniejsze rodzaje klasyfikatorów

Programowanie matematyczne

Metody Sztucznej Inteligencji II

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 311

Automatyczna predykcja. Materiały/konsultacje. Co to jest uczenie maszynowe? Przykład 6/10/2013. Google Prediction API, maj 2010

Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane.

Metody doświadczalne w hydraulice Ćwiczenia laboratoryjne. 1. Badanie przelewu o ostrej krawędzi

Elementy inteligencji obliczeniowej

KONCEPCJA WYKORZYSTANIA SZTUCZNYCH SIECI NEURONOWYCH W DIAGNOSTYCE PRZEKŁADNI ZĘBATYCH

Obliczenia iteracyjne

Podstawy Sztucznej Inteligencji (PSZT)

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

PRÓBA ZASTOSOWANIA SIECI NEURONOWYCH DO PROGNOZOWANIA OSIADAŃ POWIERZCHNI TERENU POWSTAŁYCH NA SKUTEK EKSPLOATACJI GÓRNICZEJ**

SIEĆ NEURONOWA DO OCENY KOŃCOWEJ PRZEDSIĘWZIĘCIA (PROJEKTU)

KLASYFIKACJA TEKSTUR ZA POMOCĄ SVM MASZYNY WEKTORÓW WSPIERAJĄCYCH

DEKOMPOZYCJA HIERARCHICZNEJ STRUKTURY SZTUCZNEJ SIECI NEURONOWEJ I ALGORYTM KOORDYNACJI

METODY INTELIGENCJI OBLICZENIOWEJ wykład 5

Optymalizacja ciągła

Sieci neuronowe w Statistica

Sieć przesyłająca żetony CP (counter propagation)

Transkrypt:

METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING Maszyna Wektorów Nośnych Suort Vector Machine SVM Adrian Horzyk Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i Inżynierii Biomedycznej, Laboratorium Biocybernetyki 30-059 Kraków, al. Mickiewicza 30, aw. C3/205 horzyk@agh.edu.l, Google: Adrian Horzyk

IDEA I NARODZINY SVM Prof. V. Vanik w 1998 r. stworzył nowe odejście do kształtowania struktury sieci neuronowej oraz definiowania roblemu uczenia róbując wyeliminować znane wady sieci neuronowych tyu MLP i RBF stosujące minimalizację nieliniowych funkcji błędu, tj.: Minimalizowana funkcja jest zwykle wielomodalna względem otymalizowanych arametrów i osiada wiele minimów lokalnych, w których roces uczenia może utknąć w zależności od unktu startowego, których zwykle istnieje nieskończona ilość. Algorytm uczący zwykle nie jest w stanie skutecznie kontrolować złożoności struktury sieci neuronowej, co w istotny sosób wływa na zdolności uogólniające sieci. Istotą zmiany jest rzedstawienie rocesu uczenia jako rocesu dobierania wag, w którym maksymalizowany jest margines searacji oddzielający skrajne (najbliższe) unkty w rzestrzeni danych definiujących różne klasy. Bierzemy więc od uwagę tylko te najtrudniej searowalne unkty rzestrzeni rzy budowie modelu, które określają tzw. wektory nośne (wsierające). Sieci SVM tworzą secyficzną dwuwarstwową strukturę neuroodobną stosującą różne rodzaje funkcji aktywacji (liniowe, wielomianowe, radialne, sigmoidalne) oraz secyficzny sosób uczenia oarty na rogramowaniu kwadratowym, które charakteryzuje się istnieniem tylko jednego minimum globalnego. Sieci SVM dedykowane są głównie do zagadnień klasyfikacji, w których jedną klasę searujemy możliwie dużym marginesem od ozostałych klas.

DYSKRYMINACJA i KLASYFIKACJA knn obszary Voronoi Decision Tree MLP RBF

Najszersza granica dyskryminacji Metoda SVM ma na celu wyznaczyć najszerszą granicę dyskryminacji sośród możliwych, których zwykle istnieje nieskończona ilość:

Jak dyskryminować i searować najleiej? Próbując osiągnąć jak najleszą dyskryminację wzorców oszczególnych klas warto zmaksymalizować margines oddzielający wzorce oszczególnych klas. Ponadto mając do czynienia z wieloma danymi, można ograniczyć analizę tylko do tych najtrudniejszych unktów rzestrzeni, czyli wzorców różnych klas, które leżą najbliżej, gdyż je najtrudniej zdyskryminować (odsearować). Model uwzględniający najtrudniejsze wzorce owinien charakteryzować się dobrą jakością oraz rostotą rerezentacji. Sróbujemy więc wyznaczyć otymalną hierłaszczyznę dyskryminującą wzorce jednej klasy (kwadratów) od ozostałych (tutaj kółeczek). SVM discrimination Suort Vectors

Maszyna Wektorów Nośnych Załóżmy, że mamy zbiór ar uczących: x i, d i dla i = 1, 2,, y gdzie x i wektor danych wejściowych d i 1; +1 rerezentuje dyskryminowane klasy: d i = +1oznacza klasę dyskryminowaną, zaś d i = 1oznacza ozostałe klasy. Przy założeniu liniowej searowalności obu klas możliwe jest określenie równania hierłaszczyzny searującej te wzorce: y x = w T x + b = 0 gdzie w wektor wag, a x wektor danych wejściowych, b olaryzacja Możemy więc zdefiniować równania decyzyjne: Jeżeli w T x + b 0 wtedy d i = +1 Jeżeli w T x + b 0 wtedy d i = 1 Suort Vectors Co możemy zaisać w ostaci nierówności: d i w T x + b 1, której sełnienie rzez ary unktów x i, d i definiuje wektory nośne (suort vectors), które decydują o ołożeniu hierłaszczyzny i szerokości marginesu searacji. Potrzebne jest więc wyznaczenie b oraz w, żeby określić decyzję.

Przekroczenie granic searacji Czasami jednak wystęuje konieczność zmniejszenia marginesu searacji dla roblemów niecałkowicie searowalnych liniowo oraz ewnych unktów x i, d i leżących wewnątrz strefy marginesu searacji, co możemy zaisać za omocą nierówności: d i w T x i + b 1 δ i gdzie δ i 0 i zmniejsza margines searacji, rzy czym jeśli: 0 δ i < 1 wtedy x i, d i leży o właściwej stronie hierłaszczyzny, więc decyzja o rzynależności do klasy będzie orawna, δ i = 1 wtedy x i, d i leży na hierłaszczyźnie, więc decyzja o rzynależności do klasy będzie nieokreślona, 1 < δ i wtedy x i, d i leży o niewłaściwej stronie hierłaszczyzny, więc decyzja o rzynależności do klasy będzie błędna. Określając granicę decyzyjną należy więc możliwie zminimalizować wartość δ i.

Szerokość marginesu searacji Szerokość marginesu searacji możemy wyznaczyć jako iloczyn kartezjański wektora wag oraz różnicy odległości dwóch wektorów nośnych należących do rzeciwnych klas: ρ = x + x w w = 2 w = 2 r x SV gdyż odległość wektorów nośnych od hierłaszczyzny określona jest nastęująco: Suort Vectors 1 dla y x r x SV = y x SV = w SV = 1 w 1 dla y x w SV = 1 Chcąc więc zmaksymalizować margines searacji omiędzy wektorami nośnymi różnych klas ρ = 2 trzeba zminimalizować w, co jest równoważne w minimalizacji wyrażenia 1 w 2 rzy ewnych ograniczeniach liniowych 2 wynikających ze zdefiniowanej nierówności decyzyjnej. W takich rzyadkach stosujemy mnożniki Lagrange a i minimalizujemy funkcję Lagrange a. y

Minimalizacja funkcji Lagrange a Możemy więc teraz określić funkcję Lagrange a dla roblemu maksymalizacji marginesu searacji: min w 1 2 w 2 + θ rzy zdefiniowanych ograniczeniach: d i w T x i + b 1 δ i δ i 0 gdzie θ to waga, z jaką traktowane są błędy testowania w stosunku do marginesu searacji, decydującą o złożoności sieci neuronowej, dobieraną rzez użytkownika w sosób ekserymentalny, n. metodą walidacji krzyżowej. Otrzymujemy więc nastęującą funkcję Lagrange a: L w, b, α, δ, μ = 1 2 wt w + θ δ i δ i α i d i w T x i + b 1 δ i μ i δ i gdzie α i jest wektorem mnożników Lagrange a o wartościach nieujemnych odowiadającym oszczególnym ograniczeniom funkcyjnym, a μ i ograniczeniom nierównościowym nakładanym na zmienne δ i. Rozwiązanie minimalizacji funkcji Lagrange a olega na określeniu unktu siodłowego, czyli wyznaczenia ochodnych cząstkowych względem mnożników.

Minimalizacja funkcji Lagrange a Warunki otymalnego rozwiązania wyznaczone są zależnościami: L w, b, α, δ, μ = 0 w = w L w, b, α, δ, μ = 0 b α i d i x i α i d i = 0 L w, b, α, δ, μ = 0 μ w i = θ α i które odstawimy teraz do funkcji Lagrange a: L w, b, α, δ, μ = 1 2 wt w + θ δ i α i d i w T x i + b 1 δ i μ i δ i = 1 α 2 i d i x i = 1 α 2 i d i x i = 1 2 α i d i x i j=1 j=1 α j d j x j + θ δ i α i d i α j d j x j x i + b 1 δ i μ i δ i j=1 α j d j x j + θ δ i α i d i x i α j d j x j + b α i d i + α i 1 δ i θ α i δ i α j d j x j + θ j=1 δ i + α i δ i = α i 1 α 2 i α j d i d j x i x j j=1 α i d i x i j=1 j=1 α j d j x j + b α i d i + α i α i δ i θ δ i

Problem dualny W unkcie siodłowym iloraz mnożnika Lagrange a d SV i odowiedniego ograniczenia związanego δ SV z wektorem nośnym x SV jest równy zeru (d SV δ SV = 0), gdyż δ SV =0, więc zależność: d i w T x i + b 1 δ i w unkcie wektora nośnego srowadza się do: w T x i + b = ±1 co ozwala wyznaczyć wartość b : b = ±1 w T x i Otrzymaliśmy więc roblem dualny max Q α = α i 1 α α 2 i α j d i d j x i x j j=1 rzy ograniczeniach dla i = 1, 2,, zdefiniowanych nastęująco: 0 α i θ α i d i = 0 Rozwiązanie roblemu dualnego ozwala znaleźć oszukiwaną hierłaszczyznę: y x = α i d i x i T x j + b

Wnioski Zmienna doełniająca δ i ani mnożniki Lagrange a nią związane nie ojawiają się w sformułowaniu roblemu dualnego. Mnożniki muszą sełniać jedynie odstawowy warunek mówiący, iż iloczyn mnożników i wartości funkcji ograniczenia dla każdej ary danych uczących jest równy zeru. Jeśli więc ograniczenie sełnione jest z nadmiarem dla wektorów nienośnych, wtedy mnożniki te muszą być równe zeru. Niezerowe wartości mnożników wystęują zaś dla wektorów nośnych. Niezerowe wartości mnożników określają wektory nośne, których ilość oznaczymy N SV, a więc równanie sieci liniowej SVM o wagach otymalnych wyznacza hierłaszczyznę zależne jest tylko od wektorów nośnych: N SV y x = α i d i x T i x j + b Większość roblemów klasyfikacji nie osiada jednak właściwości liniowej searowalności. Potrzebne jest więc nieliniowe rzutowanie danych oryginalnych w inną rzestrzeń funkcyjną, gdzie wzorce staną się searowalne liniowo i będzie można zastosować hierłaszczyznę semarującą SVM. Warunkiem jest zastosowanie transformacji nieliniowej o odowiednio wysokim wymiarze K rzestrzeni cech K N.

Nieliniowa sieć SVM Dla zadań niesearowalnych liniowo rzutujemy każdy wzorzec z jego N wymiarowej rzestrzeni cech do K wymiarowej rzestrzeni cech φ j x, j = 1, 2,, K. W efekcie tego nieliniowego rzekształcenia równanie hierłaszczyzny określone będzie wzorem: y x = w T φ x + b = K j=1 w i φ j x + b = 0 gdzie w i oznaczają wagi rowadzące od neuronu o nieliniowej funkcji aktywacji φ j na wektorze danych wejściowych x do wyjściowego neuronu liniowego Otrzymujemy więc dwuwarstwową strukturę sieci neuronowej zawierającą jedną warstwę ukrytą: x 1 φ 1 w 1 + y x N φ K w K

Nieliniowa sieć SVM Rozwiązanie roblemu ierwotnego uzyskujemy więc orzez zastąienie zmiennej x i rzez φ i x. Otrzymujemy więc: max Q α = α i 1 α α 2 i α j d i d j K x i, x j j=1 gdzie K nazywamy funkcją jądra (kernel function), zdefiniowaną nastęująco: K x i, x j = φ T x i φ x j Rozwiązanie roblemu srowadza się do wyznaczenia wartości wag sieci: w = α i d i φ x i b = ±1 w T φ x i Otrzymując ostatecznie sygnał wyjściowy dla nieliniowej sieci SVN w ostaci: N SV y x = w T φ x + b = α i d i K x i, x + b = 0 Na kandydatów na funkcje jądra K możemy wybrać funkcje sełniające warunek twierdzenia Mercera, n. funkcje gaussowskie, wielomianowe, sklejane, a nawet sigmoidalne rzy ewnych ograniczeniach.

Nieliniowe funkcje jądra sieci SVM Do najczęściej stosowanych funkcji jądra należą: Funkcje liniowe: K x i, x = x T x i + γ Funkcje wielomianowe: K x i, x = x T x i + γ Funkcje gaussowskie: K x i, x = ex γ x x i 2 Funkcje sigmoidalne: K x i, x = tgh βx T x i + γ Gdzie β, γ to stałe wsółczynniki liczbowe, a to stoień wielomianu. Sieć SVM o radialnych funkcjach bazowych jest bardzo odobna do sieci radialnej RBF, aczkolwiek sosób jej tworzenia i wyznaczania wag różni się. Podobnie stosując funkcje sigmoidalne otrzymujemy dwuwarstwową sieć MLP. Chcąc zastosować sieci SVM do większej ilości klas niż dwie trzeba zbudować kilka sieci SVM, które dyskryminują wzorce każdej z klas od ozostałych lub omiędzy arą każdych dwóch klas, a nastęnie wyniki są sumowane.

Dążenie do orawności SVM Stosuje się często wsółczynnik kary za niesełnienie któregoś z ograniczeń, co wymusza dążenie sieci do otymalności dla rzyjętych stałych. Z warunków otymalności Kuhna-Tuckera roblemu otymalizacyjnego sformułowanego dla SVM wynikają nastęujące zależności: α i d i w T φ x i + b 1 δ i = 0 0 α i θ μ i δ i = 0 α i + μ i = θ δ i 0 W zależności od wyznaczonych wsółczynników Lagrange a mamy więc do czynienia z trzema rzyadkami: α i = 0 co oznacza, że jeśli α i + μ i = θ, to μ i = θ, a więc z zależności μ i δ i = 0 wynika iż δ i = 0, stąd ara ucząca x i, d i sełnia ograniczenie z nadmiarem, a więc bez zmniejszania szerokości marginesu searacji 0 < α i < θ co oznacza, iż μ i = θ α i, a więc również δ i = 0, stąd ara ucząca x i, d i definiuje wektor nośny, który jest ołożony dokładnie na marginesie searacji. α i = θ oznacza, iż μ i = θ α i = 0, a więc δ i 0, co oznacza, iż wzorzec uczący jest wewnątrz marginesu searacji owodując zwężenie marginesu searacji albo nawet o niewłaściwej stronie, jeśli δ i > 1.

ALGORYTMY ROZWIĄZANIA ZADANIA DUALNEGO dla dużych zbiorów danych Niezależnie od zastosowanego jądra i rodzaju zadania główny roblem obliczeniowy w sieciach SVM srowadza się do rozwiązania zadania rogramowania kwadratowego z ograniczeniami liniowymi. Problemem staje się duża ilość danych uczących, co związane jest z nieraz ogromną ilością otymalizowanych zmiennych tutaj mnożników Lagrange a. Pojawiają się roblemy z amięcią i złożonością obliczeniową, co eliminuje możliwość zastosowania klasycznych metod rogramowania kwadratowego, n. MINOS, OSL, LOQO czy Matlab. Stosuje się dekomozycję zbioru uczącego na szereg odzbiorów oraz strategię aktywnych ograniczeń wynikających z równości, zaniedbując te nieaktywne ze znakiem silniej nierówności. Dzięki temu w kolejnych iteracjach nastęuje rzemieszczanie części wzorców ze zbioru ograniczeń aktywnych do nieaktywnych. Wykorzystuje się również różne wersje algorytmu rogramowania sekwencyjnego SMO lub BSVM Platta oraz subotymalną metodę SVM Light Joachimsa.

LITERATURA I BIBLIOGRAFIA Stanisław Osowski, Metody i narzędzia eksloracji danych, BTC, Legionowo, 2013. T. Joachims, Making large scale SVM learning ractical, in Advances in kernel methods suort vector learning, B. Scholkof, C. Burges, A. Smola eds., MIT Press, 41-56, Cambridge 1998. Lin C.J., Chang C.C, LIBSVM: a library for suort vector machines: htt://www.csie.ntu.edu.tw/cjlin/libsvm Oen MIT Lectures about SVM : htts://www.youtube.com/watch?v=_pwhiwxhk8o Caltech Lectures about SVM: htts://www.youtube.com/watch?v=ehserlpjwuu