N - Politechnika Gdańska

Transkrypt

N - Politechnika Gdańska
WARSZTATY
STATYSTYKA I ANALIZA DANYCH
20-22.02.2014
Metody automatycznego
grupowania i rozpoznawania
wzorców
dr inż. Katarzyna Palikowska
[email protected]
Politechnika Gdańska
Plan prezentacji
1. Wstęp
2. Zakres zastosowań
3. Podział metod
3.1 Metody redukcji wymiaru danych
•
•
Analiza składowych głównych
Skalowanie wielowymiarowe
3.2 Uczenie bez nauczyciela
•
•
Metoda k-średnich
Grupowanie hierarchiczne
PCA
MDS
unsupervised learning
K-means
Hierarchical clustering
Sieci Kohonena
3.3 Uczenie z nauczycielem
•
•
•
Sztuczne sieci neuronowe
Maszyna wektorów nośnych
Metoda najbliższego sąsiedztwa
4. Przykłady
5. Podsumowanie
supervised learning
ANN
SVM
KNN
Wstęp
Informatyka , Statystyka
•
•
•
•
Uczenie maszyn / Systemy uczące się
Sztuczna inteligencja
Eksploracja danych
Wydobywanie / Odkrywanie wiedzy z danych
Statistical learning
Machine learning
Artificial intelligence
Data exploration
Data mining
Knowledge discovery
Big Data
Eksploracja danych – jedna z 10 nowych
technologii, które zmienią świat wg MIT
Technology Review
Automatyczne odkrywanie nietrywialnych,
dotychczas nieznanych zależności, związków,
podobieństw lub trendów – ogólnie
„wzorców”
Odkrywanie potencjalnie użytecznej wiedzy
Przetwarzanie danych
Bazy
danych
OLTP – Online
transaction
processing
Dostęp do
danych poprzez
predefiniowane
raporty lub
zapytania (SQL)
Kontrola dostępu,
Współbieżny dostęp,
Odporność na awarie
Hurtownie
danych
OLAP – Online analytical processing
Rozszerzone możliwości obsługi
złożonych zapytań zawierających
agregaty:
• Łączna sprzedaż produktów w
kolejnych kwartałach z podziałem
na oddziały, miasta itd.
• Podsumowanie sprzedaży z
podziałem na rodzaje produktów,
sprzedawców itd.
Redundancja
Przechowywanie danych zagregowanych
Eksploracja
danych
• Jakie czynniki
kształtują popyt na
produkty?
• Które oddziały
wykazały się
anormalnym
poziomem sprzedaży
w ostatnim kwartale?
• Czym różnią się klienci
oddziału X od Y?
• Jakie dodatkowe
produkty kupują
najczęściej klienci wraz
z winem?
Zakres zastosowań
PCA
ANN
1933
lata 40-te
K-means GA
1967 1975
SVM
ACO PSO
1995
1991 2001
Wzrost mocy obliczeniowej wpłynął na rozszerzenie możliwości zastosowania
eksploracji danych
Algorytmy optymalizacji i inne techniki AI znalazły zastosowanie w
eksploracji danych
Dziedziny:
• diagnostyka medyczna
• bankowość, ubezpieczenia
• marketing, handel
• kontrola jakości
• …
Dostępne narzędzia:
R-Projekt
http://www.r-project.org/
SciLab
http://www.scilab.org/
Octave http://www.gnu.org/software/octave/
Literatura z zakresu diagnostyki medycznej
„Machine learning improves the accuracy of coronary artery disease diagnostic methods”
Groseli C., Kukar M., Fetich J., Kononenko I., Computers in Cardiology, 1997
„Detection of echocardiographic left ventricle boundaries using neural networks”
Hunter I., Soraghan J., Christie J., Durrani T., Computers in Cardiology, 1993
„A supervised machine learning algorithm for arrhythmia analysis”
Guvenir H., Acar B., Demiroz, Cekin A., Computers in Cardiology, 1997
„Metabolic Syndrome Derived from Principal Component Analysis and Incident Cardiovascular
Events: The Multi Ethnic Study of Atherosclerosis (MESA) and Health, Aging, and Body
Composition (Health ABC)”, Cardiology Research and Practice Volume 2012
…
Rozwój chemometrii
Algorytmy metaheurystyczne
1975 r. Holland
Algorytmy genetyczne Genetic Algorithm
1991 r. Marco Dorigo, Alberto Colorni, Vittorio Maniezzo
Algorytmy mrówkowe Ant Colony Optimization
2001 r. Kennedy, Eberhart
Algorytm roju cząstek
Particle Swarm Optimization
Proces ewolucji – inspiracją algorytmów genetycznych
•
•
•
•
Dziedziczenie – organizmy potomne dziedziczą materiał genetyczny po rodzicach
Zmienność – możliwość mutacji
Ograniczone zasoby – organizmy konkurują ze sobą o ograniczone zasoby środowiska
Dostosowanie (fitness) – pewne cechy okazują się korzystne w danym środowisku i
zwiększają konkurencyjność osobnika
• Zróżnicowana przeżywalność – osobniki najlepiej przystosowane mają większą szansę
przeżycia i wydania na świat potomstwa
Algorytm genetyczny
• Każdy osobnik stanowi zakodowaną postać
rozwiązania
Genotyp
Populacja osobników
(rozwiązań)
• Każdy osobnik podlega ocenie
Miara dostosowania
• Populacja rozwiązań poddawana jest selekcji, opartej
na wynikach oceny
Dobór naturalny
• Osobniki poddają się działaniu operatorów
genetycznych
Rekombinacja
Krzyżowanie (cross-over)
Delecja
Inwersja
Mutacja
Duplikacja
…
Algorytmy genetyczne
Generacja populacji
początkowej
n=1
101010101111111
001011010101011
111110100101101
…
Osobnik
Pokolenie n+1
OCENA
101010101111111
353.12
001011010101011
230.10
111110100101101
80.2
….
SELEKCJA
Zastosowanie
operatorów
genetycznych
Ocena
Algorytm roju cząstek PSO
•
Particle Swarm Optimization
Generacja populacji początkowej
n=1
•
•
Ocena
𝑏𝑒𝑠𝑡 𝑏𝑒𝑠𝑡
Modyfikacja 𝑝𝑖𝑑
, 𝑝𝑔𝑑
Modyfikacja 𝑣𝑖𝑑 i 𝑝𝑖𝑑
Transformacja
pokolenia n w
n+1
•
•
Każda cząsteczka ma swoja
prędkość
Cząsteczki posiadają pewną
bezwładność
Cząsteczki mogą być
przyciągane przez najlepszy
punkt znaleziony przez swoich
sąsiadów
Cząsteczki są przyciągane przez
najlepszy punkt znaleziony przez
siebie
Cząsteczki mogą być odpychane
od innych cząsteczek
Algorytm mrówkowy ACO (Ant Colony Optimization)
1991 Marco Dorigo, Alberto Colorni, Vittorio Maniezzo
• Znakowanie ścieżki feromonem
• Losowy wybór ścieżki przez
pojedynczą mrówkę z
prawdopodobieństwem
proporcjonalnym do stężenia
feromonu
• Parowanie feromonu
Algorytm mrówkowy ACO (Ant Colony Optimization)
…
𝜂𝑖𝑗 =
…
…
𝜏𝑖𝑗 =
𝑘
𝑝𝑖𝑗
(𝑡)
𝜏𝑖𝑗 (𝑡)
𝛼
𝜂𝑖𝑗
𝛼
=
0
𝑗∈𝐴𝑘
Heurystycznie wyznaczona
„atrakcyjność” krawędzi
Ilość feromonu na krawędzi
…
𝛽
𝛽
𝑗𝑒ż𝑒𝑙𝑖 𝑗 ∈ 𝐴𝑖𝑘
𝜏𝑖𝑗 (𝑡) 𝜂𝑖𝑗
𝑤 𝑝𝑜𝑧𝑜𝑠𝑡𝑎ł𝑦𝑐ℎ 𝑝𝑟𝑧𝑦𝑝𝑎𝑑𝑘𝑎𝑐ℎ
α, β – parametry algorytmu określające względny wpływ ilości feromonu i wartości
heurystycznej na wybór węzła sąsiedniego dokonywany przez mrówkę
Zbiory danych
Machine Learning Repository, University of California, Irvine
http://archive.ics.uci.edu/ml/datasets/Arrhythmia
http://archive.ics.uci.edu/ml/datasets/Echocardiogram
http://archive.ics.uci.edu/ml/datasets/Heart+Disease
http://archive.ics.uci.edu/ml/datasets/Breast+Cancer
279 atrybutów (cech, kolumn),
452 próbki (obiekty, wiersze)
76 atrybutów, Liczba próbek:
Cleveland: 303 ,
Hungarian: 294,
Switzerland: 123 ,
Long Beach VA: 200
Przykładowe dane
http://archive.ics.uci.edu/ml/datasets/Breast+Cancer
1) ID number
2) Outcome (R = recur, N = nonrecur)
3) Time (recurrence time if field 2 = R, disease-free time if field 2 = N)
4-33) Ten real-valued features are computed for each cell nucleus:
a) radius (mean of distances from center to points on the perimeter)
b) texture (standard deviation of gray-scale values)
c) perimeter
d) area
e) smoothness (local variation in radius lengths)
f) compactness (perimeter^2 / area - 1.0)
g) concavity (severity of concave portions of the contour)
h) concave points (number of concave portions of the contour)
i) symmetry
j) fractal dimension ("coastline approximation" - 1)
34) Tumor size - diameter of the excised tumor in centimeters
35) Lymph node status - number of positive axillary lymph nodes observed at time of surgery
Y
X 3...35
Dane ABPM
Powikłania
narządowe
Wyniki
nowoczesnej
diagnostyki
Pomiary Holter
663 próbki, ok. 500 atrybutów Wzrost, waga, wyniki badań laboratoryjnych, leki, używki …
Gdański Uniwersytet Medyczny
Analiza wielowymiarowa
X 1..n
o
Klasyfikacja
o
Analiza skupień
Wykrywanie klastrów
x
x x
Rozpoznawanie wzorców
Grupowanie
o
x
x
x
x
o
x o
x x
x
x
Y
Uczenie z nauczycielem
Supervised learning
X 1..n
Uczenie bez nauczyciela
Unsupervised learning
Odkrywanie charakterystyk
Wykrywanie
reguł
𝑝→𝑞
Klasyfikacja
Analiza dyskryminacyjna
Badanie wiarygodności kredytowej klienta
Majątek
Dochód
Zadłużenie
Liczba członków
rodziny
Liczba lat pracy
u obecnego
pracodawcy
Spłacił kredyt /
nie spłacił
kredytu
98
35
12
4
4
1
x
65
44
5
3
1
1
x
22
50
0
2
7
1
x
8
23
12
2
1
0
o
0
15
10
4
2
0
o
21
12
28
3
2
1
57
39
13
5
8
0
x
o
…
Nowy klient (majątek, dochód, zadłużenie, liczba członków rodziny, …)
?
Inne przykłady:
•
Email:
•
Rokowania pacjenta:
Spłaci kredyt / nie spłaci kredytu
zwykła treść / spam
pomyślne / niepomyślne
o
o
x
o
x x
o
x o
Grupowanie - zastosowania
Analiza
zależności
społecznoś
ciowych
Segmentacja rynku
Błąd pomiaru lub specyficzny stan
zdrowia pacjenta
Wzrost
prawdopodobieństwa awarii
Ustalanie stref / taryf / rozmiarów
Wykrywanie awarii
Wykrywanie reguł
𝑝→𝑞
Odkrywanie asocjacji – analiza koszyka zakupów
market basket analysis
Szukanie naturalnych wzorów zachowań konsumenckich
Odkrywanie wzorców sekwencji
Szukanie zależności występujących pomiędzy zdarzeniami w pewnym przedziale czasu.
• Analiza kataklizmów (trzęsień ziemi, huraganów, erupcji wulkanów) w celu
określenia typowej sekwencji zdarzeń poprzedzających wystąpienie zdarzenia.
• Wzorce zachowań klientów – wykrywanie oszustw finansowych,
ubezpieczeniowych, szacowanie prawdopodobieństwa spowodowania
wypadku (ustalanie wysokości składek ubezpieczeniowych)
• Analiza efektywności terapii medycznych
• Wykrywanie fałszywy ch recept
Cele automatycznej analizy
o
o
x
x x
o
X 1..n
x o
http://archive.ics.uci.edu/ml/datasets/Breast+Cancer
Uczenie z nauczycielem
x
x
x
x
o - recur
x - nonrecur
Y
o
x x
x
x
Uczenie bez nauczyciela
Cel: Automatyczna klasyfikacja nowotworu jako R lub N na
podstawie cech komórek
X 1..n
http://archive.ics.uci.edu/ml/datasets/Arrhythmia
Cel: automatyczne wyodrębnienie typów
arytmii na podstawie zapisów EKG
http://archive.ics.uci.edu/ml/datasets/Heart+Disease
Cel: automatyczne wyodrębnienie klas pacjentów, w
zależności od typu/stopnia zaawansowania choroby.
Analiza danych ABPM
Dane dotyczące pomiarów ciśnienia tętniczego
Cele:
Automatyczne wyodrębnienie klas pacjentów
„podobnych”
grupowanie
Automatyczne określanie kategorii ryzyka,
prawdopodobieństwa wystąpienia powikłań
klasyfikacja
Odkrywanie różnic pomiędzy rozkładami wartości
cech pacjentów należących do różnych klas
analiza statystyczna
Odkrywanie reguł / zależności pomiędzy
stosowanymi lekami / używkami a zmiennością
ciśnienia
wykrywanie reguł
Kryteria oceny klasyfikatorów
• Efektywność
speed
Koszt obliczeniowy związany z budową i zastosowaniem klasyfikatora (istotny
szczególnie w systemach czasu rzeczywistego)
• Odporność
robustness
Zdolność modelu do poprawnej klasyfikacji w przypadku braku części danych lub
występowania danych zaszumionych, punktów osobliwych
• Skalowalność
scalability
Zdolność metody do konstrukcji klasyfikatora dla dużych wolumenów danych,
odporność na „przekleństwo wymiaru”
• Interpretowalność
interpretability
Stopień w jakim konstrukcja klasyfikatora pozwala na zrozumienie mechanizmów
klasyfikacji. Zrozumienie mechanizmów może być celem samym w sobie
Etapy analizy
Przygotowanie danych
•
•
•
Łączenie danych pochodzących z różnych źródeł
Eliminacja danych niepełnych/nieistotnych
Transformacja danych do wymaganej postaci
Normalizacja – mapowanie przedziału zmienności atrybutu na przedział <0,1>
Standaryzacja – uzyskanie nowej zmiennej o wartości średniej = 0 i odchyleniu standardowym = 1
Wyrównanie wpływu atrybutów obiektu na wynik klasyfikacji, niezależność od jednostek w jakich
wyrażone są wartości atrybutów
Wybór sposobu reprezentacji atrybutów binarnych i kategorycznych (porządkowych i nominalnych)
Różne typy danych: multimedialne (filmy, muzyka, zdjęcia), przestrzenne (mapy), grafy, struktury
chemiczne (sekwencje DNA), dane tekstowe, semistrukturalne (dokumenty XML)
• Transformacja do przestrzeni euklidesowej (reprezentacja w postaci punktów w
n-wymiarowej przestrzeni, wybór metryki definiującej odległość)
lub
• Definicja innej miary podobieństwa lub niepodobieństwa obiektów
Redukcja wymiaru danych
•
Eliminacja współliniowości atrybutów
Współliniowość cech
Źródło danych: Dane ABPM GUM
Redukcja wymiaru danych
Szeroko stosowane techniki:
• Analiza składowych głównych
• Skalowanie wielowymiarowe
PCA Principal Component Analysis
MDS Multidimensional scaling
Cel:
Eliminacja współliniowości zmiennych objaśniających (cech)
X1
X2
…
X7
Z1
Z2
Analiza składowych głównych
Wykres osypiskowy
Wagi składowych
𝜑11
𝜑21
𝜑𝑝1
𝜑12
𝜑22
…
𝜑𝑝2
⋮
𝜑1𝑝
𝜑2𝑝
𝜑𝑝𝑝
𝑝
𝜑𝑗𝑖 2 = 1
𝑍𝑖 = 𝜑1𝑖 ∙ 𝑋1 + 𝜑2𝑖 ∙ 𝑋2 + ⋯ + 𝜑𝑝𝑖 ∙ 𝑋𝑝
𝑗=1
Składowa główna stanowi liniową kombinację oryginalnych cech
PCA
Dane dotyczące zmienności ciśnienia, 126 kolumn
15 składowych głównych
wyjaśnia 78,04 %
zmienności
Grupowanie
(x1,…, xn)1, (x1,…, xn)2, … , (x1,…, xn)m
Ciąg m próbek o n cechach
m = 15, n = 2
kupować
trzymać
x
Akcje firmy
sprzedawać
Problem określenia optymalnej liczby klastrów
Problem przydziału próbki do klastra
Szukamy grup – klastrów, w celu
sklasyfikowania nowej próbki
Algorytm K-średnich (k-means)
Zbiór próbek
x
x
x
Iteracyjne powtarzanie:
Kolorowanie próbek
x
x
x
Losowo wybrane położenie 2 centrów
Przesuwanie centrów
•
•
x
x
x
x
x
x
Brak odporności
na punkty
osobliwe
Brak możliwości
wyodrębnienia
klastra wklęsłego
Wynik grupowania
1
3
PC 2
2
PC 1
Rozkład cech z podziałem na klastry
Różnice w obrębie klastrów
Rozkład cech z podziałem na klastry
Brak istotnych różnic w obrębie klastrów
Rozkład cech z podziałem na klastry
Grupowanie hierarchiczne
• Podejście aglomeracyjne (bottom-up)
• Podejście podziałowe (top-down)
Grupowanie hierarchiczne
• Struktura zagnieżdżona, możliwość elastycznego wyboru zbioru klastrów
• Wada: podział lub połączenie są nieodwracalne i nie ma możliwości iteracyjnego
poprawiania łącznego kryterium
Wnioskowanie – wagi składowych + klastry
Odkrywanie
charakterystyk
Interpretowalność
Wagi PC1
𝑃𝐶1 = 𝜑11 ∙ 𝑋1 + 𝜑21 ∙ 𝑋2 + ⋯ + 𝜑𝑝1 ∙ 𝑋𝑝
MDS
K-means
3 klastry
Utrudniona
separowalność
i
wnioskowanie
PCA
K-means
5 klastrów
Utrudniona
separowalność
243 kolumny (207 ciągłych)
15 PC
PC 28
Klasyfikacja
Klasyfikacja
𝑦 ∈ {0,1}
http://archive.ics.uci.edu/ml/datasets/Breast+Cancer
1
ℎΘ (𝑥) = Θ𝑇 𝑥
y
x x
x
𝒉𝜣 𝒙 ≥ 𝟎. 𝟓 → 𝒚 = 𝟏
0.5
𝒉𝜣 𝒙 < 𝟎. 𝟓 → 𝒚 = 𝟎
0
x
x
x
x1
(x1,…, xn, 0|1)1, (x1,…, xn, 0|1)2, … , (x1,…, xn, 0|1)m
Ciąg m próbek o n cechach
Regresja logistyczna
ℎΘ (𝑥) = Θ𝑇 𝑥
ℎΘ (𝑥) = 𝑔(Θ𝑇 𝑥)
𝒉𝜣 (𝒙) =
𝑔 𝑧 =
𝟏
1
1 + 𝑒 −𝑧
0 ≤ ℎ𝛩 𝑥 ≤ 1
𝑻𝒙
𝟏 + 𝒆−𝜣
funkcja sigmoidalna
Wartość hipotezy odpowiada
prawdopodobieństwu, że y = 1
ℎΘ 𝑥 = 𝑃 𝑦 = 1 𝑥; Θ)
g(z)
1
Należy znaleźć wektor Θ
0.5
0
z
Regresja wieloraka
ciąg próbek o
długości m i n
cechach
(x1,…, xn, y)1, (x1,…, xn, y)2, … , (x1,…, xn, y)m
ℎ = Θ0 + Θ1𝑥
ℎ = Θ0 + Θ1𝑥 + Θ2𝑥 2
ℎ = Θ0 + Θ1𝑥 + Θ2 𝑥
…
ℎ = Θ0 + Θ1𝑥1 + Θ2𝑥2 + ⋯ + Θ𝑛𝑥𝑛
ℎ = Θ0 + Θ1𝑥1 + Θ2 𝑥12 + Θ3𝑥2 + Θ4𝑥22 + Θ5𝑥1𝑥2
1 𝑥11 𝑥12 … 𝑥1𝑛
… 𝑥2𝑛
X = 1 𝑥21 𝑥22
…
1 𝑥𝑚1 𝑥𝑚2 … 𝑥𝑚𝑛
𝑦1
𝑦2
𝑌= …
𝑦𝑚
θ0
θ
θ= 1
….
θ𝑛
Θ - parametr modelu
θ = 𝑋\Y
θ = (𝑋 𝑇 𝑋)−1 𝑋 𝑇 𝑌
Regresja wieloraka # Regresja logistyczna
Regresja wieloraka (w tym liniowa) - predykcja
x
x
x
x
x
x
x
x
ℎΘ 𝑥 = Θ0 + Θ1 𝑥
x
x
x
x
x
ℎΘ 𝑥 = Θ0 + Θ1 𝑥 + Θ2 𝑥 2
x
x
ℎΘ 𝑥 = Θ0 + Θ1 𝑥 + Θ2 𝑥 2
+ Θ3 𝑥 3 + Θ4 𝑥 4
Regresja logistyczna - klasyfikacja
o
o
o o
x o x o o
o
o
o
x x x o o
x
x x
x
x
ℎΘ 𝑥 = 𝑔(Θ0 + Θ1 𝑥1 + Θ2 𝑥2 )
o
o
o o
x o x o o
o
o
o
x x x o o
x
x x
x
x
o
o
o o
o
x
x o o
o
o
o
x x x o o
x
x x
x
x
ℎΘ 𝑥 = 𝑔(Θ0 + Θ1 𝑥1 + Θ2 𝑥2
+ Θ3 𝑥12 + Θ4 𝑥22 + Θ5 𝑥1 𝑥2 )
Klasyfikatory
• Sztuczne sieci neuronowe ANN Artificial Neural Networks, lata 40-te
• Metoda wektorów nośnych SVM Support Vector Machine, 1995
• Metoda najbliższego sąsiedztwa KNN
• Inne (np. probabilistyczne, regresyjne, drzewa klasyfikacyjne )
Klasyfikacja
• Zbiór danych
Walidacyjny
Testowy
Uczący
• Funkcja klasyfikująca - klasyfikator
Wybór postaci funkcji
Ustalenie parametrów / wag 𝜃
• Ocena działania klasyfikatora
ℎ𝜃 𝑥 → {0,1}
Wynik klasyfikacji
Rzeczywiście 1
Rzeczywiście 0
Sklasyfikowane jako
1
True
Positive
False
Positive
Sklasyfikowane jako
0
False
negative
True
negative
Zwrot Recall
𝐶𝑧𝑢ł𝑜ść (𝑆𝑒𝑛𝑠𝑖𝑡𝑖𝑣𝑖𝑡𝑦) =
𝑇𝑟𝑢𝑒 𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑒
𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 =
𝑇𝑟𝑢𝑒 𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑒 + 𝐹𝑎𝑙𝑠𝑒 𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑒
𝑅𝑒𝑐𝑎𝑙𝑙 =
precyzja
Precision
𝑇𝑟𝑢𝑒 𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑒
𝑇𝑟𝑢𝑒 𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑒 + 𝐹𝑎𝑙𝑠𝑒 𝑛𝑒𝑔𝑎𝑡𝑖𝑣𝑒
𝑆𝑝𝑒𝑐𝑦𝑓𝑖𝑐𝑧𝑛𝑜ść(𝑆𝑝𝑒𝑐𝑖𝑓𝑖𝑡𝑦) =
𝑇𝑟𝑢𝑒 𝑛𝑒𝑔𝑎𝑡𝑖𝑣𝑒
𝐹𝑎𝑙𝑠𝑒 𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑒 + 𝑇𝑟𝑢𝑒 𝑛𝑒𝑔𝑎𝑡𝑖𝑣𝑒
Test sklasyfikował same 1
𝑇𝑟𝑢𝑒 𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑒
𝑇𝑟𝑢𝑒 𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑒 + 𝐹𝑎𝑙𝑠𝑒 𝑛𝑒𝑔𝑎𝑡𝑖𝑣𝑒
𝑃𝑅
𝑃+𝑅
Prec
Recall
Test A
0.01
1.0
𝑃+𝑅
2
0.505
Test B
0.5
0.3
0.4
0,375
Test C
0.6
0.1
0.35
0,1714
2
0,0198
F-miara
Krzywa ROC
Receiver Operating Characteristic
Klasyfikator idealny
𝑇𝑃
𝑇𝑃 𝑟𝑎𝑡𝑒 =
𝑇𝑃 + 𝐹𝑁
Klasyfikator losowy
𝐹𝑃 𝑟𝑎𝑡𝑒 =
Najgorszy przypadek
Źródło: James G at al.
𝐹𝑃
𝐹𝑃 + 𝑇𝑁
Neuron biologiczny
dendryty
jądro
akson
ciało komórki
synapsa
kolaterale
Model sztucznego neuronu
x0=1
x0
x1
x2
𝜃1
𝜃2
𝜃0
funkcja sigmoidalna
ℎ𝜃 (𝑥)
g(s)
𝜃3
𝒉𝜣 (𝒙) =
𝑛
𝑠 = 𝜃𝑇 𝑥 =
x3
𝟏
𝒈 𝒔 =
𝟏 + 𝒆−𝒔
𝜃𝑖 𝑥𝑖
𝟏
𝟏 + 𝒆−𝜣
𝑻𝒙
𝑖=1
𝑥0
𝑥1
x = 𝑥2
…
𝑥𝑛
𝜃0
𝜃1
θ = 𝜃2
…
𝜃𝑛
Element progowy – zostaje uaktywniony gdy
suma sygnałów wejściowych przekroczy
pewien poziom
Sztuczna sieć neuronowa
x0
x0=1
a0(2)
x1
a1
𝒉𝜣 (𝒙) =
(2)
𝟏
𝑻𝒙
𝟏 + 𝒆−𝜣
ℎ𝜃 (𝑥)
x2
a2(2)
x3
a3(2)
𝑥0
𝑥1
x = 𝑥2
…
𝑥𝑛
(1)
𝜃10
(1)
θ(1) = 𝜃20
(1)
𝜃30
funkcja sigmoidalna
(1)
(1)
(1)
𝜃11
𝜃12
𝜃13
𝜃21
𝜃22
𝜃23
𝜃31
𝜃32
𝜃33
(1)
(1)
(1)
(1)
(2)
θ(2) = 𝜃10
(1)
(1)
3x4
(2)
𝜃11
(2)
𝜃12
(2)
𝜃13
Sztuczna sieć neuronowa
Kierunek przepływu sygnału
x0
x1
a0(2)
a1(2)
a0(3)
a0(4)
a1(3)
ℎ𝜃 (𝑥)
a1(4)
x2
a2(2)
a2(3)
a2(4)
x3
a3(2)
a3
(3)
sprzężenie zwrotne
Warstwa
wyjściowa
Warstwa
wejściowa
Warstwy
ukryte
• Sieć jednokierunkowa
• Sieć rekurencyjna
𝑥0
𝑥1
x = 𝑥2
…
𝑥𝑛
Sztuczna sieć neuronowa
x0
x0=1
a0
(1)
x1
𝜃10
a1
(1)
θ(1) = 𝜃20
ℎ𝜃 (𝑥)
x2
(1)
𝜃30
a2
(2)
θ(2) = 𝜃10
x3
a3
1
1
1
1
1
1
1
1
1
1
1
1
𝑎1 = 𝑔 𝜃10 𝑥0 + 𝜃11 𝑥1 + 𝜃12 𝑥2 + 𝜃13 𝑥3
𝑎2 = 𝑔 𝜃20 𝑥0 + 𝜃21 𝑥1 + 𝜃22 𝑥2 + 𝜃23 𝑥3
𝑎3 = 𝑔 𝜃30 𝑥0 + 𝜃31 𝑥1 + 𝜃32 𝑥2 + 𝜃33 𝑥3
2
2
2
2
ℎ𝜃 (𝑥) = 𝑔 𝜃10 𝑎0 + 𝜃11 𝑎1 + 𝜃12 𝑎2 + 𝜃13 𝑎3
(1)
(1)
(1)
𝜃11
𝜃12
𝜃13
𝜃21
𝜃22
𝜃23
𝜃31
𝜃32
𝜃33
(1)
(1)
(2)
𝜃11
(1)
(1)
(2)
𝜃12
(1)
(1)
(2)
𝜃13
Separowalność
AND
XNOR
OR
zbiór nie musi być
spójny ani wypukły
wypukły spójny zbiór
Sieć neuronowa – czym jest?
x0=1
a0
-30
x0
10
a1
a0=1
20
-10
20
x1
20
-20
20
x2
a2
-20
• zespół prostych, wzajemnie połączonych jednostek (neuronów) równolegle
przetwarzających informację
• jednostki (neurony) wykonują sumowanie i nieliniowe odwzorowanie sygnałów
wejściowych
• oddziaływanie każdego połączenia wyrażone jest wagą, która może być modyfikowana
Modyfikacja wag następuje w procesie uczenia
System przetwarzania informacji, uniwersalny dzięki możliwości uczenia.
Ocena przebiegu procesu uczenia
Ustalona złożoność układu
Źródło: Jędruch W., 2009
Ustalona liczba obrazów uczących
Wybór postaci funkcji
o
o
o o
x o x o o
o
o
o
x x x o o
x
x x
x
x
ℎΘ 𝑥 = 𝑔(Θ0 + Θ1 𝑥1 + Θ2 𝑥2 )
o
o
o o
x o x o o
o
o
o
x x x o o
x
x x
x
x
o
o
o o
o
x
x o o
o
o
o
x x x o o
x
x x
x
x
ℎΘ 𝑥 = 𝑔(Θ0 + Θ1 𝑥1 + Θ2 𝑥2
+ Θ3 𝑥12 + Θ4 𝑥22 + Θ5 𝑥1 𝑥2 )
• Problem przeuczenia sieci (overfitting) – utrata zdolności generalizujących
Generalizacja – zdolność systemu do udzielania poprawnych odpowiedzi na sygnały
wejściowe, które nie wystąpiły w zbiorze uczącym.
Brzytwa Ockhama – „Nie należy mnożyć bytów ponad potrzebę”
Podstawowy cel uczenia – nabycie przez system zdolności generalizujących.
Metoda wektorów nośnych SVM
Źródło: Wikipedia
• Odporność metody na zjawisko przeuczenia
• Szybkość
• Wyniki klasyfikacji
Metoda najbliższego sąsiedztwa KNN
Przykład metody nieparametrycznej
k=3
k=5
k=1
k=5
Projekt sieci neuronowej
Architektura sieci
Funkcja aktywacji
Wagi
•
•
•
•
•
liczba warstw
liczba neuronów w warstwie
połączenia zwrotne
kodowanie sygnału wejściowego
kodowanie sygnału wyjściowego
np. funkcja sigmoidalna, sgn(x)
Uczenie sieci neuronowej
Wiedza sieci neuronowej tkwi w jej wagach
Proces uczenia
1. Losowe wygenerowanie wag inicjalnych
2. Dane wejściowe – ciąg uczący
𝑦1
1 𝑥11 𝑥12 … 𝑥1𝑛
… 𝑥2𝑛 𝑌 = 𝑦2
X = 1 𝑥21 𝑥22
…
…
1 𝑥𝑚1 𝑥𝑚2 … 𝑥𝑚𝑛
𝑦𝑚
𝜃10
1
𝜃11
1
𝜃12
𝜃20
1
𝜃21
1
𝜃22
θ(2) = 𝜃102
𝜃11
2
𝜃12
θ(1) =
1
1
2
m próbek o n cechach i wyniku ym
h(x)
3. Podaj wektor Xm na wejście i oblicz h(Xm)
4. Porównaj otrzymane h(Xm) z Ym i skoryguj wagi
Powtórz m razy
Algorytmy korekty wag (np. reguła uczenia perceptronu, propagacja wsteczna błędu)
Zastosowania sieci neuronowych
•
•
•
•
•
…
•
•
•
…
Klasyfikacja
Grupowanie
Optymalizacja
Pamięć asocjacyjna
Predykcja (generalizacja)
Modelowanie przebiegu i skutków chorób
neurodegradacyjnych
Modelowanie wpływu substancji chemicznych na
mózg
Modelowanie procesów uczenia
Równoległy, rozproszony
system obliczeniowy
programowanie liniowe
problem komiwojażera
rozpoznawanie obrazów
kompresja danych
….
Sztuczny mózg
Przykład – rozpoznawanie cyfr
Wzorce
Kodowanie – macierze 5 x 3 z wartościami {0,1}
1
1
1
1
1
1
0
0
0
1
Wyjście
1
0
0
0
1
1
1
1
1
0
0
0
0
0
1
1
1
1
1
0
1
0
0
0
0
0
0
0
1
0
1
1
1
1
0
1
0
1
0
0
1
0
1
1
1
0
1
1
0
0
0
1
1
0
1
0
1
0
0
0
1
1
1
1
1
1
Dowolna liczba
warstw ukrytych
Przykład – rozpoznawanie cyfr
SciLab – moduł ANN (Artificial Neural Network)
Wybór architektury sieci
N = [15, 15, 15, 15, 4];
Inicjalizacja wag
W = ann_FF_init (N);
Wybór algorytmu uczenia
Wiedza sieci zawarta
w macierzy wag
[W,sW] = ann_FF_Mom_online(P,T,N,W,lp,Te);
Przykład – rozpoznawanie cyfr
Architektura sieci
N = [15, 30, 30, 30, 4];
Wiedza sieci zawarta
w macierzy wag
Podajemy
Otrzymujemy Y =
Y = ann_FF_run(cyfra(:),N,W);
Przeuczenie
Przykład – prognozowanie
Dane WIG
Przykład – prognozowanie
WIG – kurs zamknięcia 10 dni
Przykład – prognozowanie
WIG – kurs zamknięcia 10 dni
+
Obrót 10 dni
ANN toolbox
Podsumowanie
Przedstawione metody znajdują szerokie zastosowanie w diagnostyce medycznej
Dostępne narzędzia:
R-Projekt
http://www.r-project.org/
SciLab
http://www.scilab.org/
Octave
http://www.gnu.org/software/octave/
ułatwiają i przyspieszają pozyskiwanie wiedzy z danych
Znaczenie współpracy interdyscyplinarnej
Literatura
•
•
•
•
•
•
•
•
•
•
Hastie T., Tibshirani R., Friedman J. „The Elements of Statistical Learning. Data Mining,
Inference and Prediction”, Springer Series in Statistics
James G., Witten D., Hastie T., Tibshirani R. „An Introduction to Statistical Learning with
Applications in R”, Springer Texts in Statistics
Larose D. „Metody i modele eksploracji danych”, Wydawnictwo Naukowe PWN,
Warszawa 2012
Morzy T. „Eksploracja danych. Metody i algorytmy”, Wydawnictwo Naukowe PWN,
Warszawa 2013
Żurada J., Barski M., Jędruch W., „Sztuczne sieci neuronowe”, Wydawnictwo Naukowe
PWN, Warszawa 1996
Duch W., Korbicz J., Rutkowski L., Tadeusiewicz R. „Sieci neuronowe”, Akademicka
Oficyna Wydawnicza Exit, Warszawa 2000
Hertz J., Krogh A., Palmer R. „Wstęp do teorii obliczeń neuronowych”, Wydawnictwa
Naukowo-Techniczne, Warszawa 1995
Andrew Ng, Lectures „Machine Learning” www.ml-class.org
Jędruch W., „Sztuczna inteligencja”, Materiały do wykładu, Gdańsk 2009
Russell S., Norvig P. „Artificial Intelligence. A Modern Approach””, Pearson, 2010

Podobne dokumenty