Title: Tr
1Trénovanie rekurentných neurónových sietí na
grafickom procesore
2Úvod
- Preco použit grafický procesor
- Kalmanova filtrácia výpoctovo nárocná
- Rapídne sa zvyšujúci výkon bežne dostupných GPU
- Použitie pri trénovaní
- Dopredné a spätné šírenie
- Modifikácie Kalmanovho filtra
- Neurónové siete s echo stavmi
3Grafické procesorové jednotky
- Grafické procesorové jednotky na bežných
grafických kartách sa vyvinuli v extrémne
flexibilné a výkonné procesory - Pôvodne pre urýchlenie matematických výpoctov pre
zobrazovanie grafiky - Kvôli rastúcej zložitosti ponúkaných algoritmov
natvrdo bola pridaná možnost programovania - General Purpose Computing on GPU
- Niektoré karty nemajú grafický výstup
- Grafická karta sa stáva koprocesorom
4Porovnanie výpoctovej sily
5Preco sú GPU stále rýchlejšie?
- Je to vysoko paralelný výpoctový prostriedok
- Sú špecializované, je jednoduchšie pridat dalšie
tranzistory urcené na výpocet a nie na
cacheovanie dát a riadenie - Trh s pocítacovými hrami tlací na vyšší výkon za
nižšiu cenu - Konkurencia podnecuje inováciu
6Prúdové spracovanie
- Prúdy
- Skupina údajov vyžadujúcich podobné spracovanie
- Prvky na mriežke, voxely, atd.
- Poskytujú dátový paralelizmus
- Kernely
- Funkcie aplikované na každý prvok v prúde
- Transformácie, rovnice, ...
- Malá závislost medzi elementami
- Programujeme pre stovky procesorov
- Bežia na nich kernely (spolupracujúce vlákna)
spracúvajúce prúdy
7Donedávna zložité
- Grafické karty boli vytvorené pre videohry
- Neobvyklý programovací model
- Jednotlivé pojmy späté s pocítacovou grafikou
- Velmi obmedzené programovacie prostredie
- Problém nesúvisiaci s grafikou bolo treba
pretransformovat na prácu s grafikou - Dáta gt textúry
- Algoritmy gt skladanie obrazu (renderovacie
prechody) - Dá sa zapisovat len na predom zvolené miesto
(pixel)
8Jazyky
- API
- Direct3D, OpenGL
- Využitie shaderov
- HLSL, GLSL, Cg
- GPGPU jazyky
- Skrývajú detaily D3D/OpenGL
- Brook, Sh, RapidMind, Accelerator
- CTM (CAL) ACML
- CUDA CUBLAS
9CUDA
- Hardvér aj softvér navrhnutý s ohladom na možnost
všeobecných výpoctov na GPU - Hardvér plne dátovoparalelná architektúra
- Spúštanie vlákien (lightweight)
- Globálne cítanie aj zápis
- Cache paralelných dát
- Skalárna architektúra
- Celé císla, bitové operácie (doteraz len 32b
float) - Softvér programuje sa v C
- Jazyk C s užitocnými rozšíreniami
10Pamätový model modernej GPU
11Využitie GPU v umelej inteligencii
- Genetický algoritmus - 20
- Operátory aj fitnes na GPU
- Genetické programovanie - 100
- Vyhodnotenie stromov
- Support Vector Machines - 28
- Rozoznávanie tváre
- Dopredná neurónová siet
- Dopredné šírenie - 20
- Spätné šírenie chýb v case - 3
12Dopredné a spätné šírenie
- Maticovými operáciami
- Po vrstvách
- u W1 a1
- y1 f(a1)
- Pri doprednej sieti spojíme viacero vstupov do
matice - U W1 A1
- Y1 f(A1)
- Alebo...
13N telies v priestore
14N telies v priestore na GPU
15Kalmanova filtrácia
- Alternatíva ku gradientovým metódam trénovania
neurónových sietí - Jednoduchý princíp
- Stáva sa populárnym
- Známy niekolko desatrocí
- Používaný v rôznych oblastiach
16Kalmanov filter
17Kalmanov filter
18Kalmanov filter
19Kalmanov filter
20Kalmanov filter
21Kalmanov filter
22Kalmanov filter
- Sada matematických rovníc
- Pre lineárne dynamické systémy
- Prediktor-korektor
- Optimálny
xk1 Fk1,kxk qk stavová rovnica yk Hkxk
rk rovnica pozorovania qkN(0, Qk) rkN(0, Rk)
23Kalmanov filter
24Neurónová siet ako dynamický systém
- Váhy siete predstavujú stav systému
- yk je požadovaný výstup
- Odhad parametrov
- Nelineárny systém
xk1 xk qk yk hk(xk, uk, vk-1) rk
25Rozšírený Kalmanov filter (EKF)
- Taylorov rozvoj okolo aktuálne odhadovaného
stavu - Prvý clen rozvoja
- Linearizácia
- Môžeme použit Kalmanov filter
26Rozšírený Kalmanov filter (EKF)
27Úzke miesta
- Násobenie matíc
- Invertovanie symetrickej matice
- Choleského dekompozícia
- Použijeme pri výpocte inverznej matice
1. Substitúcia, 3. Spätný prechod
2. Dopredný prechod
28Násobenie matíc na GPU
- So staršou architektúrou problematické
- Architektúra nebola vhodná
- Vela údajov sa znovupoužíva
- Kombinácia CPUGPU
- CUDA pre NVidia
- poskytuje operácie BLAS 1 až 3
- BLAS3 násobenie matíc
29Objektívne porovnanie
- Knižnica ATLASIntel Core2 Quad Q6600 2.4 GHz
- Knižnica CUBLASnVidia GeForce 8800 GTX
- Obe dodržujú štandard BLAS
- Zdrojový kód skoro identický
- Drobná úprava vo volaní funkcií
- Prenos údajov CPU - GPU
- Vplyv reprezentácie desatinných císel
- Paralelne sa dá pocítat aj na procesore
30Predikcia nasledujúceho symbolu v postupnosti
Laser
31Dosiahnuté výsledky
Trénovací cyklus
32Presnost výpoctu
33Unscented Kalman Filter (UKF)
34Unscented Kalman Filter (UKF)
- Sigma body
- Malý pocet
- Deterministicky volené
- Zachytávajú skutocné štatistiky
- Prejdú nelineárnou transformáciou
- Nie sú potrebné derivácie
- Vyhodnotenia funkcií
- Nutnost prešírit vstupy sietous novými váhami
(sigma bodmi)
35Unscented Kalman Filter (UKF)
- Casová aktualizácia
- Aktualizácia pozorovaním
36Filter nprKF
- Len vyhodnotenia funkcií
- Stirlingova formula
- Namiesto Taylorovho rozvoja
- Derivácie urcené numericky
- S presnostou do 2. rádu
- Podobnost s UKF
- Tiež sigma body
- Presnejší odhad
- Triangularizácia matice
- Householderovými transformáciami
37Zdielané filtre UKF a nprKF
- Oznacenie UKFj a nprKFj (joint)
- Výstupy rekurentných neurónov súcastou stavového
vektora - Nelineárna stavová rovnica
- Zmena v rovniciach kroku predikcie
- Zjednodušenie výpoctu výstupu siete
xk1 f(xk, uk) qk namiesto xk1 xk qk
38Neurónové siete s echo stavmi
- Rezervoár rekurentne poprepájaných neurónov
riedko a náhodne
39Siet s echo stavmi
- Stav neurónov pre rovnakú vstupnú postupnost po
case nezávisí od jeho pociatocného stavu
40Siet s echo stavmi
- Skombinovanie signálov z rezervoára
41Siet s echo stavmi
- Skombinovanie signálov z rezervoára
- Získanie histórie stavov X
- Požadované výstupy Y
- Výstupné váhy ako lineárna kombinácia
- 1. možnost
- Inverzia symetrickej matice
- Choleského dekompozícia
- 2. možnost
- Pseudoinverzná matica pomocou SVD
42Generovanie melódie
43Generovanie melódie
- Pôvodná melódia
- Zaciatok
- Pokazenie
0,4
0,2
-0,2
-0,4
44Zhrnutie
- Zrýchlenie výpoctu zadarmo
- GeForce 8, Radeon R580, aj mobilné verzie
- Nie je vždy nutná podrobná znalost GPU
- CUDA
- ACML
- Na rozdiel od špeciálnych koprocesorov,
multiprocesorových strojov, gridov
45Tézy dizertacnej práce
- Modifikácie Kalmanovho filtra
- Zjednodušenie všeobecných vzorcov pre rekurentné
neurónové siete - UKF a nprKF
- UKFj pravdepodobne prvý krát použitý v kontexte
rekurentných sietí - Grafické procesory
- Ukázanie vhodnosti použitia pri trénovaní rôznych
sietí a algoritmov pre rekurentné siete - Objektívne porovnanie rýchlosti s CPU pri
porovnatelnom vynaloženom úsilí
46Súpis prác
- AAB Vedecké monografie vydané v domácich
vydavatelstvách - Kvasnicka, Vladimír - Trebatický, Peter -
Pospíchal, Jirí - Kelemen, Jozef Mysel,
inteligencia a život. - Bratislava
Vydavatelstvo STU v Bratislave, 2007. - 517 s. -
ISBN 978-80-227-2643-6 - ADC Vedecké práce v zahranicných karentovaných
casopisoch - Trebatický, Peter Recurrent Neural Network
training with the Kalman Filter-based techniques,
Vol. 15, No.5. In Neural network world. - ISSN
1210-0552. - Vol. 15 No. 5 (2005), s. 471-488 - ADE Vedecké práce v zahranicných nekarentovaných
casopisoch - Trebatický, Peter - Pospíchal, Jirí Neural
Network Training with Extended Kalman Filter
Using Graphics Processing Unit. In Lecture Notes
in Computer Science. - ISSN 0302-9743. - Vol.
5164 Artificial Neural Networks - ICANN 2008,
Part II, 18th International Conference, Prague,
CzR, September 2008 Proceedings (2008). -
Springer Berlin/Heidelberg, s. 198-207
47Súpis prác
- AEC Vedecké práce v zahranicných recenzovaných
vedeckých zborníkoch, monografiách - Trebatický, Peter Generalizácia s neurónovými
sietami a echo stavmi.In Kognice a umelý život.
- Kognice a umelý život V Svazek 2. Opava, Máj
2005. - Opava Slezská universita v Opave, 2005,
s. 563-572 - Trebatický, Peter Modifikácie Kalmanovho filtra
pre trénovanie neurónových sietí.In Kognice a
umelý život VII. - Opava Slezská univerzita,
2007. - ISBN 978-80-7248-412-6. - S. 349-355 - Trebatický, Peter Výpocty na grafickom procesore
v rámci umelej inteligencie.In Kognice a umelý
život VIII (sborník). - Slezská univerzita v
Opave, 2008. - ISBN 978-80-7248-462-1. -
S. 333-338 - AED Vedecké práce v domácich recenzovaných
vedeckých zborníkoch, monografiách - Trebatický, Peter Korektúra textu neurónovými
sietami s echo stavmi.In Mysel, inteligencia a
život. - Bratislava Vydavatelstvo STU v
Bratislave, 2007. - ISBN 978-80-227-2643-6. -
S. 357-368
48Súpis prác
- AFC Publikované príspevky na zahranicných
vedeckých konferenciách - Cernanský, Michal - Makula, Matej - Trebatický,
Peter - Lacko, Peter Text Correction Using
Approaches Based on Markovian Architectural
Bias.In EANN 2007, Proceedings of the 10th
International Conference on Engineering
Applications of Neural Networks, Thessaloniki,
Greece, 29.-31.8.2007. - Thessaloniki
Publishing Centre Alexander Technological
Educational Institute of Thessaloniki, 2007. -
ISBN 978-960-287-093-8. - S. 221-228 - Trebatický, Peter Echo-state networks
generalization. In MENDEL 2005 11th
International Conference on Soft Computing
Brno, June 15-17, 2005. - Brno Institute of
Automation and Computer Science FAculty of
Mechanical Engineering Brno University of
Technology, 2005. - ISBN 80-214-2961-5. -
S. 151-156 - Trebatický, Peter Korektúra textu neurónovými
sietami s echo stavmi.In Kognice a umelý život
VI 6. seminár, 28.5.-1.6.2006 Trešt, CR. -
Slezská univerzita v Opave, 2006. - ISBN
80-7248-355-2. - S. 393-399 - Trebatický, Peter Trénovanie rekurentných
neurónových sietí technikou rozšíreného
Kalmanovho filtra. In CZ ACM Student 2004,
Finále, Praha 26.11.2004. - , 2004. - S. 8
49Súpis prác
- AFD Publikované príspevky na domácich vedeckých
konferenciách - Trebatický, Peter Kalman Filter Modifications
for Neural Network Training.In Student Research
Conference 2007. 3rd Student Research Conference
in Informatics and Information Technologies
Bratislava, April 18, 2007 Proceedings in
Informatics and Information Technologies. -
Bratislava STU v Bratislave FIIT, 2007. - ISBN
978-80-227-2631-3. - S. 257-264 - Trebatický, Peter - Pospíchal, Jirí Prediction
with Echo state Networks.In Student Research
Conference 2006 Proceedings in Informatics and
Information Technologies. - Vydavatelstvo STU v
Bratislave, 2006. - ISBN 80-227-2395-9. -
S. 79-86 - Trebatický, Peter - Bieliková, Mária Programming
Contest at IIT.SRC 2008.In Student Research
Conference 2008. 4th Student Research Conference
in Informatics and Information Technologies
Bratislava, April 30, 2008 Proceedings in
Informatics and Information Technologies. - STU
v Bratislave FIIT, 2008. - ISBN
978-80-227-2848-5. - S. 445-446 - Trebatický, Peter Recurrent Neural Network
Training with the Extended Kalman Filter.In
Student Research Conference 2005 Proceedings in
Informatics and Information Technologies. -
Bratislava Faculty of Informatics and
Information Technologies, 2005. - ISBN
80-227-2217-0. - S. 57-64 - AFH Abstrakty príspevkov z domácich konferencií
- Trebatický, Peter Recurrent Neural Network
Training with the Kalman Filter Based Techniques.
In 1-st. Slovak-Japanese Seminar on Intelligent
Systems. Herlany - Slovak Republic,
18.9.-20.9.2005. - , 2005