Klasyfikacja LDA + walidacja

Podobne dokumenty
Elementy modelowania matematycznego

5. Analiza dyskryminacyjna: FLD, LDA, QDA

Agnieszka Nowak Brzezińska

Klasyfikatory: k-nn oraz naiwny Bayesa. Agnieszka Nowak Brzezińska Wykład IV


Agnieszka Nowak Brzezińska Wykład III

Testowanie modeli predykcyjnych

Agnieszka Nowak Brzezińska Wykład III

Algorytmy metaheurystyczne Wykład 11. Piotr Syga

KLASYFIKACJA. Słownik języka polskiego

Rozpoznawanie wzorców. Dr inż. Michał Bereta p. 144 / 10, Instytut Informatyki

Klasyfikator. ˆp(k x) = 1 K. I(ρ(x,x i ) ρ(x,x (K) ))I(y i =k),k =1,...,L,

Elementy statystyki wielowymiarowej

Eksploracja Danych. wykład 4. Sebastian Zając. 10 maja 2017 WMP.SNŚ UKSW. Sebastian Zając (WMP.SNŚ UKSW) Eksploracja Danych 10 maja / 18

Metody klasyfikacji danych - część 1 p.1/24

PODSTAWY STATYSTYCZNEJ ANALIZY DANYCH

Stan dotychczasowy. OCENA KLASYFIKACJI w diagnostyce. Metody 6/10/2013. Weryfikacja. Testowanie skuteczności metody uczenia Weryfikacja prosta

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

METODY INŻYNIERII WIEDZY

Mail: Pokój 214, II piętro

Hierarchiczna analiza skupień

Analiza danych. TEMATYKA PRZEDMIOTU

Metody systemowe i decyzyjne w informatyce

Metody Sztucznej Inteligencji II

Rozpoznawanie obrazów

Systemy uczące się Lab 4

WYKŁAD I: PROBLEM KLASYFIKACJI POD NADZOREM, LINIOWA ANALIZA DYSKRYMINACYJNA. Wydział Matematyki i Nauk Informacyjnych PW

Projekt Sieci neuronowe

Optymalizacja ciągła

Wstęp do sieci neuronowych, wykład 13-14, Walidacja jakości uczenia. Metody statystyczne.

Eksploracja danych OCENA KLASYFIKATORÓW. Wojciech Waloszek. Teresa Zawadzka.

SZTUCZNA INTELIGENCJA

Optymalizacja systemów

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

Wybór modelu i ocena jakości klasyfikatora

Prawdopodobieństwo czerwonych = = 0.33

Wprowadzenie do klasyfikacji

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

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

Stosowana Analiza Regresji

Wprowadzenie do uczenia maszynowego

ESTYMACJA BŁĘDU PREDYKCJI I JEJ ZASTOSOWANIA

Algorytmy, które estymują wprost rozkłady czy też mapowania z nazywamy algorytmami dyskryminacyjnymi.

Wprowadzenie. Metody bayesowskie Drzewa klasyfikacyjne i lasy losowe Sieci neuronowe SVM. Klasyfikacja. Wstęp

Wstęp. Regresja logistyczna. Spis treści. Hipoteza. powrót

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

Systemy pomiarowo-diagnostyczne. Metody uczenia maszynowego wykład I dr inż. 2015/2016

ALGORYTMY SZTUCZNEJ INTELIGENCJI

Klasyfikacja obiektów Drzewa decyzyjne (drzewa klasyfikacyjne)

Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.

Metody systemowe i decyzyjne w informatyce

IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ

Systemy uczące się wykład 2

PDF created with FinePrint pdffactory Pro trial version

weryfikacja hipotez dotyczących parametrów populacji (średnia, wariancja)

Metody systemowe i decyzyjne w informatyce

Testowanie hipotez statystycznych.

Uczenie się pojedynczego neuronu. Jeśli zastosowana zostanie funkcja bipolarna s y: y=-1 gdy z<0 y=1 gdy z>=0. Wówczas: W 1 x 1 + w 2 x 2 + = 0

