Takviye öğreniminde önyükleme tam olarak nedir?


23

Görünüşe göre, takviye öğrenmede, zamansal fark (TD) yöntemi bir önyükleme yöntemidir. Diğer yandan, Monte Carlo yöntemleri önyükleme yöntemi değildir.

RL'de önyükleme tam olarak nedir? RL'de önyükleme yöntemi nedir?

Yanıtlar:


22

RL'de önyükleme " aynı adımda tahmin edilen değer için güncelleme adımında bir veya daha fazla tahmini değer kullanılarak" olarak okunabilir .

Çoğu TD güncelleme kuralında, bu SARSA (0) güncellemesi gibi bir şey göreceksiniz:

Q(s,a)Q(s,a)+α(Rt+1+γQ(s,a)Q(s,a))

Değeri gerçek değeri için bir tahmindir , ve aynı zamanda TD hedefi olarak adlandırılır. Bu bir bootstrap yöntemidir, çünkü kısmen başka bir Q değerini güncellemek için bir Q değeri kullanıyoruz. biçiminde , adımın hemen ödülü olarak ve aynı zamanda durum geçişinde küçük gözlemlenen gerçek veriler vardır .Rt+1+γQ(s,a)Q(s,a)Rt+1ss

Eşdeğer güncelleme kuralının olabileceği Monte Carlo ile kontrast:

Q(s,a)Q(s,a)+α(GtQ(s,a))

Burada , zamanındaki toplam indirilmiş ödüldü, bu güncellemede, durum başladığını ve eylemi gerçekleştirdiğini varsayarak , bölümün sonuna kadar mevcut politikayı izledi. Teknik olarak, ; burada , terminal ödülünün ve durumunun zaman adımıdır. Özellikle, bu hedef değer hiç mevcut tahminleri (diğer Q değerlerinden) kullanmaz, sadece ortamdan bir dizi gözlem (yani ödül) kullanır. Bu nedenle, teknik olarak örneği olduğu için, gerçek değerinin tarafsız bir tahmini olması garanti edilir.GttsaGt=k=0Tt1γkRt+k+1TQ ( s , a ) Q ( s , a )Q(s,a)Q(s,a).

Bootstrapping'in ana dezavantajı, (veya ) başlangıç ​​değerleriniz ne olursa olsun önyargılı olmasıdır . Bunlar büyük olasılıkla yanlıştır ve güncelleme sistemi çok fazla kendi kendine referans ve yeterli gerçek veri nedeniyle bir bütün olarak kararsız olabilir - bu sinir ağları kullanan politika dışı öğrenme (örneğin Q-öğrenme) ile ilgili bir sorundur.Q(s,a)V(s)

Önyükleme olmadan, daha uzun yörüngeler kullanarak, genellikle yüksek varyans vardır , bu da pratikte, tahminler yakınsamadan önce daha fazla örneğe ihtiyacınız olduğu anlamına gelir. Bu nedenle, önyükleme ile ilgili sorunlara rağmen, eğer işe yarayabilirse, daha hızlı öğrenebilir ve genellikle Monte Carlo yaklaşımlarına göre tercih edilir.

Monte Carlo örnek tabanlı yöntemler ve farklı uzunluktaki yörüngelerden elde edilen sonuçların bir karışımını kullanarak önyükleme yapan tek adımlı TD yöntemleri arasında uzlaşabilirsiniz. Buna TD ( ) öğrenmeλ denir ve SARSA ( ) veya Q ( ) gibi çeşitli özel yöntemler vardır .λλ


1
Bu muhtemelen başka bir soru olmalı. Ancak, cevaplamak istiyorsanız, neden ve için tahmin yapılır ? Q ( s , a )Rt+1+γQ(s,a)Q(s,a)
nbro

1
@nbro: Çünkü yakınsamada (bu denklemler ve çoğu RL, MDP'ler için Bellman denklemleri tarafından yönlendirilir). Devlet ile başlayan oluştu gerçek bir olay bakarak ve eylem sonra aslında bu beklenti numune edilir. Sorun, için sahip olduğunuz değerin büyük olasılıkla henüz yakınlaştırılmamış olması nedeniyle, örnek önyargılıdır. s bir Q ( S t + 1 , A t + 1 )Q(s,a)=E[Rt+1+γQ(St+1,At+1)|St=s,At=a]saQ(St+1,At+1)
Neil Slater

1
Önyüklemeye geçmeden önce MC yöntemlerini fazda yanma olarak kullanmasını engelleyen nedir ? Yoksa bu bir alt vakası olarak düşünülebilir mi? λTD
n1k31t4

1
@ n1k31t4: Hiçbir şey bunu yapmayı engellemiyor ve geçerli bir RL yaklaşımı olmalı. TD'den ( ) farklı olurdu , ancak her iki algoritmadan da iyi özellikler almaya çalışmak fikri ile motive oldu. Bunu denemeniz ve öğrenme verimliliğini TD ( ) ile karşılaştırmanız gerekir - ayarlamak için hala hiper bir parametreniz vardır, bu da MC'yi çalıştıracak bölüm sayısıdır. Daha genel bir sürüm, değişmesine izin vermek - ile başlayın ve örneğin veya en uygun değer gibi görünen herhangi bir değere düşürün . Bununla birlikte, bunun 2 hiper parametresi, bozulma oranı ve hedefiλ λ λ = 1 0,4 λλλλλ=10.4λ
Neil Slater

@NeilSlater, önyükleme kullanırken yakınsak olabilir mi? Neden Q (s ', a') sadece keyfi bir tahmin olduğu için Q (s, a) tahminini bozduğunu anlayamıyorum. Ayrıca, MC neden TD ile karşılaştırıldığında yüksek bir varyansa sahiptir?
d56

4

Genel olarak, RL'deki önyükleme, bir değeri bazı kesin değerlere değil, bazı tahminlere göre güncellediğiniz anlamına gelir . Örneğin

Artımlı Monte Carlo Politika Değerlendirme güncellemeleri:

V(St)=V(St)+α(GtV(St))

TD (0) Politika Değerlendirme güncellemeleri:

V(St)=V(St)+α(Rt+1+γV(St+1)V(St))

TD (0) 'de, geri dönüş durumu başlayarak olan tahmini ile (bootstrap) MC kullandığımız ise tam dönüş .R t + 1 + γ V ( S t + 1 ) G tsRt+1+γV(St+1) Gt

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.