METODY INŻYNIERII WIEDZY

Podobne dokumenty
METODY INŻYNIERII WIEDZY

METODY INŻYNIERII WIEDZY

Adrian Horzyk

METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING

METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING

SZTUCZNA INTELIGENCJA

IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ

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

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

BAZY DANYCH NORMALIZACJA BAZ DANYCH. Microsoft Access. Adrian Horzyk. Akademia Górniczo-Hutnicza

TRANSFORMACJE I JAKOŚĆ DANYCH

Testowanie modeli predykcyjnych

BAZY DANYCH NORMALIZACJA BAZ DANYCH. Microsoft Access. Adrian Horzyk. Akademia Górniczo-Hutnicza

Elementy modelowania matematycznego

BAZY DANYCH. Microsoft Access NAWIGACJA, MENU I PARAMETRY WYSZUKIWANIA. Adrian Horzyk. Akademia Górniczo-Hutnicza

Asocjacyjna reprezentacja danych i wnioskowanie

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

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

ALGORYTM RANDOM FOREST

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

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

Agnieszka Nowak Brzezińska Wykład III

BAZY DANYCH MAKRA I PRZYCISKI. Microsoft Access. Adrian Horzyk. Akademia Górniczo-Hutnicza

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

Klasyfikacja LDA + walidacja

WIEDZA METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING. Adrian Horzyk. Akademia Górniczo-Hutnicza

Agnieszka Nowak Brzezińska Wykład III

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

PODSTAWY INFORMATYKI wykład 5.

Agnieszka Nowak Brzezińska

PODSTAWY INFORMATYKI wykład 10.

Metody Inżynierii Wiedzy

Naiwny klasyfikator Bayesa brał pod uwagę jedynie najbliższe otoczenie. Lecz czym jest otoczenie? Jak je zdefiniować?


Rozpoznawanie obrazów

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

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

Metody systemowe i decyzyjne w informatyce

SZTUCZNA INTELIGENCJA

PROLOG WSTĘP DO INFORMATYKI. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.

Klasyfikacja i regresja Wstęp do środowiska Weka

Prawdopodobieństwo czerwonych = = 0.33

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

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

Jakość uczenia i generalizacja

WSTĘP DO INFORMATYKI. Struktury liniowe

9. Praktyczna ocena jakości klasyfikacji

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

Metody oceny podobieństwa

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

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I

Wprowadzenie do klasyfikacji

METODY INŻYNIERII WIEDZY ASOCJACYJNA REPREZENTACJA POWIĄZANYCH TABEL I WNIOSKOWANIE IGOR CZAJKOWSKI

Metody systemowe i decyzyjne w informatyce

Rozpoznawanie obrazów

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

Automatyczne wyodrębnianie reguł

Hierarchiczna analiza skupień

BAZY DANYCH. NIERELACYJNE BAZY DANYCH NoSQL I ASOCJACYJNE STRUKTURY DANYCH. Adrian Horzyk. Akademia Górniczo-Hutnicza

BAZY DANYCH. Microsoft Access. Adrian Horzyk OPTYMALIZACJA BAZY DANYCH I TWORZENIE INDEKSÓW. Akademia Górniczo-Hutnicza

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

Podstawy programowania. Wykład: 8. Wskaźniki. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

A Zadanie

Matlab podstawy + testowanie dokładności modeli inteligencji obliczeniowej

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

Optymalizacja ciągła

Sztuczna inteligencja : Algorytm KNN

8. Drzewa decyzyjne, bagging, boosting i lasy losowe

KLASYFIKACJA. Słownik języka polskiego

Optymalizacja systemów

Systemy uczące się Lab 4

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

Struktury Danych i Złożoność Obliczeniowa

Lekcja 5: Sieć Kohonena i sieć ART

Drzewa decyzyjne i lasy losowe

BAZY DANYCH. Microsoft Access. Adrian Horzyk OPTYMALIZACJA BAZY DANYCH I TWORZENIE INDEKSÓW. Akademia Górniczo-Hutnicza

Metody sztucznej inteligencji Zadanie 3: (1) klasteryzacja samoorganizująca się mapa Kohonena, (2) aproksymacja sieć RBF.

Adrian Horzyk

Pattern Classification

Sortowanie. Bartman Jacek Algorytmy i struktury

Metody systemowe i decyzyjne w informatyce

Lab 9 Podstawy Programowania

Identyfikacja istotnych atrybutów za pomocą Baysowskich miar konfirmacji

SYSTEMY AUTOMATYKI I STEROWANIA W SŁUŻBIE EFEKTYWNOŚCI ENERGETYCZNEJ BUDYNKÓW

