abstract art blur bright

Politika Gradyanı Metodlarına Başlama Rehberi -3

Yazar: Umut Can Altın


Aktör Kritik Politika Gradyanı Yöntemi

RL çerçevesinde bakıldığı zaman politika ve değer fonksiyonu olmak üzere iki ana kalıbımız bulunmakta. Politika hareket(aksiyon) kararları alırken değer fonksiyonu Q veya V veya A değerlerini temsil etmektedir.

Bir önceki yazımızda Reinforce algoritmasında G değerini nasıl kullandığımızı hatırlatmak isterim :

Image for post

Bu G değeri t zamanından bölümün sonuna kadar alınan ödüllerin toplamını ifade etmekteydi. Yani politikamızı güncellemek için öncelikle bu politika üzerinden oyunu oynamamız gerekliydi.

Aktör kritik metodunda ise G yerine parametrelendirilmiş(fonksiyonel yaklaşım) Q değerini kullanmayı tercih ediyoruz. Bu bize hem anlık politika güncelleme imkanı sağlar hem de gradyan varyansını azaltır. Bu algoritmada aktör bizim politikamızı, kritik ise değer fonksiyonumuzu temsil eder.

Kısaca parametre güncellememiz artık şu şekildedir:

Image for post
Image for post

Şimdi yukarıda verdiğimiz algoritmayı satır satır okuyalım. Öncelikle ilk durum(s), theta(politika ağırlıkları) ve w(kritik ağırlıkları) rastgele başlatıldı.

Ardından bir zaman döngüsü içerisine girdik, bu döngü T zamanında yani ajanımız öldüğünde bitecek.

Bu döngü içerisinde öncelikle ortamda hareketimizi gerçekleştirdik ve ortam bize ödül ve yeni durum örneklemesi yaptı.

Ardından bir sonraki denklemde kullanmak amacıyla karşımıza gelen yeni durum için politikanın alacağı hareketi öğrendik.

Şimdi sırada politikamızı güncellemek var; politika parametremize politikaya ait öğrenme katsayısı ile çarpılmış şekilde kritikten gelen durum, aksiyon değeri ve politikanın gradyanın çarpımı eklendi. Bu sayede politikamızı kritikten aldığımız bilgiye göre güncellemiş olduk.

Ardından sıra Kritik ağımızı güncellemeye geldi; bu güncellemeyi temporal fark yöntemi ile yaptık. Yani kritiğin ağırlıklarına kritiğe ait öğrenme katsayısı ile çarpılmış şekilde temporal fark ve kritiğimizin gradyanı eklendi. Temporal fark ise ; durumda alınan hareketten dolayı sağlanan ödül + yeni durumda alınacak yeni hareketin indirilmiş(discounted) Q değeri- durumda alınmış hareketin Q değeri olarak hesaplandı. Ardından bir sonraki adım için yeni durum ve yeni hareket ataması yapıldı.

Bu şekilde eğitim devam ettirildi. Ancak farketmiş olacaksınız ki bu algoritma politikaya bağlı kalarak güncellemelerinde yeni hareket seçimi yapıyor yani on policy bir algoritma.

ref : https://lilianweng.github.io/lil-log/tag/reinforcement-learning

Bir Cevap Yazın

Başa dön