Pattern Classification

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

Wstęp do sieci neuronowych, wykład 09, Walidacja jakości uczenia. Metody statystyczne.

Metody systemowe i decyzyjne w informatyce

Algorytmy klasteryzacji jako metoda dyskretyzacji w algorytmach eksploracji danych. Łukasz Przybyłek, Jakub Niwa Studenckie Koło Naukowe BRAINS

Podstawy sztucznej inteligencji

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

9. Praktyczna ocena jakości klasyfikacji

Algorytmy klasyfikacji

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

Szacowanie wartości hodowlanej. Zarządzanie populacjami

WYKŁAD 6. Reguły decyzyjne

SAS wybrane elementy. DATA MINING Część III. Seweryn Kowalski 2006

Metoda największej wiarygodności

Rozpoznawanie obrazów

Metody iteracyjne rozwiązywania układów równań liniowych (5.3) Normy wektorów i macierzy (5.3.1) Niech. x i. i =1

PODSTAWY STATYSTYCZNEJ ANALIZY DANYCH. Wykład 5 Kwadratowa analiza dyskryminacyjna QDA. Metody klasyfikacji oparte na rozkładach prawdopodobieństwa.

Metody numeryczne Wykład 4

3. Macierze i Układy Równań Liniowych

Python : podstawy nauki o danych / Alberto Boschetti, Luca Massaron. Gliwice, cop Spis treści

WYKŁAD 7. Testowanie jakości modeli klasyfikacyjnych metodyka i kryteria

Wstęp do sieci neuronowych, wykład 04. Skierowane sieci neuronowe. Algorytmy konstrukcyjne dla sieci skierowanych

Inteligentne systemy przeciw atakom sieciowym

UCZENIE MASZYNOWE I SZTUCZNA INTELIGENCJA Jako narzędzia wspomagania decyzji w zarządzaniu kapitałem ludzkim organizacji

TEORETYCZNE PODSTAWY INFORMATYKI

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Stanisław Cichocki Natalia Nehrebecka. Wykład 7

Szkolenie Analiza dyskryminacyjna

Podstawy Sztucznej Inteligencji (PSZT)

6. Zagadnienie parkowania ciężarówki.

Kombinacja jądrowych estymatorów gęstości w klasyfikacji - zastosowanie na sztucznym zbiorze danych

Systemy pomiarowo-diagnostyczne. Metody uczenia maszynowego wykład III 2016/2017

Przykład eksploracji danych o naturze statystycznej Próba 1 wartości zmiennej losowej odległość

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

Jakość uczenia i generalizacja

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

Systemy pomiarowo-diagnostyczne. Metody uczenia maszynowego wykład II 2017/2018

PODSTAWY STATYSTYCZNEGO MODELOWANIA DANYCH. Wykład 6 Drzewa klasyfikacyjne - wprowadzenie. Reguły podziału i reguły przycinania drzew.

Algorytm grupowania danych typu kwantyzacji wektorów

Zrównoleglona optymalizacja stochastyczna na dużych zbiorach danych

Rozpoznawanie obrazów

7. Maszyny wektorów podpierajacych SVMs

Transkrypt:

Klasyfikacja LDA + walidacja Dr hab. Izabela Rejer Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Plan wykładu 1. Klasyfikator 2. LDA 3. Klasyfikacja wieloklasowa 4. Walidacja

Klasyfikator (1) Formalnie klasyfikator jest funkcją, która przypisuje klasę do wektora cech. klasy - zadania mentalne, które ma wykonywać użytkownik wektor cech wartości cech opisujące zarejestrowany w danym momencie sygnał EEG. Sterowanie za pomocą wyobrażenia ruchów rąk: 2 klasy: ręka lewa/prawa, np. 6 cech: moc sygnału w paśmie alfa w kanale C3 i C4 w sekundzie 1, 2 oraz 3.

