ciot Ce este Deep Reinforcement Learning? - Unite.AI
Conectează-te cu noi
Masterclass AI:

AI 101

Ce este Deep Reinforcement Learning?

mm
Actualizat on

Ce este Deep Reinforcement Learning?

Alături de învățarea automată nesupravegheată și învățarea supravegheată, o altă formă comună de creare a AI este învățarea prin consolidare. Dincolo de învățarea regulată prin întărire, învățare profundă de întărire poate duce la rezultate uimitor de impresionante, datorită faptului că combină cele mai bune aspecte atât ale învățării profunde, cât și ale învățării prin întărire. Să aruncăm o privire asupra modului exact în care funcționează învățarea prin consolidare profundă.

Înainte de a ne aprofunda în învățarea de întărire profundă, ar putea fi o idee bună să ne reîmprospătăm cu privire la cât de regulat Consolidarea învățării lucrări. În învățarea prin întărire, algoritmii orientați spre obiective sunt proiectați printr-un proces de încercare și eroare, optimizând pentru acțiunea care duce la cel mai bun rezultat/acțiunea care câștigă cea mai mare „recompensă”. Când algoritmii de învățare prin întărire sunt antrenați, li se acordă „recompense” sau „pedepse” care influențează acțiunile pe care le vor întreprinde în viitor. Algoritmii încearcă să găsească un set de acțiuni care să ofere sistemului cea mai mare recompensă, echilibrând atât recompensele imediate, cât și cele viitoare.

Algoritmii de învățare prin întărire sunt foarte puternici deoarece pot fi aplicați la aproape orice sarcină, fiind capabili să învețe flexibil și dinamic dintr-un mediu și să descopere posibile acțiuni.

Prezentare generală a învățării prin consolidare profundă

