Deneyimin yeniden yürütülmesi neden ilke dışı algoritma gerektirir?


12

DQN "Atari'yi Derin Takviye Öğrenimi ile Oynamak " başlıklı makalede şunları söyledi:

Deneyim tekrarıyla öğrenirken, Q-öğrenme seçimini motive eden politika dışı (mevcut parametrelerimiz örneği oluşturmak için kullanılanlardan farklı olduğu için) öğrenmenin gerekli olduğunu unutmayın.

Ne anlama geldiğini tam olarak anlamadım. Ne Sarsa kullanmak ve eylemi hatırlamıyorsam a'biz almak olan eylem için s'biz DQN yaptığımız gibi bizim bellekte, ve sonra örnek toplu ondan ve güncelleme Q? Ve aktör-eleştirel yöntemler (spesifik olarak A3C) deneyim tekrarını kullanabilir mi? Değilse, neden?

Yanıtlar:


2

SARSA gibi politika üzerine yöntemler, her eyaletteki eylemlerin, genellikle ödüllerden yararlanma eğilimi olan ajanın mevcut politikasına göre seçilmesini beklemektedir.

Bunu yaptığımızda, politikamızı son ödüllere göre güncellediğimizde politika iyileşir. Burada özellikle, belirli bir durumun / eylemin değerini tahmin eden NN parametrelerini güncellerler).

Ancak, politikamızı depolanan geçişlere dayalı olarak güncellersek, deneyim tekrarında olduğu gibi, zaman içinde geliştiği için artık geçerli olmayan bir politikadan eylemleri değerlendiririz, böylece artık politikada kalmaz.

Q değerleri, geçerli temsilci politikasını izleyen bir eyaletten alacağınız gelecekteki ödüllere göre değerlendirilir.

Ancak, artık farklı bir politika izlediğiniz için bu doğru değil. Bu nedenle, epsilon açgözlü bir yaklaşıma dayanarak araştıran ortak bir politika dışı yöntem kullanıyorlar.


Teşekkür ederim, ama yine de bunu anlamıyorum: TD (0) güncelleme kuralını kullanırsam, bir geçişi hatırladım (s, a, r, s')ve bu deneyimi tekrarlamak için çıkardım; Şimdi benim şimdiki politikası üstlenmesi gerektiğini söyledi varsayalım a'üzerinde s'o zaman işareti, Q(s, a)olmalı r + Q(s', a')ve gradyan arttırma yapmak. Sanırım politika üzerinde tekrar oynuyorum. Süreçle ilgili bir sorun var mı?
DarkZero

Sorun şu ki, şimdi eskisinden farklı bir politika kullandığınız ve bu eylem eski politika kullanılarak seçildiğinden, bunun politikada olduğunu söyleyemezsiniz: bir politikanın Q değerini doğru olarak değerlendirmek için aynı eylemle birçok eylemde bulunmalısınız. Burada, geçerli bir politikayı, o politikanın seçemediği bir işlemi kullanarak değerlendirmeye çalışıyorsunuz.
dante

Peki burada politika dışı yaptığımı söyleyebilir miyim? Teoride bunu yapmanın sonucu ne olacak?
DarkZero

1
Sizi doğru bulursam, ya Q-learning gibi politika dışı yöntemleri kullanmalısınız, daima gelecekteki beklenen ödül olarak maksimum Q'yu seçin. Mevcut eylemin ne olduğu önemli değil, çünkü gelecek için daima maksimum Q'yu seçerseniz, Q'nun optimal politika altında Q'ya yaklaşacağı Q öğrenmesinin bir özelliğidir; Veya açık bir şekilde bir politikayı izlemeli, bu politika aracılığıyla gelecekteki eylemleri de içeren her eylemi seçmeli ve politika üzerinde güncelleme yapmalıdır. Bu doğru mu?
DarkZero

1
Şimdiye kadar, politika üzerinde yöntemlerin neden iyi olduğunu anlayamıyorum. Politika dışı yöntemler daha fazla özgürlüğe sahip gibi görünmekte ve optimal politikayı kendi başına keşfedebilmektedir. Statistics.stackexchange.com/questions/265354/… 'a da cevap verir misiniz? Tüm tartışmalar için çok teşekkür ederim.
DarkZero

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.