Derin Pekiştirmeli Öğrenme ile Pacman Oynanması
Bu noktadan sonra model başarımını arttırmak için küçük bir ip ucu kullanacağız. Yukarıda gösterilen modele verilen girdi RGB renk kanallarını içeren, 3 boyutlu bir matris formatıdır. Renk bilgileri evrişimsel katmanda bazen çok önemli öznitelikler oluşturabilir. Fakat bir atari oyununda zaman düzleminde elde edeceğimiz veriler bizim için daha anlamlıdır. Bunu sağlamak için RGB formatında bulunan girdiyi Grayscale formatına dönüştürüp tek kanallı ekran alıntısı elde ederiz. Sonradan ardışık zaman aralığında elde edilen resimler birleştirilip elde edilen çok boyutlu matris modele girdi olarak verilir. Aşağıdaki resimde bu yaklaşım gösterilmiştir.
Birleştirilmiş Ekran Alıntısı
Modele T anında bulunan RGB formatında girdi vermektense, farklı zaman aralıklarında bulunan birleştirilmiş ekran alıntısı vermek, modelin zaman düzleminde öznitelik çıkarımını sağlayacağı için daha verimli olmaktadır.
Son aşamada tasarlanan modeli optimize etmek kaldı. Herhangi bir derin öğrenme modelini optimize etmek için hata değerine ulaşmamız gerekmektedir. Bir sınıflandırma probleminde beklenen değerden tahmin edilen değerin farkını alarak hata değerine kolaylıkla ulaşabiliriz. Fakat DRL problemlerinde etiketli bir durumdan bahsetmek mümkün değildir. İstenilen hata değerine ulaşmak için aşağıdaki Bellman denkleminden faydalanılır.
Q ∗:State x Action → R (1)
Burada yukarıda anlatıldığı üzere S (Durum) ve A (Aksiyon) değerlerini alıp R ( ödül ) değerini döndüren Q fonksiyonunu kullanıyoruz. Amacımız en yüksek R değerini elde etmektir. Bunu aşağıdaki gibi gösterebiliriz.
π ∗ (s) = argmax Q ∗ (s,a) (2)
Ancak ajanın bulunduğu ortamdaki tüm bilgilere sahip değiliz dolayısı ile bir Q* değerine erişim sağlayamayız. Fakat yapay sinir ağları ile bir sonraki adımı
oluşturabiliriz. Burada aşağıdaki Bellman denkleminden faydalanabiliriz.
Qπ (s,a) = r + γQπ(s′,π(s′)) (3)
Her iki tarafın farkını alarak zamansal hataya ulaşmış oluruz. Böylelikle ağı eğitmek için gerekli hata değerini bulmuş oluruz.
δ = Q(s,a) − (r + γmaxQ(s′,a)) (4)
Görüldüğü üzere 3. denklemde yer alan Bellman eşitliği ile δ hata değerini elde edebildik. Buradan sonra yapılması gereken probleme uygun optimizasyon algoritması kullanılmasıdır. Stochastic gradient descent (SGD) algoritması ile iki gün boyunca eğitilen model aşağıdaki gibi sonuç vermektedir.
Model toplamda 2830 ödül değeri elde edebilmiştir. Bu oyuna hemen hemen yeni başlayan kişiler arasında yaptığım denemelerde 3100 ortalama ödül değerini aldıklarını gördüm. Bu açıdan modelin elde ettiği değer kabul edilebilir aralıktadır. Uygulama kodlarını github hesabımda bulabilirsiniz.
Great views yes AI seems to be booming in many industries, Those who have adopted AI into their…
Why we need Technology Neutrality in Legislation
Landing A Rocket With Simple Reinforcement Learning
← How to Hire a Remote Machine Learning Engineer for AI Development?
CHATBOT CHACA — SOLUSI PENCATATAN TRANSAKSI DI ERA DIGITAL →