Algoritma Q-learning tabular dijamin untuk menemukan fungsi optimal , , asalkan kondisi berikut (kondisi Robbins-Monro ) mengenai tingkat pembelajaran terpenuhi
di mana berarti tingkat pembelajaran yang digunakan ketika memperbarui nilai terkait dengan keadaan dan tindakan pada waktu waktu langkah , di mana diasumsikan benar, untuk semua negara dan tindakan .
Rupanya, mengingat bahwa , agar kedua kondisi menjadi benar, semua pasangan tindakan-negara harus sering dikunjungi tanpa batas: ini juga dinyatakan dalam buku Reinforcement Learning: An Introduction , terlepas dari fakta bahwa ini harus diketahui secara luas dan itu adalah alasan di balik penggunaan kebijakan -regal (atau kebijakan serupa) selama pelatihan.
Bukti lengkap yang menunjukkan bahwa pembelajaran- menemukan fungsi optimal dapat ditemukan dalam makalah Konvergensi pembelajaran-Q: Bukti Sederhana (oleh Francisco S. Melo). Dia menggunakan konsep seperti pemetaan kontraksi untuk mendefinisikan fungsi optimal (lihat juga Apa operator Bellman dalam pembelajaran penguatan? ), Yang merupakan titik tetap dari operator kontraksi ini. Dia juga menggunakan teorema (n. 2) mengenai proses acak yang konvergen ke , diberikan beberapa asumsi. (Buktinya mungkin tidak mudah diikuti jika Anda bukan seorang pria matematika.)
Jika jaringan saraf digunakan untuk mewakili fungsi , apakah jaminan konvergensi dari pembelajaran masih berlaku? Mengapa (atau tidak) Q-learning bertemu ketika menggunakan pendekatan fungsi? Apakah ada bukti formal dari non-konvergensi learning menggunakan pendekatan fungsi?
Saya mencari berbagai jenis jawaban, dari jawaban yang hanya memberikan intuisi di balik non-konvergensi pembelajaran- saat menggunakan perkiraan fungsi hingga yang memberikan bukti formal (atau tautan ke kertas dengan bukti formal).
Jawaban:
Inilah jawaban deskripsi yang intuitif:
Perkiraan fungsi dapat dilakukan dengan fungsi parameterabel apa pun. Pertimbangkan masalah ruangQ(s,a) s mana s adalah real positif, a adalah 0 atau1 , dan fungsi-Q sebenarnya adalahQ(s,0)=s2 , danQ(s,1)=2s2 , untuk semua status. Jika aproksimasi fungsi Anda adalahQ ( s , a ) = m ∗ s + n ∗ a + b , tidak ada parameter yang dapat secara akurat mewakilifungsiQ sebenarnya(kami mencoba menyesuaikan garis dengan fungsi kuadratik). Akibatnya, bahkan jika Anda memilih tingkat pembelajaran yang baik, dan sering mengunjungi semua negara bagian, fungsi perkiraan Anda tidak akan pernah menyatu dengan Q yang sebenarnya.Q fungsi .
Dan ini sedikit lebih detail:
Jaringan saraf adalah penaksir fungsi universal . Ini berarti bahwa, jika Anda memiliki fungsi, Anda juga dapat membuat jaringan saraf yang dalam atau cukup lebar sehingga dapat mendekati fungsi yang Anda buat ke tingkat yang tepat secara sewenang-wenang. Namun, topologi jaringan spesifik apa pun yang Anda pilih tidak akan dapat mempelajari semua fungsi, kecuali jika luasnya tidak terbatas atau sangat dalam. Ini analog dengan bagaimana, jika Anda memilih parameter yang tepat, garis dapat cocok dengan dua poin, tetapi tidak 3 poin. Jika Anda memilih jaringan yang memiliki lebar atau kedalaman terbatas tertentu, saya selalu dapat membangun fungsi yang membutuhkan beberapa neuron agar sesuai dengan benar.
Batas Q-learning hanya berlaku ketika representasi dari fungsi-Q adalah tepat . Untuk mengetahui alasannya, anggaplah Anda memilih untuk memperkirakan fungsi-Q Anda dengan interpolasi linier. Jika fungsi sebenarnya dapat mengambil bentuk apa pun, maka jelas kesalahan dalam interpolasi kami dapat dibuat besar tanpa batas hanya dengan membangun fungsi fungsi Q seperti XOR, dan tidak ada jumlah waktu ekstra atau data yang memungkinkan kami untuk mengurangi kesalahan ini . Jika Anda menggunakan aproksimator fungsi, dan fungsi sebenarnya yang Anda coba cocokkan tidaksesuatu yang fungsinya dapat mendekati sewenang-wenang dengan baik, maka model Anda tidak akan bertemu dengan benar, bahkan dengan tingkat pembelajaran dan tingkat eksplorasi yang dipilih dengan baik. Dengan menggunakan terminologi teori pembelajaran komputasi, kita dapat mengatakan bahwa bukti konvergensi untuk pembelajaran Q telah secara implisit mengasumsikan bahwa fungsi-Q yang sebenarnya adalah anggota ruang hipotesis di mana Anda akan memilih model Anda.
sumber
Sejauh yang saya ketahui, masih agak masalah terbuka untuk mendapatkan pemahaman formal yang benar-benar jelas tentang mengapa / ketika kita kekurangan konvergensi - atau, lebih buruk, kadang-kadang bahaya perbedaan. Ini biasanya dikaitkan dengan "triad mematikan" (lihat 11.3 dari edisi kedua buku Sutton dan Barto), kombinasi dari:
Itu hanya memberi kita gambaran (mungkin tidak lengkap) kasus di mana kita memiliki kurangnya konvergensi dan / atau bahaya divergensi, tetapi masih tidak memberi tahu kita mengapa itu terjadi dalam kasus-kasus itu.
Jawaban John sudah memberikan intuisi bahwa sebagian dari masalah adalah hanya bahwa penggunaan aproksimasi fungsi dapat dengan mudah menyebabkan situasi di mana aproksimator fungsi Anda tidak cukup kuat untuk mewakili fungsiQ∗ sebenarnya , mungkin selalu ada kesalahan aproksimasi yang tidak mungkin untuk menyingkirkan tanpa beralih ke pendekatan fungsi yang berbeda.
Secara pribadi, saya pikir intuisi ini memang membantu untuk memahami mengapa algoritma tidak dapat menjamin konvergensi ke solusi optimal, tetapi saya masih secara intuitif berharap itu mungkin mampu "menyatu" ke beberapa solusi "stabil" yang merupakan perkiraan terbaik yang diberikan pembatasan yang melekat dalam representasi fungsi yang dipilih. Memang, inilah yang kami amati dalam praktik ketika kami beralih ke pelatihan on-kebijakan (misalnya Sarsa), setidaknya dalam kasus dengan aproksimasi fungsi linier.
Intuisi saya sendiri sehubungan dengan pertanyaan ini umumnya adalah bahwa sumber masalah yang penting adalah generalisasi . Dalam pengaturan tabular, kami telah sepenuhnya mengisolasi entriQ(s,a) untuk semua (s,a) pasangan. Setiap kali kami memperbarui estimasi kami untuk satu entri, ia membiarkan semua entri lainnya tidak dimodifikasi (setidaknya pada awalnya - mungkin ada beberapa efek pada entri lain di pembaruan mendatang karena bootstrap dalam aturan pembaruan). Perbarui aturan untuk algoritme seperti Q learning dan Sarsa kadang-kadang dapat diperbarui ke arah yang "salah" jika kita mendapat "sial", tetapi dengan harapan, mereka umumnya memperbarui ke arah "arah" yang benar. Secara intuitif, ini berarti bahwa, dalam pengaturan tabular, dengan harapan kita akan secara perlahan, secara bertahap memperbaiki kesalahan dalam setiap entri secara terpisah, tanpa mungkin merusak entri lainnya.
Dengan perkiraan fungsi, saat kami memperbarui perkiraanQ(s,a) untuk satu (s,a) Q
Masalahnya adalah sebagai berikut. Misalkan kita menjalankan Q iniQ (s,a)
Akhirnya, makalah lain (bahkan yang lebih baru) yang saya duga relevan dengan pertanyaan ini adalah Mendiagnosis Kemacetan dalam Algoritma Pembelajaran Q Dalam , tetapi sayangnya saya belum sempat membacanya dengan detail yang cukup dan merangkumnya dengan memadai.
sumber