Memahami Penguatan Pembelajaran dengan Neural Net (Q-learning)

9

Saya mencoba untuk memahami penguatan pembelajaran dan proses keputusan markov (MDP) dalam kasus di mana jaringan syaraf sedang digunakan sebagai penaksir fungsi.

Saya mengalami kesulitan dengan hubungan antara MDP di mana lingkungan dieksplorasi secara probabilistik, bagaimana peta ini kembali ke parameter pembelajaran dan bagaimana solusi / kebijakan akhir ditemukan.

Apakah saya benar berasumsi bahwa dalam kasus pembelajaran Q, jaringan saraf pada dasarnya bertindak sebagai penduga fungsi untuk nilai-q itu sendiri sehingga banyak langkah di masa depan? Bagaimana cara peta ini memperbarui parameter melalui backpropagation atau metode lain?

Juga, begitu jaringan telah belajar bagaimana memprediksi hadiah di masa depan, bagaimana ini cocok dengan sistem dalam hal benar-benar membuat keputusan? Saya berasumsi bahwa sistem terakhir tidak mungkin membuat transisi keadaan secara probabilistik.

Terima kasih

CatsLoveJazz
sumber
Belajar. Saya pikir ini akan menjelaskan keraguan Anda kumarbasaveswara.in/q-learning.py linkedin.com/feed/update/urn:li:activity:6484453542299037696
Kumar

Jawaban:

4

Dalam Q-Learning, pada setiap langkah Anda akan menggunakan pengamatan dan penghargaan untuk memperbarui fungsi nilai-Q Anda:

Qt+1(st,Sebuaht)=Qt(st,Sebuaht)+α[Rt+1+γmaksSebuahQt(st+1,Sebuah)-Qt(st,Sebuaht)]

Anda benar dalam mengatakan bahwa jaringan saraf hanyalah perkiraan fungsi untuk fungsi nilai-q.

Secara umum, bagian perkiraan hanyalah masalah pembelajaran standar yang diawasi. Jaringan Anda menggunakan (s, a) sebagai input dan outputnya adalah nilai-q. Saat nilai-q disesuaikan, Anda perlu melatih sampel baru ini ke jaringan. Namun, Anda akan menemukan beberapa masalah saat menggunakan sampel berkorelasi dan SGD akan menderita.

Jika Anda melihat kertas DQN, situasinya sedikit berbeda. Dalam hal itu, apa yang mereka lakukan adalah meletakkan sampel dalam vektor (replay pengalaman). Untuk mengajarkan jaringan, mereka mengambil sampel tupel dari vektor, bootstrap menggunakan informasi ini untuk mendapatkan nilai q baru yang diajarkan ke jaringan. Ketika saya mengatakan mengajar, maksud saya menyesuaikan parameter jaringan menggunakan keturunan gradien stokastik atau pendekatan optimasi favorit Anda. Dengan tidak mengajarkan sampel dalam urutan yang dikumpulkan oleh kebijakan, dekorasi akan berhubungan dengan mereka dan yang membantu dalam pelatihan.

Terakhir, dalam rangka untuk membuat keputusan tentang negara , Anda memilih tindakan yang menyediakan tertinggi q-nilai:s

Sebuah(s)=SebuahrgmSebuahxSebuah Q(s,Sebuah)

Jika fungsi Q-value Anda telah dipelajari sepenuhnya dan lingkungannya diam, tidak apa-apa untuk menjadi rakus pada saat ini. Namun, saat belajar, Anda diharapkan menjelajah. Ada beberapa pendekatan yang menjadi -salah satu cara termudah dan paling umum.ε

Juan Leni
sumber
Terima kasih ini sangat berguna, itu masuk akal! Hanya untuk memperjelas, begitu sistem telah dilatih, apakah Anda cukup memberi makan setiap tindakan yang mungkin dengan status input saat ini ke jaringan saraf dan memilih tindakan yang memperkirakan hadiah terbesar (nilai-q)?
CatsLoveJazz
1
Benar. Namun, perlu diingat bahwa jika lingkungan Anda tidak stasioner, Anda mungkin ingin melanjutkan eksplorasi. Secara umum, Q-learning berjalan online dan Anda terus berlatih.
Juan Leni
Bagus, apakah Anda tahu ada literatur di sekitar jawaban Anda? Saya kira alternatif untuk pelatihan online akan melatih kembali data yang baru diamati setiap periode waktu agar tidak membiarkan eksplorasi yang gagal mempengaruhi kinerja dalam lingkungan produksi.
CatsLoveJazz
1
Saya pada dasarnya mengacu pada dilema eksplorasi-eksploitasi. Ada banyak pendekatan .. Yang mudah diterapkan ada di sini: tokic.com/www/tokicm/publikationen/papers/… di mana Anda menyesuaikan epsilon secara adaptif berdasarkan kesalahan fungsi nilai Anda
Juan Leni
1
Klasik adalah makalah / buku ini (1996): web.mit.edu/people/dimitrib/NDP_Encycl.pdf . athenasc.com/ndpbook.html Saat ini ada banyak pekerjaan yang menggabungkan Deep Neural Networks dan RL. Makalah Deepmind adalah contoh yang baik: storage.googleapis.com/deepmind-data/assets/papers/…
Juan Leni