Algorytm grupowania danych typu kwantyzacji wektorów

Algorytmy metaheurystyczne Wykład 11. Piotr Syga

Konkurs z przedmiotu eksploracja i analiza danych: problem regresji i klasyfikacji

INFORMATYKA POZIOM ROZSZERZONY

INFORMATYKA POZIOM ROZSZERZONY

Ekonometria, lista zadań nr 6 Zadanie 5 H X 1, X 2, X 3

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

Metody selekcji cech

Rozpoznawanie obrazów

Temat: Sztuczne Sieci Neuronowe. Instrukcja do ćwiczeń przedmiotu INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE

Sztuczna inteligencja i inżynieria wiedzy. laboratorium

Metody Sztucznej Inteligencji II

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

Kompresja danych Streszczenie Studia Dzienne Wykład 10,

Web frameworks do budowy aplikacji zgodnych z J2EE

Transkrypt:

METODY INŻYNIERII WIEDZY WALIDACJA KRZYŻOWA dla ZAAWANSOWANEGO KLASYFIKATORA KNN ĆWICZENIA 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, paw. C3/205 horzyk@agh.edu.pl, Google: Adrian Horzyk

WALIDACJA KRZYŻOWA k-fold CROSS-VALIDATION Umożliwia wykorzystanie całego zbioru danych zarówno do uczenia, jak również do walidacji modelu. Służy do określenia jakości modelu już w trakcie jego adaptacji / uczenia, w celu wyeliminowania problemu przeuczenia się (overfitting). Polega na podziale zbioru uczącego na k równolicznych podzbiorów, z których k-1 jest wykorzystanych do uczenia / adaptacji modelu, a 1 podzbiór służy do walidacji modelu.

WALIDACJA KRZYŻOWA DLA KLASYFIKATORA KNN Zbuduj zaawansowany klasyfikator knn i dobierz dla niego najlepsze k z wykorzystaniem walidacji krzyżowej z doborem losowym lub sekwencyjnym wzorców walidacyjnych proporcjonalnie wybranych dla każdej klasy. Zaawansowany klasyfikator knn wykorzystuje głosowanie poprzez ważone odległości od klasyfikowanego punktu. Im dalej głosujący się znajduje tym jego głos ma mniejsze znaczenie. Ponadto zaawansowany klasyfikator stosuje normalizację względem ilości reprezentantów danej klasy w zbiorze uczącym dla uniknięcia faworyzowania klas bardziej licznych. Dodatkowo dokonujemy eksperymentowania z doborem ilości podziałów zbioru dla walidacji krzyżowej od 3 do 10.

PRZYKŁAD 10-krotnej walidacji krzyżowej

PARAMETRY METODY WALIDACJI KRZYŻOWEJ Dobór parametru k zależny jest od wielkości zbioru danych i ich rodzaju. Dla dużych zbiorów danych stosuje się k=3 w celu zmniejszenia ilości adaptacji modelu. Dla mniejszych zbiorów danych zwykle stosuje się większe wartości k, żeby nie uszczuplać zbioru uczącego za bardzo, co mogłoby spowodować budowę słabej jakości modeli. Najczęściej stosuje się k=10. Sposób podziału zbioru danych na k podzbiorów jest niemniej istotny, gdyż jeśli wzorce są posortowane wg klas w zbiorze uczącym, wtedy wybór kolejnych podzbiorów może powodować uwzględnienie w walidacji tylko wzorców jednej klasy, a ponadto znaczne uszczuplenie wzorców uczących dla tej klasy, co jest bardzo niekorzystne z punktu widzenia budowy modelu! Najlepiej dobierać wzorce proporcjonalnie do ich liczności i reprezentacji poszczególnych klas tak, aby były reprezentatywne.

4-krotnej walidacja krzyżowa z proporcjonalnym wyborem wzorców

N-krotna walidacja krzyżowa leave one out cross-validation N-krotna walidacja krzyżowa zakłada dobór k=n, gdzie N to ilość wzorców zbioru danych uczących. W takim przypadku tylko 1 wzorzec jest wykluczany ze zbioru uczącego i traktowany jako walidacyjny. Nauka jest więc powtarzana N-krotnie na zbiorach utworzonych poprzez pominięcie 1 wzorca stosowanego do walidacji. Usunięcie jednego wzorca zwykle nie daje reprezentatywnych wyników działania odnośnie jakości modelu i jego możliwości generalizacji.