Klasyfikator (2) Klasyfikator może występować w formie: 1 reguły decyzyjnej, operującej albo na jednej, albo na wielu cechach, zestawu reguł decyzyjnych, modelu black-box, zestawu połączonych klasyfikatorów,... drzewa decyzyjne, tabele decyzyjne, regresja logistyczna, klasyfikator Bayesa, LDA, QDA, k-najbliższych sąsiadów, sieci neuronowe, SVM

Klasyfikator (3) Prawie każdy klasyfikator posiada parametry, których wartość należy ustalić przed rozpoczęciem użytkowania klasyfikatora. Parametry klasyfikatora można zdefiniować: manualnie na podstawie własnej wiedzy oraz wcześniejszych obserwacji podmiotu, automatycznie w procesie tzw. treningu klasyfikatora. Zdecydowana większość klasyfikatorów jest definiowana w procesie automatycznego strojenia ich parametrów.

Uczenie klasyfikatora (1) Najpierw należy wybrać model klasyfikatora, a następnie nastroić jego parametry. Parametry klasyfikatora są strojone na podstawie zbioru uczącego. Zbiór uczący powstaje w wyniku eksperymentu uczącego (przykłady, epoki) Każdy przykład (epoka) obejmuje wektor cech wyekstrahowanych z sygnału EEG oraz etykietę klasy.

Uczenie klasyfikatora (2) Uczenie klasyfikatora może być procesem jednoetapowym lub iteracyjnym zależy to od wybranego formalnego modelu klasyfikatora: klasyfikator LDA uczenie jednoetapowe, nieliniowa sieć neuronowa uczenie iteracyjne. Liczba powtórzeń algorytmu uczącego może być różna: klasyfikatory o małej liczbie parametrów i niewielkim stopniu nieliniowości - kilkadziesiąt powtórzeń, bardziej skomplikowane klasyfikatory miliony powtórzeń.

Klasyfikatory w analizie sygnału EEG W analizie sygnału EEG rzadko kiedy stosuje się klasyfikatory wysoce-nieliniowe o dużej liczbie parametrów. Klasyfikatory liniowe są bardzo skuteczne. Ewentualna poprawa działania po użyciu klasyfikatorów nieliniowych jest zbyt mała. LDA (Linear Discriminant Analysis) - liniowa analiza dyskryminacyjna.

Eksperyment z Graz Sterowanie interfejsem BCI za pomocą wyobrażonych ruchów lewej i prawej ręki: zgromadzono 140 próbek sygnału EEG, 70 próbek - klasa 1-sza - ruch ręki prawej, 70 próbek - klasa 2-ga - ruch ręki lewej. Załóżmy, że zbiór opisano za pomocą 2 cech pasmowych: cecha1 - moc sygnału w paśmie 8-13Hz mierzona w kanale C4 w 6-tej sekundzie eksperymentu, cecha 2 - moc sygnału w paśmie 10-11Hz mierzona w kanale C3 w 5-tej sekundzie eksperymentu.

LDA (1) Celem LDA jest znalezienie kierunku w przestrzeni cech rozdzielającego dane reprezentujące dwie różne klasy obiektów. Klasyfikator LDA podejmując decyzję o przynależności obiektu do klasy będzie badał, po które stronie hiperpłaszczyzny prostopadłej do wyznaczonego kierunku znajduje się obiekt. Kryterium optymalizacji: maksymalizacja wariancji międzyklasowej, minimalizacja wariancji wewnątrzklasowej.

LDA (2) Wariancja międzyklasowa będzie największa wtedy, kiedy odległość między średnimi wyznaczonymi dla obu klas będzie największa. wyznaczamy wektory średnich dla obu klas, szukamy takiego kierunku w przestrzeni cech, który zapewni największą odległość między rzutami średnich.

Zbiór punktów z dwóch klas

Kierunek dyskryminujący klasy

Kierunek nie dyskryminujący klas

