1 / 49

Trénovanie rekurentn ých neurónových sietí na grafickom procesore

Trénovanie rekurentn ých neurónových sietí na grafickom procesore. Peter Trebatický. Úvod. Pre čo použiť grafický procesor Kalmanova filtrácia výpočtovo náročná 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

conley
Télécharger la présentation

Trénovanie rekurentn ých neurónových sietí na grafickom procesore

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Trénovanie rekurentných neurónových sietí na grafickom procesore Peter Trebatický

  2. Úvod • Prečo použiť grafický procesor • Kalmanova filtrácia výpočtovo náročná • 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

  3. Grafické 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ýpočtov pre zobrazovanie grafiky • Kvôli rastúcej zložitosti ponúkaných algoritmov „natvrdo“ bola pridaná možnosť programovania • General Purpose Computing on GPU • Niektoré karty nemajú grafický výstup • Grafická karta sa stáva koprocesorom

  4. Porovnanie výpočtovej sily

  5. Prečo sú GPU stále rýchlejšie? • Je to vysoko paralelný výpočtový prostriedok • Sú špecializované, je jednoduchšie pridať ďalšie tranzistory určené na výpočet a nie na cacheovanie dát a riadenie • Trh s počítačovými hrami tlačí na vyšší výkon za nižšiu cenu • Konkurencia podnecuje inováciu

  6. Prúdové spracovanie • Prúdy • Skupina údajov vyžadujúcich podobné spracovanie • Prvky na mriežke, voxely, atď. • Poskytujú dátový paralelizmus • Kernely • Funkcie aplikované na každý prvok v prúde • Transformácie, rovnice, ... • Malá závislosť medzi elementami • Programujeme pre stovky procesorov • Bežia na nich kernely (spolupracujúce vlákna) spracúvajúce prúdy

  7. Donedávna zložité • Grafické karty boli vytvorené pre videohry • Neobvyklý programovací model • Jednotlivé pojmy späté s počítačovou grafikou • Veľmi obmedzené programovacie prostredie • Problém nesúvisiaci s grafikou bolo treba pretransformovať na prácu s „grafikou“ • Dáta => textúry • Algoritmy => skladanie obrazu (renderovacie prechody) • Dá sa zapisovať len na predom zvolené miesto (pixel)

  8. Jazyky • 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

  9. CUDA • Hardvér aj softvér navrhnutý s ohľadom na možnosť všeobecných výpočtov na GPU • Hardvér – plne dátovoparalelná architektúra • Spúšťanie vlákien (lightweight) • Globálne čítanie aj zápis • Cache paralelných dát • Skalárna architektúra • Celé čísla, bitové operácie (doteraz len 32b float) • Softvér – programuje sa v C • Jazyk C s užitočnými rozšíreniami

  10. Pamäťový model modernej GPU

  11. Využ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á sieť • Dopredné šírenie - 20× • Spätné šírenie chýb v čase - 3×

  12. Dopredné 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...

  13. N telies v priestore

  14. N telies v priestore na GPU

  15. Kalmanova 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 niekoľko desaťročí • Používaný v rôznych oblastiach

  16. Kalmanov filter

  17. Kalmanov filter

  18. Kalmanov filter

  19. Kalmanov filter

  20. Kalmanov filter

  21. Kalmanov filter

  22. Kalmanov filter • Sada matematických rovníc • Pre lineárne dynamické systémy • Prediktor-korektor • Optimálny xk+1 = Fk+1,kxk + qkstavová rovnica yk = Hkxk + rkrovnica pozorovania qk~N(0, Qk); rk~N(0, Rk)

  23. Kalmanov filter • Predikcia • Korekcia

  24. Neurónová sieť ako dynamický systém • Váhy siete predstavujú „stav“ systému • yk je požadovaný výstup • Odhad parametrov • Nelineárny systém xk+1 = xk + qk yk = hk(xk, uk, vk-1) + rk

  25. Rozšírený Kalmanov filter (EKF) • Taylorov rozvoj okolo aktuálne odhadovaného stavu • Prvý člen rozvoja • Linearizácia • Môžeme použiť Kalmanov filter

  26. Rozšírený Kalmanov filter (EKF) • Rovnice: • Rozmery matíc

  27. Úzke miesta • Násobenie matíc • Invertovanie symetrickej matice • Choleského dekompozícia • Použijeme pri výpočte inverznej matice 1. Substitúcia, 3. Spätný prechod 2. Dopredný prechod

  28. Násobenie matíc na GPU • So staršou architektúrou problematické • Architektúra nebola vhodná • Veľa údajov sa znovupoužíva • Kombinácia CPU+GPU • CUDA pre NVidia • poskytuje operácie BLAS 1 až 3 • BLAS3 = násobenie matíc

  29. Objektí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 čísel • Paralelne sa dá počítať aj na procesore

  30. Predikcia nasledujúceho symbolu v postupnosti Laser

  31. Dosiahnuté výsledky Trénovací cyklus

  32. Presnosť výpočtu

  33. Unscented Kalman Filter (UKF)

  34. Unscented Kalman Filter (UKF) • Sigma body • Malý počet • Deterministicky volené • Zachytávajú skutočné štatistiky • Prejdú nelineárnou transformáciou • Nie sú potrebné derivácie • Vyhodnotenia funkcií • Nutnosť prešíriť vstupy sieťous novými váhami (sigma bodmi)

  35. Unscented Kalman Filter (UKF) • Časová aktualizácia • Aktualizácia pozorovaním

  36. Filter nprKF • Len vyhodnotenia funkcií • Stirlingova formula • Namiesto Taylorovho rozvoja • Derivácie určené numericky • S presnosťou do 2. rádu • Podobnosť s UKF • Tiež sigma body • Presnejší odhad • Triangularizácia matice • Householderovými transformáciami

  37. Zdieľané filtre UKF a nprKF • Označenie UKFj a nprKFj (joint) • Výstupy rekurentných neurónov súčasťou stavového vektora • Nelineárna stavová rovnica • Zmena v rovniciach kroku predikcie • Zjednodušenie výpočtu výstupu siete xk+1 = f(xk,uk) + qk namiesto xk+1 = xk + qk

  38. Rezervoár rekurentne poprepájaných neurónov – riedko a náhodne Neurónové siete s echo stavmi

  39. Sieť s echo stavmi • Stav neurónov pre rovnakú vstupnú postupnosť po čase nezávisí od jeho počiatočného stavu

  40. Sieť s echo stavmi • Skombinovanie signálov z rezervoára

  41. Sieť 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žnosť • Inverzia symetrickej matice • Choleského dekompozícia • 2. možnosť • Pseudoinverzná matica pomocou SVD

  42. Generovanie melódie • Pôvodná melódia

  43. Generovanie melódie • Pôvodná melódia • Začiatok • Pokazenie 0,4 0,2 -0,2 -0,4

  44. Zhrnutie • Zrýchlenie výpočtu „zadarmo“ • GeForce 8, Radeon R580, aj mobilné verzie • Nie je vždy nutná podrobná znalosť GPU • CUDA • ACML • Na rozdiel od špeciálnych koprocesorov, multiprocesorových strojov, gridov

  45. Tézy dizertačnej 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 porovnateľnom vynaloženom úsilí

  46. Súpis prác • AAB Vedecké monografie vydané v domácich vydavateľstvách • Kvasnička, Vladimír - Trebatický, Peter - Pospíchal, Jiří - Kelemen, Jozef: Myseľ, inteligencia a život. - Bratislava : Vydavateľstvo STU v Bratislave, 2007. - 517 s. - ISBN 978-80-227-2643-6 • ADC Vedecké práce v zahraničných karentovaných časopisoch • 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 zahraničných nekarentovaných časopisoch • Trebatický, Peter - Pospíchal, Jiří: 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

  47. Súpis prác • AEC Vedecké práce v zahraničných recenzovaných vedeckých zborníkoch, monografiách • Trebatický, Peter: Generalizácia s neurónovými sieťami a echo stavmi.In: Kognice a umělý život. - Kognice a umělý život V: Svazek 2. Opava, Máj 2005. - Opava : Slezská universita v Opavě, 2005, s. 563-572 • Trebatický, Peter: Modifikácie Kalmanovho filtra pre trénovanie neurónových sietí.In: Kognice a umělý život VII. - Opava: Slezská univerzita, 2007. - ISBN 978-80-7248-412-6. - S. 349-355 • Trebatický, Peter: Výpočty na grafickom procesore v rámci umelej inteligencie.In: Kognice a umělý život VIII (sborník). - : Slezská univerzita v Opavě, 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 sieťami s echo stavmi.In: Myseľ, inteligencia a život. - Bratislava : Vydavateľstvo STU v Bratislave, 2007. - ISBN 978-80-227-2643-6. - S. 357-368

  48. Súpis prác • AFC Publikované príspevky na zahraničných vedeckých konferenciách • Čerňanský, 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 sieťami s echo stavmi.In: Kognice a umělý život VI : 6. seminář, 28.5.-1.6.2006 Třešť, ČR. - : Slezská univerzita v Opavě, 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

  49. Sú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, Jiří: Prediction with Echo state Networks.In: Student Research Conference 2006 : Proceedings in Informatics and Information Technologies. - : Vydavateľstvo 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. Herľany - Slovak Republic, 18.9.-20.9.2005. - , 2005

More Related