25
Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych 11/05/20 09 Robert Sulej

Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

  • Upload
    gilon

  • View
    59

  • Download
    0

Embed Size (px)

DESCRIPTION

Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych. Robert Sulej. 11/05/2009. Plan prezentacji. Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych. Robert Sulej. 11/05/2009. typy sieci - MLP, data clustering, SOM - PowerPoint PPT Presentation

Citation preview

Page 1: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

Sztuczne sieci neuronowe- aplikacje w analizie danych eksperymentalnych

11/05/2009

Robert Sulej

Page 2: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

• typy sieci - MLP, data clustering, SOM

• struktura sieci feed-forward MLP - neurony, warstwy, funkcje

• uczenie sieci „z nauczycielem” - algorytmy optymalizacji wag

• zastosowania sieci MLP - klasyfikacja, aproksymacja

- wymiarowość / statystyka danych uczących / rozmiary sieci

- problem wariancji / obciążenia odpowiedzi sieci

- błędy systematyczne

- inne ograniczenia

• uczenie bez nauczyciela: sieci SOM (self-organising maps)

Plan prezentacji

Page 3: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

Sieci uczone „z nauczycielem”

MLP – multi-layer perceptron

• historycznie bazuje na biologicznych inspiracjach; obecnie dobrze opisana matematycznie

…bez tajemnic, jednak pewne wyczucie możliwości jest konieczne;

• większość aplikacji korzysta z tego modelu;• możliwe konfiguracje z i bez sprzężenia zwrotnego (recursive i feed-forward);• dziesiątki algorytmów uczących i implementacji;

RBF – radial basis functions

Cascade Correlation…

Uczenie bez nadzoru

• algorytmy Winner Takes All, Winner Takes Most – klastrowanie danych;

• Self Organizing Maps – geometryczna rekonstrukcja;

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Typy sieci

Page 4: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

. . .

wektor wejściowy*:in = [in1, ..., inK]

in1

Out ← odpowiedź sieci

warstwy ukryte

neuron wyjściowy

sieć feed-forward MLPneuron

...

x1

x2

x3

xM

fakt()

out

w1

w2

w3

wM

w0

. . .

inK

Out = Net(in, W)odpowiedź sieci – deterministyczna funkcja wektora wejściowego

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Struktura sieci

*opis przypadków przez stałą liczbę zmiennych

Page 5: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Struktura sieci

x1

x2

out = fakt()

> 0

[w1, w2]w0/||w||

< 0

neuron – funkcje aktywacji

• w sieci z jedną warstwą ukrytą - jeden neuron ukryty wnosi:- jedną hiperpłaszczyznę do podziału przestrzeni wejść sieci- jedną funkcję bazową do odpowiedź sieci

Page 6: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

Uczenie sieci „z nauczycielem”

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

N

iii OutTgt

N 1

e1

,E InW

pożądana odpowiedź sieci faktyczna odpowiedź sieci

algorytmy iteracyjne:• gradientowe – wiele odmian: back-prop, gradienty sprzężone, L-M, …• stochastyczne – alg. genetyczne, symulowane wyżarzanie• bayesowskie

- minimalizacja f-cji błędu w przestrzeni wag sieci

Page 7: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

w(5)

( w )

Uczenie sieci „z nauczycielem”

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

algorytmy iteracyjne:

• gradientowe • stochastyczne

• bayesowskie

w(0)

w(1)

w(2)

w(3)

w(4)

w1

w2

w3

[ p(w|In) ]

w1 w1 w1

p p p

Page 8: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

Aplikacje sieci feed-forward MLP

Out = Net(x, W)

odpowiedź sieci - deterministyczna funkcja zmiennej wejściowej (lub wektora)

• aproksymacja funkcji:

lub Out = Net(x, W)

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Page 9: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

• estymacja parametru:

Out = Net(in = [x1, …, xn], W)

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Aplikacje sieci feed-forward MLP

Page 10: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

• klasyfikacja:

L

iiki

kk

p

pGOut

11

sig1sig1sig

,,g

,,g,,P,Net

ininWin

rozkłady gęstości prawdopodobieństwa

prawdopodobieństwo a priori

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Aplikacje sieci feed-forward MLP

Page 11: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

zadania klasyfikacji:

N

iOutiTgti

OutTgtxy OutTgt

NR

1

1

zadania estymacji:

wsp. korelacji liniowej:

Tgt

Out

– zmienny próg selekcji

Miary oceny wyników

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

wzrost

Out

tło(odpowiedź docelowa 0.05)

sygnał(odpowiedź docelowa 0.95)

Page 12: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

FPTP

TP

FNTP

TP

sprawność [%]

trafność [%]

wzrost • trafność selekcji: • sprawność selekcji:

zadania klasyfikacji:

N

iOutiTgti

OutTgtxy OutTgt

NR

1

1

zadania estymacji:

wsp. korelacji liniowej:

Tgt

Out

TP - true positive, Nsig(Out > )FN - false negative, Nsig(Out ≤ ) FP - false positive, Nbkg(Out > )