LDA (3) Wariancja wewnątrzklasowa będzie minimalna, jeżeli rozproszenie obserwacji będzie jak najmniejsze. Szukamy takiego kierunku w przestrzeni cech, który maksymalizuje odległości między średnimi obu klas jednocześnie minimalizując wariancję obu klas. Szukamy więc kierunku a, który maksymalizuje wyrażenie: a T xa a T a Ca T x B

LDA (4) Rozwiązaniem wyrażenia jest wektor a: a C -1 xb x A gdzie C to wspólna macierz kowariancji łącząca macierze kowariancji wyznaczone dla obu klas: 1 C n C A A n BC B n n A B Przy czym kowariancja między dwoma zmiennymi jest liczona z wzoru: cov xy 1 n 1 n xi xi yi yi i 1 T

LDA (5) Klasyfikacja nowego punktu danych: należy zrzutować ten punkt na wyznaczony kierunek a i sprawdzić bliżej której średniej się on znajduje Reguła decyzyjna klasyfikatora: zaklasyfikuj x do klasy A jeżeli: a T x a T x A a T x a T x B a do klasy B w przeciwnym wypadku.

Cecha 2 Prosta separacyjna 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Cecha 1 a b s s 1 a y ax śr śr

Klasyfikacja wieloklasowa (1) Strategia "jeden przeciwko pozostałym" (one versus rest). stosujemy klasyfikację binarną na zmodyfikowanym zbiorze danych - klasa 1-sza zawiera przypadki z jednej klasy, a klasa 2-ga przypadki z pozostałych klas; liczba klasyfikatorów jest równa liczbie klas. Przy 4 klasach mamy: klasa A przeciwko klasie B+C+D klasa B przeciwko klasie A+C+D klasa C przeciwko klasie A+B+D klasa D przeciwko klasie A+B+C

Klasyfikacja wieloklasowa (2) Strategia "jeden przeciwko jednemu" (one versus one): każdy klasyfikator rozdziela 2 klasy; liczba klasyfikatorów jest równa liczbie możliwych par klas, czyli k(k-1)/2; wyniki poszczególnych klasyfikatorów są łączone w celu uzyskania ostatecznej klasy, do której należy sklasyfikować podany przypadek. Przy 4 klasach mamy: A-B; A-C; A-D; B-C; B-D; C-D.

Niebieskie trójkąty: klasa A (powyżej) klasa B (prawy górny róg) klasa C (prawy dolny róg)

Dokładność klasyfikacji Informacja o dokładności klasyfikacji jest potrzebna do porównania klasyfikatora z innymi klasyfikatorami zdefiniowanymi dla tego samego zbioru danych. Nawet jeżeli nie będziemy chcieli budować innych klasyfikatorów, to i musimy oszacować dokładność klasyfikatora po to, żeby wiedzieć czy jest ona: wystarczająca dla danego zastosowania oraz istotnie wyższa niż dokładność klasyfikacji czysto losowej, wynoszącej w przypadku 2 klas 50%.

Dopasowanie klasyfikatora do zbioru uczącego Dla wszystkich przykładów ze zbioru uczącego należy: podstawić na wejścia klasyfikatora przykład uczący odczytać z wyjścia klasyfikatora klasę, którą obliczył on dla tego przykładu, porównać klasę wyznaczoną przez klasyfikator z klasą rzeczywistą zawartą w zbiorze danych. liczba poprawnych odpowiedzi * 100% liczba wszystkich przykładów W przypadku problemu liniowo separowalnego dopasowanie klasyfikatora LDA będzie wynosiło 100%.

Dokładność klasyfikatora (1) Czy jeżeli dopasowanie klasyfikatora do danych uczących wynosi 100%, to jego dokładność również wynosi 100%? Absolutnie nie! Dokładność klasyfikatora wyznaczamy po to, żeby wiedzieć jak dobrze będzie on działał dla danych, które nie były znane w trakcie jego uczenia. Klasyfikator tworzymy po to, żeby móc wykorzystywać go dla nowo napływających danych.

