From d7f02128a54900cdcddafb0bdbe187cfe06893e3 Mon Sep 17 00:00:00 2001 From: Dominik Nagy Date: Fri, 24 Jan 2020 13:58:49 +0000 Subject: [PATCH] Add 'pages/students/2016/dominik_nagy/timovy_projekt/REAMDE.md' pridanie resersu --- .../dominik_nagy/timovy_projekt/REAMDE.md | 129 ++++++++++++++++++ 1 file changed, 129 insertions(+) create mode 100644 pages/students/2016/dominik_nagy/timovy_projekt/REAMDE.md diff --git a/pages/students/2016/dominik_nagy/timovy_projekt/REAMDE.md b/pages/students/2016/dominik_nagy/timovy_projekt/REAMDE.md new file mode 100644 index 00000000..ffa743ca --- /dev/null +++ b/pages/students/2016/dominik_nagy/timovy_projekt/REAMDE.md @@ -0,0 +1,129 @@ +# Sequence-to-sequence + +Hlboké neurónové siete (Deep Neural Networks – DNN) sú veľmi výkonné modely strojového +učenia, ktoré sú určené na riešenie zložitých problémov, ako je rozpoznávanie reči či vizuálnych objekov. +Hlboké neurónové siete môžu vykonávať ľubobovoľný paralelný výpočet na malý počet krokov. Veľké +DNN môžu byť trénované pokiaľ máme dostupné obrovské množstvo dát. Napriek svojej flexibilite a sile, +hlboké neurónové siete sa dajú aplikovať iba na problémy, ktorých vstupy môžu byť rozumne kódované +vektormi s fixným rozmerom. [1] + +Sequence-to-sequence alebo postupnosť sekvencií je o trénovaní modelov na konverziu z jednej +domény na sekvencie do inej doméne ako napríklad preloženie viet z angličtiny do slovenčiny. +Postupnosť sekvencií mapuje jednu sekvenciu neurčenej dĺžky na inú sekvenciu, ktorej dĺžka je tiež +neznáma. [2] + +Rekurentná Neurónová Sieť (po anglicky Recurrent Neural Network, ďalej už len RNN) je prirodená +generalizácia dopredných neurónových sietí pre sekvencie. Postupnosť vstupu (x 1 ,...,xT), štandardné RNN +vypočíta postupnosť výstupov (y 1 ,...,yT) iteráciu nasledujúcich rovníc: + +### ℎ푡=푠푖푔푚(푊ℎ푥푥푡+푊ℎℎℎ푡− 1 ) + +### 푦푡= 푊푦ℎℎ푡 + +RNN môže ľahko mapovať sekvencie na sekvencie vždy, keď je zarovnanie medzi vstupmi výstupmi +známe vopred. Nie je však jasné, ako aplikovať RNN na problémy, ktorých vstupné a výstupné sekvencie +majú rôzne dĺžky s komplikovanými a nemonotonickými vzťahmi. Najjednoduchšia stratégia pre +všeobecné sekvenčńé učenie je mapovať vstupnú sekvenciu na vektor s pevnou veľkosťou pomocou +jedného RNN a potom mapovať vektor na cieľovú sekvenciu s iným RNN.[2] [3] + +## Convolutional neural networks + +Konvolučné neurónové siete sú menej bežné pre sekvenčné modelovanie, napriek niekoľkým výhodám. +V porovnaní s opakujúcimi sa vrstvami, konvolácie vytvárajú reprezentáciu pre kontexty s pevnou +veľkosťou, avšak efektívna veľkosť kontextu siete sa dá ľahko zväčšiť naskladaním niekoľkých vrstiev na +seba. To umožňuje presne ovládať maximálnu dĺžku závislostí, ktoré sa majú modelovať. Konvolučné +siete nezávisia od výpočtov predchádzajúceho časového kroku, a preto umožňujú paralelizáciu nad +každým prvkom v sekvencii. Tento kontrast v RNN, ktorý udržiava skrytý stav celej minulosti, zabraňuje +paralelnému výpočtu v danej sekvencii [4] + + +# Encoder-decoder + +Hlboké neurónové siete preukázali veľký úspech v rôznych aplikáciách, ako napríklad +rozpoznávanie objektov alebo rozpoznávanie reči. Nedávno sa objavil nový prístup k štatistickému +strojovému prekladu založený na neurónových sieťach. Tento nový prístup je inšpirovaný podľa +nedávneho trendu hlbokého reprezentatívneho učenia. Všetky modely neurónovej siete použité v [5] +pozostávajú z kódera a dekódera (encoder, decoder) Kóder extrahuje vektor s pevnou dĺžkou +reprezentujúce z vety s premenlivou dĺžkou a z tohto znázornenia dekóder generuje správny cieľový +preklad s premenlivou dĺžkou. Model neurónového strojového prekladu vyžaduje iba zlomok pamäte, +ktorú potrebuje model tradičného strojového prekladu. [6][7] + +``` +1 Ilustrácia RNN Encoder-Decoder [5] +``` +# Transformer a Attention + +Opakujúce sa seq2seq modely, ktoré používajú encoder-decoder architektúru dosiahli veľký +pokrok v rozpoznávaní reči. Avšak, majú nevýhodu v rýchlosti tréningu. Vnútorné opakovanie obmedzuje +parareliláziu tréningu. Neopakujúci sa seq2seq model nazývaný Transformer sa spolieha na mechanizmy +Attention, aby sa naučil pozičným závislostiam, ktoré je možné trénovať rýchlejšie s väčšou +účinnosťou.[8] Attention model sa nesnaží preložiť vetu naraz, preklad prebieha postupne, preloží najprv +jednu časť vety a potom pokračuje na ďalšiu casť, ako človek. + +Attention model by sa dal vysvetliť ako funckiu, ktorá mapuje dopyt a sadu páru kľúč-hodnota na výstup, +kde dopyt, hodnoty, kľúče a výstup sú vektory. Výstup sa počíta ako vážená suma (weighted sum) +hodnôt, kde váha priradená každej hodnote sa vypočíta poďla funcie kompatibility dopytu so +zodpovedajúcim kľúčom.[9] + + +``` +2 Scaled Dot-Product Attention a Multi-Head attention +``` +## Scaled Dot-Product Attention + +Vstup pozostáva z dopytov a kľúčov rozmeru _dk_ a hodnôt rozmerov _dv._ Vypočítajú sa „dot products“ +všetkých dopytov s kľúčmi, vydelia sa s _√dk_ a použije sa funkcia „softmax” na získane váhy hodnôt. [9] + +### 퐴푡푡푒푛푡푖표푛(푄,퐾,푉)=푠표푓푡푚푎푥( + +### 푄퐾푇 + +### √푑푘 + +### )푉 + +## Multi-Head Attention + +Silnou stránkou Multi-Head Attentionu je schopnosť spoločne sa venovať informáciám z rôznych +reprezentačných podpriestorov na rôznych pozíciách.[10] [9] + +``` +푀푢푙푡푖퐻푒푎푑(푄,퐾,푉)=퐶표푛푐푎푡(ℎ푒푎푑 1 ,...,ℎ푒푎푑ℎ)푊푂 +``` +``` +푤ℎ푒푟푒 ℎ푒푎푑푖=퐴푡푡푒푛푡푖표푛(푄푊푖푄,퐾푊푖퐾,푉푊푖푉) +``` + +# Zoznam použitej literatúry + +[1] I. Sutskever Google, O. Vinyals Google, and Q. V Le Google, “Sequence to Sequence Learning with +Neural Networks.” + +[2] M. P. For, “Natural Language Processing in Action,” _Online_ , vol. 80, no. 1. p. 453, 2017. + +[3] “Sequence to Sequence Learning with Neural Networks – arXiv Vanity.” [Online]. Available: +https://www.arxiv-vanity.com/papers/1409.3215/. [Accessed: 20-Dec-2019]. + +[4] J. Gehring, M. Auli, D. Grangier, D. Yarats, and Y. N. Dauphin, “Convolutional Sequence to +Sequence Learning.” + +[5] K. Cho _et al._ , “Learning phrase representations using RNN encoder-decoder for statistical +machine translation,” in _EMNLP 2014 - 2014 Conference on Empirical Methods in Natural +Language Processing, Proceedings of the Conference_ , 2014, pp. 1724–1734. + +[6] R. Pascanu, T. Mikolov, and Y. Bengio, “On the difficulty of training recurrent neural networks,” in +_30th International Conference on Machine Learning, ICML 2013_ , 2013, no. PART 3, pp. 2347– +2355. + +[7] K. Cho, B. Van Merriënboer, D. Bahdanau, and Y. Bengio, “On the Properties of Neural Machine +Translation: Encoder-Decoder Approaches.” + +[8] L. Dong, S. Xu, and B. Xu, _SPEECH-TRANSFORMER: A NO-RECURRENCE SEQUENCE-TO-SEQUENCE +MODEL FOR SPEECH RECOGNITION_.. + +[9] A. Vaswani _et al._ , “Attention Is All You Need.” + +[10] J. Li, Z. Tu, B. Yang, M. R. Lyu, and T. Zhang, “Multi-Head Attention with Disagreement +Regularization.” + +