Foto: Megajuice prin Wikimedia Commons, CC 1.0 (https://commons.wikimedia.org/wiki/File:Reinforcement_learning_diagram.svg)

Când vine vorba de învățare prin consolidare profundă, mediul este de obicei reprezentat cu imagini. O imagine este o surprindere a mediului într-un anumit moment în timp. Agentul trebuie să analizeze imaginile și să extragă informații relevante din acestea, folosind informațiile pentru a informa ce acțiune ar trebui să întreprindă. Învățarea prin consolidare profundă este de obicei realizată cu una dintre cele două tehnici diferite: învățarea bazată pe valori și învățarea bazată pe politici.

Tehnicile de învățare bazate pe valori folosesc algoritmi și arhitecturi precum rețelele neuronale convoluționale și Deep-Q-Networks. Acești algoritmi funcționează prin conversia imaginii în tonuri de gri și prin decuparea părților inutile ale imaginii. Ulterior, imaginea suferă diverse convoluții și operații de grupare, extragând cele mai relevante porțiuni ale imaginii. Părțile importante ale imaginii sunt apoi folosite pentru a calcula valoarea Q pentru diferitele acțiuni pe care le poate întreprinde agentul. Valorile Q sunt utilizate pentru a determina cel mai bun curs de acțiune pentru agent. După ce sunt calculate valorile Q inițiale, se realizează retropropagarea pentru a putea fi determinate cele mai precise valori Q.

Metodele bazate pe politici sunt utilizate atunci când numărul de acțiuni posibile pe care agentul le poate întreprinde este extrem de mare, ceea ce este de obicei cazul în scenariile din lumea reală. Situații ca acestea necesită o abordare diferită, deoarece calcularea valorilor Q pentru toate acțiunile individuale nu este pragmatică. Abordările bazate pe politici funcționează fără a calcula valorile funcției pentru acțiuni individuale. În schimb, ei adoptă politici prin învățarea directă a politicii, adesea prin tehnici numite Gradienți de politici.

Gradienții politici operează prin primirea unei stări și calculul probabilităților pentru acțiuni pe baza experiențelor anterioare ale agentului. Apoi este selectată acțiunea cea mai probabilă. Acest proces se repetă până la sfârșitul perioadei de evaluare și recompensele sunt acordate agentului. După ce recompensele au fost tratate cu agentul, parametrii rețelei sunt actualizați cu backpropagation.

Ce este Q-Learning?

pentru că Q-Learning este o parte atât de mare a procesului de învățare de întărire profundă, să luăm ceva timp pentru a înțelege cu adevărat cum funcționează sistemul Q-learning.

Procesul de decizie Markov

Un proces de decizie markov. Foto: waldoalvarez prin Pixabay, licență Pixbay (https://commons.wikimedia.org/wiki/File:Markov_Decision_Process.svg)

Pentru ca un agent AI să îndeplinească o serie de sarcini și să atingă un scop, agentul trebuie să fie capabil să facă față unei secvențe de stări și evenimente. Agentul va începe într-o stare și trebuie să ia o serie de acțiuni pentru a ajunge la o stare finală și poate exista un număr masiv de stări între stările de început și de sfârșit. Stocarea informațiilor referitoare la fiecare stat este impracticabilă sau imposibilă, așa că sistemul trebuie să găsească o modalitate de a păstra doar cele mai relevante informații de stat. Acest lucru se realizează prin utilizarea a Procesul de decizie Markov, care păstrează doar informațiile privind starea actuală și starea anterioară. Fiecare stare urmează o proprietate Markov, care urmărește modul în care agentul se schimbă de la starea anterioară la starea curentă.

Învățare Q profundă

Odată ce modelul are acces la informații despre stările mediului de învățare, valorile Q pot fi calculate. Valorile Q sunt recompensa totală acordată agentului la sfârșitul unei secvențe de acțiuni.

Valorile Q sunt calculate cu o serie de recompense. Există o recompensă imediată, calculată la starea curentă și în funcție de acțiunea curentă. Valoarea Q pentru starea ulterioară este de asemenea calculată, împreună cu valoarea Q pentru starea ulterioară și așa mai departe până când toate valorile Q pentru diferitele stări au fost calculate. Există, de asemenea, un parametru Gamma care este utilizat pentru a controla cât de multă greutate au recompensele viitoare asupra acțiunilor agentului. Politicile sunt de obicei calculate prin inițializarea aleatorie a valorilor Q și lăsând modelul să convergă către valorile Q optime pe parcursul antrenamentului.

Deep Q-Networks

Una dintre problemele fundamentale care implică utilizarea Q-learning-ului pentru învățare prin întărire este că cantitatea de memorie necesară pentru stocarea datelor se extinde rapid pe măsură ce crește numărul de stări. Deep Q Networks rezolvă această problemă prin combinarea modelelor de rețele neuronale cu valorile Q, permițând unui agent să învețe din experiență și să facă presupuneri rezonabile despre cele mai bune acțiuni de luat. Cu deep Q-learning, funcțiile Q-valoare sunt estimate cu rețele neuronale. Rețeaua neuronală preia starea ca date de intrare, iar rețeaua emite valoarea Q pentru toate acțiunile posibile diferite pe care le-ar putea face agentul.

Deep Q-learning se realizează prin stocarea în memorie a tuturor experiențelor anterioare, calculând ieșirile maxime pentru rețeaua Q și apoi folosind o funcție de pierdere pentru a calcula diferența dintre valorile curente și cele mai mari valori teoretice posibile.

Învățare prin consolidare profundă vs Învățare profundă

O diferență importantă între învățarea prin consolidare profundă și învățarea profundă obișnuită este că, în cazul primei, intrările se schimbă constant, ceea ce nu este cazul în învățarea profundă tradițională. Cum poate modelul de învățare să țină cont de intrările și ieșirile care se schimbă constant?

În esență, pentru a ține seama de diferența dintre valorile prezise și valorile țintă, pot fi utilizate două rețele neuronale în loc de una. O rețea estimează valorile țintă, în timp ce cealaltă rețea este responsabilă pentru predicții. Parametrii rețelei țintă sunt actualizați pe măsură ce modelul învață, după ce a trecut un număr ales de iterații de antrenament. Ieșirile rețelelor respective sunt apoi unite pentru a determina diferența.

Învățare bazată pe politici

Învățare bazată pe politici abordările funcționează diferit față de abordările bazate pe valoarea Q. În timp ce abordările Q-valoare creează o funcție de valoare care prezice recompense pentru state și acțiuni, metodele bazate pe politici determină o politică care va mapa state cu acțiuni. Cu alte cuvinte, funcția de politică care selectează pentru acțiuni este direct optimizată, indiferent de funcția de valoare.

Gradienți politici

O politică de învățare prin consolidare profundă se încadrează în una din două categorii: stocastică sau deterministă. O politică deterministă este una în care statele sunt mapate la acțiuni, ceea ce înseamnă că atunci când politicii primesc informații despre o stare, o acțiune este returnată. Între timp, politicile stocastice returnează o distribuție de probabilitate pentru acțiuni în loc de o singură acțiune discretă.

Politicile deterministe sunt utilizate atunci când nu există nicio incertitudine cu privire la rezultatele acțiunilor care pot fi întreprinse. Cu alte cuvinte, atunci când mediul însuși este determinist. În schimb, rezultatele politicilor stocastice sunt adecvate pentru mediile în care rezultatul acțiunilor este incert. De obicei, scenariile de învățare prin întărire implică un anumit grad de incertitudine, astfel încât sunt utilizate politici stocastice.

Abordările cu gradient de politici au câteva avantaje față de abordările Q-learning, precum și unele dezavantaje. În ceea ce privește avantajele, metodele bazate pe politici converg către parametrii optimi mai rapid și mai fiabil. Gradientul politicii poate fi urmat doar până când sunt determinați cei mai buni parametri, în timp ce cu metodele bazate pe valori mici modificări ale valorilor estimate ale acțiunilor pot duce la schimbări mari ale acțiunilor și ale parametrilor asociați acestora.

Gradienții politici funcționează mai bine și pentru spațiile de acțiune cu dimensiuni mari. Atunci când există un număr extrem de mare de acțiuni posibile de întreprins, Q-learning profund devine nepractic, deoarece trebuie să atribuie un scor fiecărei acțiuni posibile pentru toți pașii de timp, ceea ce poate fi imposibil din punct de vedere computațional. Cu toate acestea, cu metodele bazate pe politici, parametrii sunt ajustați în timp, iar numărul celor mai buni parametri posibili se micșorează rapid pe măsură ce modelul converge.

Gradienții politici sunt, de asemenea, capabili să implementeze politici stocastice, spre deosebire de politicile bazate pe valori. Deoarece politicile stocastice produc o distribuție a probabilității, nu este necesar să se implementeze un compromis de explorare/exploatare.

În ceea ce privește dezavantajele, principalul dezavantaj al gradienților politici este că aceștia pot rămâne blocați în timpul căutării parametrilor optimi, concentrându-se doar pe un set local restrâns de valori optime în loc de valorile optime globale.

Funcția de scor al politicii

Politicile utilizate pentru a optimiza obiectivul de performanță al unui model pentru a maximiza o funcție de scor – J(θ). Dacă J(θ) este o măsură a cât de bună este politica noastră pentru atingerea scopului dorit, putem găsi valorile „θ” care ne oferă cea mai bună politică. În primul rând, trebuie să calculăm o recompensă de politică așteptată. Estimăm recompensa politică, astfel încât să avem un obiectiv, ceva spre care să ne optimizăm. Funcția Scor politic este modul în care calculăm recompensa așteptată pentru politică și există diferite Funcții Scor politic care sunt utilizate în mod obișnuit, cum ar fi: valorile de început pentru mediile episodice, valoarea medie pentru mediile continue și recompensa medie pe pas de timp.

Politică Gradient Ascent

Urcarea în gradient are ca scop mutarea parametrilor până când aceștia sunt în locul în care scorul este cel mai mare. Fotografie: Public Domain (https://commons.wikimedia.org/wiki/File:Gradient_ascent_(surface).png)

După ce se utilizează funcția de scor al politicii dorită și se calculează o recompensă de politică așteptată, putem găsi o valoare pentru parametrul „θ” care maximizează funcția de scor. Pentru a maximiza funcția scor J(θ), o tehnică numită „urcare în gradient" este folosit. Ascensiunea în gradient este similară ca concept cu coborârea în gradient în deep learning, dar optimizăm pentru cea mai abruptă creștere în loc de scădere. Acest lucru se datorează faptului că scorul nostru nu este „eroare”, ca în multe probleme de învățare profundă. Scorul nostru este ceva pe care vrem să-l maximizăm. O expresie numită teorema gradientului politicii este folosită pentru a estima gradientul în raport cu politica „θ".

Rezumatul învățării prin întărire profundă

Pe scurt, învățarea prin consolidare profundă combină aspecte ale învățării prin consolidare și rețelele neuronale profunde. Învățarea prin consolidare profundă se realizează cu două tehnici diferite: învățare Q profundă și gradienți politici.

Metodele de deep Q-learning urmăresc să prezică ce recompense vor urma anumite acțiuni întreprinse într-o anumită stare, în timp ce abordările cu gradient de politică urmăresc să optimizeze spațiul de acțiune, prezicând acțiunile în sine. Abordările bazate pe politici ale învățării prin consolidare profundă sunt fie deterministe, fie de natură stocastică. Politicile deterministe mapează stările direct la acțiuni, în timp ce politicile stocastice produc distribuții de probabilitate pentru acțiuni.

Blogger și programator cu specialități în Invatare mecanica și Invatare profunda subiecte. Daniel speră să-i ajute pe alții să folosească puterea AI pentru binele social.