– zmienny próg selekcji

Miary oceny wyników

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Page 13: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Miary oceny wyników

sprawność [%]

trafność [%]

(zadania klasyfikacji)

zbiór uczący ↔ zbiór testowy

Page 14: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

błąd systematyczny - oszacowanie+ - maksimum sygnału wg klasyfikatorao - rzeczywiste maksimum sygnału

A: zmiana progu selekcji () nie wpływa na wartość centralną wyznaczanej wielkości

+

A mały błąd systematyczny

cecha 1

cech

a 2

> 0,5> 0,8

> 0,9

+

o

B znaczny błąd systematyczny

cecha 1

cech

a 2

> 0,5> 0,8

> 0,9

B: wartość centralna zmienia się wraz ze zmianą progu selekcji

o

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Miary oceny wyników

Page 15: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

COMPASS – selekcja D0

Nauka bez Monte Carlo

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

zbiór uczący – dane rzeczywiste

tło (Out=0.05)– wrong charge combination– tylko tło kombinatoryczne

„sygnał” (Out=0.95)– good charge combination- zdarzenia tła + zdarzenia D0

zmienne wejściowe – kinematyka zdarzeńtest – rozkład masy niezmienniczej

Page 16: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Nadmierne dopasowanie do danych uczących

- jak osiągnąć:

• duży rozmiar wektorów wejściowych• mała liczba wektorów uczących*• duża liczba neuronów ukrytych• długa nauka

* w zadaniu klasyfikacji – wystarczy w jednej z klas przypadków

Page 17: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Nadmierne dopasowanie do danych uczących

te same rozkłady,różna statystyka

Page 18: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

Rxy = 0,459 Rxy = 0,165 Rxy = 0,0009

odpowiedź sieci

zmienne wejściowe

Selekcja zmiennych

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Reprezentacja danych

• usunięcie nietypowych przypadków, normalizacja

• usunięcie symetrii

• wyrównanie rozkładów

• analiza składowych niezależnych

Page 19: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

optymalizacja wag

• algorytm gradientów sprzężonych• algorytm quick-prop• dowolny inny algorytmInicjalizacja

(sieć o niewielkiej strukturze początkowej)

Inicjalizacja(sieć o niewielkiej strukturze początkowej)

Rozbudowa struktury(wstępny trening neuronów-kandydatów)

akceptacja neuronu brak modyfikacji

Rozbudowa struktury(wstępny trening neuronów-kandydatów)

akceptacja neuronu brak modyfikacji

optymalizacja wag

Redukcja strukturyRedukcja struktury

optymalizacja wag

stabilizacja?

KoniecKoniec

Redukcja struktury

• łączenie par neuronów:

• usuwanie neuronów o stałej odpowiedzi:

• usuwanie neuronów o nieistotnych wagach wejściowych:

* działanie sieci nie zostaje zaburzone *

AB

BA

N

i

Bi

Ai

BA

AB too

N

221

2

22

2

1

cr

o

d

N

N

ijj

jout

iout

,11

1w

w

Przebieg błędu sieci w funkcji iteracji trening neuronów-kandydatów

N

T

Optymalizacja struktury

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Page 20: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Optymalizacja strukturyRedukcja struktury

AB

BA

N

i

Bi

Ai

BA

AB too

N

221

2

22

2

1

c

ro

d

N

N

ijj

jout

iout

,11

1w

w

• łączenie par neuronów:

• usuwanie neuronów o nieistotnych wagach wejściowych:

• usuwanie neuronów o stałej odpowiedzi:

∙∙

∙∙

∙∙

∙∙ ∙

° °

°

°

°°

°

x1

x2

l1

l2

∙∙

∙∙∙

∙∙

∙∙ ∙

° °

°

°

°°

°

x1

°

x2

l2

l1

Page 21: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Optymalizacja strukturyprzykładowe zadanie

13-8, dynamiczna struktura 17-7, statyczna struktura 20-10, statyczna struktura

zbiór uczący

Page 22: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

w(t) = x – wwinner(t)

wn(t+1) = wn(t) + (t) fs(n – winner) w (t)

dla n ϵ < 1; N >:

x = X<rnd>

X = [x1,…,xM] - zbiór wektorów (np. współrzędne hitów)

W = [w1,…,wN] - wektory wag neuronów

dla m ϵ < 1; M >:

N > M

dla t ϵ < 1; max_iter >:

x

x

x

x

x

x

x

x

x

współczynnik szybkości nauki„funkcja sąsiedztwa”

Nauka „bez nauczyciela”: Self-Organizing Maps

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Page 23: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Self-Organizing Maps – dane– – 1-wymiarowa sieć SOM

Page 24: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009

Dziękuję za uwagę

Page 25: Sztuczne sieci neuronowe - aplikacje w analizie danych eksperymentalnych

0L:

1M:

1E:

fPow4(out) = (tgt – out)4fMSE(out) = (tgt – out)2

CC (sygnał)

tło

Robert Sulej Sztuczne sieci neuronowe – aplikacje w analizie danych eksperymentalnych 11/05/2009