Contents — find the section you need
Q-öğrenme, her durum-eylem çifti için bir değeri güncelleyen, politika dışı bir pekiştirmeli öğrenme yöntemidir: "Bu seçim uzun vadede ne kadar getiri sağlayacak?" Küçük bir labirent bir tablo ile çözülebilir, ancak bir kamera görüntüsü ve birçok eklem bu tabloyu imkansız derecede büyük hale getirir. Derin Q-Ağı (DQN), tabloyu bir sinir ağıyla değiştirir ve ilişkili verileri ve öz referanslı kararsızlığı azaltmak için deneyim tekrarı ve hedef ağ kullanır.
30 saniyelik özet
-
Q(s,a), s durumunda a eylemini gerçekleştirdikten sonra beklenen gelecekteki getiridir. En büyük Q değerini seçmek açgözlü bir politika sağlar.
-
Q-öğrenme, davranış politikası başka bir eylemi araştırdığında bile bir sonraki durumda maksimum Q değerini kullanır. Bu, politika dışı özelliktir.
-
DQN, bir görüntü gibi yüksek boyutlu bir gözlemi, sonlu bir dizi ayrık eylem için Q değerlerine eşler. Sürekli tork, ayrıştırma veya Aktör-Eleştirmen yöntemini gerektirir.
-
Deneyim tekrarı eski geçişleri karıştırırken, hedef ağ öğrenme hedefini birkaç güncelleme boyunca neredeyse sabit tutar.
-
Bir robot, hız, kuvvet, akım ve acil durdurma sınırlarını öğrenicinin dışında tutmalıdır. Yüksek ödül, donanım güvenliğinin kanıtı değildir.
1. Q değerlerini bir tabloya koyun
RL temelleri kılavuzundaki MDP'de, s durumunda a eylemini seçmek r ödülünü ve sonraki durum s''yı verir. Q-öğrenme, bilinmeyen ortamın açık bir modelini P tutmaz; Q değerini yalnızca (s,a,r,s') deneyiminden günceller:
Parantez içindeki değer, zamansal fark (TD) hatasıdır. Pozitif bir hata, eylemin değerini yükseltir; negatif bir hata ise düşürür. \alpha öğrenme oranı ve \gamma iskonto faktörüdür. Terminal durumda, bir sonraki durum değeri sıfırdır.
Şekil 1 — Q-öğrenme, önceki değeri, gözlemlenen ödül ve maksimum sonraki durum değerinden oluşturulan bir hedefe doğru biraz hareket ettirir.
5×5'lik bir labirentte yalnızca 25 durum ve dört eylem vardır, bu nedenle 100 tablo girişi yeterlidir. ε-açgözlü keşif ile deneyimler, hedef değeri labirent boyunca geriye doğru kademeli olarak yayar. Öğrenme oranını 1'e ayarlamak ve tek bir deneyime tamamen güvenmek, onu çevresel gürültüye karşı savunmasız bırakır, bu nedenle deneyimler arasında ortalama almak için normalde 0 ile 1 arasında bir değer kullanılır.
2. Politika dışı öğrenme ve ε-açgözlü keşif
Hedef \max_{a'}Q(s',a') En iyi tahmin edilen eylem, keşif davranışı politikasının gerçekten aldığı eylem olmak zorunda değildir. Bu nedenle Q-öğrenme açgözlü bir politikayı öğrenebilirken, ε-açgözlü veri toplar. Durum uzayını kapsayacak büyük bir ε ile başlayın ve yavaşça azaltın. Fiziksel bir makinede, yalnızca doğrulanmış aday komutlar içinde rastgeleleştirme yapın ve çarpışma izlemeyi en yüksek öncelikte tutun.
3. Tablo neden görüntüler ve sürekli değerler için başarısız oluyor?
Bir durum bir kamera görüntüsünün her pikseli ise ve her motorun 256 hız seviyesi varsa, tablo pratik belleğe sığmaz. Neredeyse aynı görüntüler de ilişkisiz durumlar olarak ele alınacaktır. DQN, tabloyu bir sinir ağı Q_\theta(s,a) ile yaklaşık olarak hesaplar.
Ağ, bir görüntüyü her ayrık eylem için bir Q değerine eşler. Yukarı/aşağı/sol/sağ için çıktı (Q(s,\mathrm{up}),Q(s,\mathrm{down}),Q(s,\mathrm{left}),Q(s,\mathrm{right}))'dır. Kayıp ise
burada D t tekrar oynatma tamponudur ve \theta^- hedef ağa aittir. Terminal geçişi için y=r kullanılır.
4. Tekrar oynatma deneyimi: ilişkili logları karıştırma
Robot logları sıralıdır: t ve t+1'deki kareler neredeyse aynı görünür. Bitişik karelerden oluşan bir mini grup, önyargılı bir gradyan üretir. DQN, (s_t,a_t,r_{t+1},s_{t+1},done)'ü bir tekrar oynatma tamponunda saklar ve rastgele mini grupları örnekler.
| Tampon tasarımı | Fayda | Maliyet |
|---|---|---|
| Tekdüze örnekleme | basit, zamansal korelasyonu zayıflatır | nadir hatalar daha az örneklenir |
| Öncelikli tekrar oynatma | büyük TD hatalarına odaklanır | önem düzeltmesi ve kayıt tutma gerektirir |
| Sabit boyutlu FIFO | değişen bir ortamı takip eder | eski nadir hatalar kaybolur |
| Bölüm depolama | başarı/başarısızlık bağlamını korur | gruplar haline gelebilir Tekrar ilişkilendirildi |
Öğrenme ön işlemesiyle denetim izini üzerine yazmayın. Ham sensör zaman damgalarını, istenen ve fiilen sınırlı eylemleri ve çarpışma bayraklarını normalleştirilmiş eğitim tensörlerinden ayrı olarak saklayın.
5. Hedef ağlar: Öğretmeni geciktirin
Güncellenen aynı ağ hem hedef y hem de tahmin Q_\theta'i aynı anda hesaplarsa, hedef her seferinde hareket eder. Hatayı küçültmeyi amaçlayan bir güncelleme, bir sonraki hedefi de hareket ettirir ve bu da sapmaya veya salınıma yol açar. DQN, Q_{\theta^-}'nın bir kopyasını tutar ve birkaç yüz veya bin güncellemede \theta^-\leftarrow\theta olarak senkronize eder.
Senkronizasyon aralığını uzatmak hedefi stabilize eder ancak onu eski hale getirir. Polyak ortalaması daha düzgün bir alternatiftir:
Seçimi, senkronizasyon aralığını, kaybı ve Q-değeri dağılımını deney yapılandırmasına ve günlüklerine kaydedin.
6. Aşırı Tahmin ve Çift DQN
Gürültülü tahminler üzerinden maksimum değer almak, yüksek görünen bir eylemi tercih etmeye yol açar. Çift DQN, eylem seçimini ve eylem değerlendirmesini birbirinden ayırır:
Bu, tüm önyargıları ortadan kaldırmaz, ancak genellikle kararsız Q büyümesini azaltır. Eksik bir terminal bayrağı, yanlış bir eylem maskesi veya tutarsız bir ödül ölçeği benzer görünebilir, bu nedenle algoritmaları değiştirmeden önce verileri inceleyin.
7. Bir robotta DQN'nin yeri
DQN, sonlu bir eylem kümesi varsayar. Direksiyon açısını veya eklem torkunu ayrıştırmak kaba bir gösterim için işe yarayabilir, ancak ince ızgaralar hızla büyür ve sarsıntılı komutlar oluşturur. DDPG, TD3 ve SAC, sürekli eylemleri doğrudan üretir ve genellikle tork veya hidrolik valf kontrolü için daha uygundur.
DQN, yüksek seviyeli seçimler için kullanışlı olmaya devam eder: sol veya sağ şerit, kavrama adayı A/B/C veya düşük/orta/yüksek hız modu. Ortaya çıkan referansı bir PID veya MPC katmanına verin. [PID Makale ve MPC makalesi, limitleri ve izleme mekanizmalarını alt katmanda nasıl tutacağınızı gösterir.
8. Ödül dışındaki eğrileri çizin
Başarı oranı, çarpışma oranı, bölüm uzunluğu, ortalama ve maksimum Q, TD hatası ve eylem sıklıklarını ortalama bölüm ödülüyle birlikte kaydedin. Artan çarpışma oranıyla birlikte artan ödül genellikle bir ödül veya sonlandırma hatasını gösterir. Düşen kayıpla birlikte patlayan bir Q değeri, ölçek uyumsuzluğunu, eksik terminal bayrağını veya yanlış bir bootstrap hedefini gösterir.
Değerlendirme ortamlarını eğitimden ayrı tutun. Aydınlatmayı, zemin sürtünmesini, yükü, engel düzenini ve iletişim gecikmesini değiştirin. Bir simülatörde başarılı olan ancak kamera pozlamasını, motor ölü bölgelerini veya pil düşüşünü göz ardı eden bir politika, donanımda DQN performansını göstermemiştir.
Uygulama kontrol listesi
-
Durumu, ayrık eylemi, ödülü, terminal bayrağını ve zaman damgasını tek bir geçiş olarak saklayın.
-
Düzeltin ve kaydedin ε, öğrenme oranı, indirim, tampon boyutu, parti boyutu ve hedef aralığı.
-
Deney kimliğine göre Q değerlerini, TD hatalarını, kayıpları, başarı/çarpışma oranlarını ve eylem sıklıklarını izleyin.
-
Tekrar oynatma ön işlemesini ham denetim günlüğünden ayrı tutun.
-
Eylem maskelerini, terminal durumlarını, zaman aşımını ve geçersiz sensör değerlerini birim testinden geçirin.
-
Limitlerin, bekçi köpeklerinin ve acil durdurmaların DQN'nin üzerinde kaldığını ve ağ kesintisi durumunda çalıştığını doğrulayın.
-
Görülmeyen koşulları ve hataları eğitimden uzak tutun.
Özet
Q-öğrenme, Bellman optimumluk denklemini bilinen bir dinamik model gerektirmeden bir tablo güncellemesine dönüştürür. DQN bu tabloyu bir ağ ile yaklaşık olarak gösterir, ancak deneyim tekrar oynatma ve hedef ağ, kendi kendine referans veren hedefin gürültüyü artırmasını önlemek için gereklidir. DQN kullanışlı bir ayrık karar katmanıdır; sürekli tork ve güvenlik diğer kontrolörlere aittir. TD hatalarını, çarpışmaları, gecikmeleri ve Q dağılımlarını izlemek—sadece Ödül—bir araştırma senaryosunu denetlenebilir bir robot sistemine dönüştürür.
Büyük bir Q değeri, büyük bir gerçekleşen ödülü garanti eder mi?
Q, beklenen getirinin bir tahminidir. Bilinmeyen durumlar veya eylemler büyük tahmin hatalarına neden olabilir.
Referanslar
- Watkins ve Dayan, Q-öğrenme (Makine Öğrenimi, 1992)
- Mnih vd., Derin pekiştirmeli öğrenme yoluyla insan düzeyinde kontrol (Nature, 2015)
- Hessel vd., Gökkuşağı: Derin Pekiştirmeli Öğrenmede İyileştirmelerin Birleştirilmesi (AAAI, 2018) )
- OpenAI Başlatılıyor — DQN arka planı
- Takviyeli Öğrenmenin Temelleri
Yorumlar
Lütfen önce giriş yapın.
Henüz veri yok.