MODYFIKACJE METODY WALIDACJI KRZYŻOWEJ W celu uzyskania lepszego działania metody, zbiór danych powinien być dzielony w taki sposób, żeby stosunek reprezentantów poszczególnych klas w zbiorze walidacyjnym był mniej więcej taki sam jak w całym zbiorze uczącym. Z tego powodu zaleca się posortowanie zbioru danych uczących w taki sposób, żeby można było z każdej klasy wybierać kolejne podzbiory do walidacji krzyżowej w sposób reprezentatywny dla całego zbioru danych uczących. Czasami stosuje się również uproszczoną metodę selekcji 1 / k wzorców ze zbioru uczącego do walidacji, polegającą na losowaniu tych wzorców z całego zbioru (random subsampling), a pozostałe wykorzystywane są do adaptacji / uczenia modelu.

ZALECENIA CO DO IMPLEMENTACJI METODY KNN 1. Wczytanie danych z zbioru uczącego, np. zbiór Iris, umieszczając dane w tabeli lub 5 kolumnowej tablicy elementów typu float. Zbiór uczący składa się ze zbioru par <x i, y i >, gdzie x i jest zbiorem parametrów wektorów x i ={x i 1,,x i n} definiujących obiekty, y i jest indeksem lub nazwą klasy, do której obiekt x i należy i którą razem z innymi obiektami tej klasy definiuje. 2. W podstawowej wersji tej metody dla wybranego k tworzymy podstawową pętlę obliczeniową, w której obliczamy odległość Euklidesa klasyfikowanego wzorca x (zadanego w postaci wektora określonych cech) do wszystkich wzorców uczących: x x k 2 = j=0 J x j x j k 2 3. Wynikiem jest ta klasa, która powiązana jest z największą ilością wzorców spośród tych k najbliższych. Wzorzec testowy do klasyfikacji podajemy z konsoli. 4. W ogólnej wersji metody tworzymy tablicę najbliższych wzorców do dla poszczególnych k, wyznaczamy dla nich zwycięską klasę i najlepsze k.

MODYFIKACJE METODY K NAJBLIŻSZYCH SĄSIADÓW Metoda Ważonych Odległości Najbliższych Sąsiadów (Distance Weighted Nearest Neighbors) prowadzi do głosowania na temat klasyfikacji gwiazdki biorąc pod uwagę k najbliższych sąsiadów lub nawet wszystkie wzorce, lecz ich głosy są ważone w zależności od ich odległości (dla wybranej metryki) do gwiazdki: im dalej jest głosujący wzorzec tym ma mniejszą wagę. A więc wzorce położone najbliżej będą miały największy wpływ na wynik klasyfikacji: w 2 w1 w 3 w 4 w 5 w7 w6

ZAAWANSOWANA METODA K NAJBLIŻSZYCH SĄSIADÓW Z ważeniem odległości Najbliższych Sąsiadów Z normalizacją względem ilości reprezentantów klas: N 1, N 2, N 3,, N L gdzie N = N 1 + N 2 + N 3 + + N L jest ilością wszystkich wzorców uczących Walidacja krzyżową Dobraniem k dla metody knn, rozpoczynamy implementację od k=n, gdzie N to ilość wzorców uczących wszystkich klas po ich wyselekcjonowaniu metodą walidacji krzyżowej (cross-validation) Wykorzystujemy więc znormalizowane sumy ważone odległości Euklidesa: V l = K l J k=0 j=0 N l x j x j k 2 Dla każde klasy wyznaczamy taki współczynnik głosowania (voting coefficient) i wybieramy najmniejszy dla określonego K dla metody KNN, decydujący o klasyfikacji wzorca do określonej klasy l, przy założeniu, iż mamy do czynienia z L klasami.

UWAGI IMPLEMENTACYJNE W trakcie implementacji możemy posłużyć się tabelą lub tablicą (wtedy wartościom symbolicznym należy nadać wartości liczbowe) do reprezentowania i rozróżnienia wzorców uczących i walidacyjnych oraz zapisania klasy uzyskanej w wyniku działania metody, np.:

UWAGI IMPLEMENTACYJNE Najlepiej przeglądać tablicę wszystkich wzorców obliczać wszystkie V l równocześnie dodając odległość do odpowiedniej komórki tablicy V l : Warto zastosować tablicę najbliższych sąsiadów, którą aktualizujemy w trakcie przeglądania zbioru uczącego i obliczania odległości Euklidesa do wybranego wzorca testowego lub walidacyjnego. Dzięki temu możemy równocześnie wyznaczyć K najbliższych sąsiadów dla dowolnego K. Do określenia najbliższych wzorców stosujemy indeks wzorca z tablicy głównej podobnie klucz główny w relacyjnych bazach danych :