Dokładność klasyfikatora (2) Dokładność nie jest równoważna dopasowaniu klasyfikatora do danych ze zbioru uczącego. Można stworzyć klasyfikator w 100% dopasowany do zbioru danych uczących, który w praktyce będzie pracował na poziomie klasyfikatora losowego. Dotyczy to zwłaszcza klasyfikatorów nieliniowych, w których poprzez zastosowanie odpowiednio wysokiego stopnia nieliniowości można tak powyginać powierzchnię odpowiedzi klasyfikatora, żeby idealnie dopasować go do każdego zbioru.

Szacowanie dokładności klasyfikatora Najważniejsze założenie - nie można szacować dokładności klasyfikatora na zbiorze uczącym. Aby oszacować dokładność klasyfikatora musimy więc dysponować drugim zbiorem danych. Przyjęta metoda szacowania dokładności klasyfikatora zależy przede wszystkim od liczności posiadanego zbioru danych: walidacja prosta, k-krotną walidacja krzyżowa. walidacja krzyżowa typu leave-one-out. bootstrapping, czyli wielokrotne repróbkowanie.

Walidacja prosta Dzielimy posiadany zbiór przykładów na dwa niezależne podzbiory: podzbiór uczący - służy do zdefiniowania parametrów klasyfikatora podzbiór testowy - służy do oszacowania dokładności klasyfikatora. Dokładność klasyfikatora jest szacowana standardowo: przykłady ze zbioru testowego są wprowadzane na wejścia klasyfikatora, który wyznacza właściwe im klasy. klasy są porównywane z klasami rzeczywistymi, obliczany jest stosunek poprawnie rozpoznanych klas do wszystkich przykładów testowych.

K-krotna walidacja krzyżowa Początkowy zbiór przykładów jest losowo dzielony na k możliwie równych, niezależnych podzbiorów. Tworzonych jest k klasyfikatorów, każdy z nich jest uczony na innych k-1 podzbiorach I testowany na k-tym podzbiorze. Tworzony jest klasyfikator ostateczny (w oparciu o cały dostępny zbiór przykładów). Dokładność klasyfikatora ostatecznego np. średnia dokładność wszystkich klasyfikatorów cząstkowych.

10-krotna walidacja krzyżowa - przykład Zbiór 140 przykładów dzielimy na 10 podzbiorów, po 14 przykładów każdy i tworzymy 10 klasyfikatorów: 1-szy klasyfikator uczymy na 126 przykładach z podzbiorów: 1-9; testujemy na 14 przykładach z podzbioru 10; 2-gi klasyfikator uczymy na podzbiorach: 1-8 i 10; testujemy na podzbiorze 9; 10-ty klasyfikator uczymy na podzbiorach: 2-10; testujemy na podzbiorze 1. Wyznaczamy klasyfikator ostateczny na zbiorze 140 danych. Szacujemy jego dokładność - uśredniając dokładność 10-ciu klasyfikatorów cząstkowych.

Wiele klasyfikatorów - walidacja prosta Zadanie: 1000 przykładów, 10 cech, 10 klasyfikatorów z jedną cechą Treningowy Walidacyjny Testowy 600 200 200 1. Budujemy 10 klasyfikatorów (zbiór treningowy) 2. Szacujemy ich dokładność (zbiór walidacyjny) 3. Wybieramy klasyfikator o najwyższej dokładności walidacyjnej 4. Szacujemy jego dokładność (zbiór testowy)

Wiele klasyfikatorów - walidacja krzyżowa Zadanie: 1000 przykładów, 10 cech, 10 klasyfikatorów z jedną cechą 8 treningowych 8 walidacyjnych 1 testowy 70 10 20 1. Budujemy 10 klasyfikatorów (każdy trenujemy na 8 zb. treningowych, walidujemy na 8 zb. walidacyjnych). 2. Wyznaczamy średnią dokładność każdego z 10 klasyfikatorów (z 8 zb. walidacyjnych) 3. Wybieramy klasyfikator o najwyższej średniej dokładności 4. Szacujemy jego dokładność (zbiór testowy)

Dziękuję za uwagę