Herkese merhaba ve tekrar hoş geldiniz.
Son derste ortamımızı oluşturmaya başladık.
Burada postacımızın zorluğumuzu çözmek için yinelemesini istediğimiz 11'e 11'lik bir ızgaramız var.
Artık şebekeye sahip olduktan sonra düşünmeye başlamak istiyoruz.
Temsilcimiz için de eylemlere ihtiyacımız var ve bunları gerçekten hızlı bir şekilde sileceğim.
Bu hücrelere ihtiyacımız yok.
Sadece biraz boşluk olsun istedim.
Sadece görüntülemeyi kolaylaştırıyor.
Bana 1/2 verin, bunları sileyim ve bunu burada bırakalım.
Evet.
Elimizdeki bir metni bıraktım ve eylemlerimizi dik aşağı ve sol olarak ayarlamak istiyoruz.
Python ile bu oldukça basittir.
Listeyi oluşturabilir ve eylemlerimizi belirleyebiliriz.
Eylemlerimiz eşit olacak.
Sağdan yukarı, soldan aşağı iki tane var.
Sağa ve sola doğru ayarlayalım.
Temsilcimize bu eylemlerle labirentte manevra yapabilmesi için biraz yetenek vermemiz gerekiyor.
Buna ek olarak, ödüller de belirlemeye başlamalıyız.
Şimdi, işin biraz daha zorlaşmaya başlayacağı yer burasıdır çünkü ortamımızın
farklı durumlarını, bu -100 ve negatif bir adımları veya bu durum değerlerini ızgaradaki
her kareye atayabilmek istediğimiz anlamda farklı durumları ayarlamamız gerekir.
Dolayısıyla, temsilcimizin şehrimizdeki her bir eyaleti veya konumu öğrenmesine yardımcı olmak için bir ödül değerine sahip olmak istiyoruz.
Ajanımız böyle öğrenecek.
Yani ajan herhangi bir beyaz kareden başlayabilir, ancak hedefi her zaman aynıdır.
Q Learning Native Rewards kapsamında toplam ödüllerini en üst düzeye çıkarmak istiyorum.
Bunların ceza olarak adlandırıldığını biliyoruz.
Bunlar hedef dışındaki tüm durumlar için kullanılır.
Gözü, cezaları en aza indirerek hedefe giden en kısa yolu belirlemeye teşvik eden bu optimal
politikayı bu şekilde oluşturacağız.
Tamam.
Ayrıca, kümülatif ödülleri en üst düzeye çıkarmak için, yapay zeka ajanının ürün paketleme alanı, Yeşil Meydanımız
ve postacının seyahat edebileceği şehrin diğer yerleri arasındaki en kısa yolu bulması
gerekecektir.
Beyaz Kareler ajanları, şehir sınırlarından herhangi birine çarpmaktan kaçınmayı öğrenecekler.
Bunlar -100'de gördüğümüz gibi siyah karelerdir.
Onlardan uzak durmak istiyoruz.
Daha fazla cezaları var.
Bunu yapmak için, yukarıda satırlarımızla oluşturduğumuz ortam olan ızgaramız var,
ancak bu değerleri de ona atamak istiyoruz.
Bunu yapmak için, NumPy kullanabileceğimizi ve ayrıca ortam satırları ve ortam sütunları için Native 100 olarak
ayarlamaya başlayabileceğimizi nasıl belirleyebileceğimizi düşünmeye çalışalım.
Böylece ortam satırlarımız ve ortam sütunlarımız olur.
Öyleyse bu ödülleri num pi full'a eşit olarak adlandıralım ve ortam satırlarımızı ortam sütunlarımızı geçirelim ve değerlerimizi
ayarlamak için -100 ile başlayabiliriz.
Buna ek olarak, ödül penceremizi de şu şekilde ayarlamak istiyoruz.
Sıfır ve beş indekslerini kullanın.
100'e eşittir.
Ve bu birazdan anlam kazanacak.
Bu yüzden Yeşil Meydanımıza bir göz atıyoruz.
Sıfır ve beşimiz var.
Yeşil Karemizi 100 olarak ayarladık ve değeri ayarlamak için bunları veya bu konumu aldık.
Şimdi, üzerinden geçebilmemiz için bir sonraki kod parçasını yapıştıracağım.
Bu yüzden her adımı yazarken beni izlemek zorunda değilsiniz çünkü biraz tekrarlayıcı oluyor.
Ve şimdi beyaz alanlarımız var.
Ödül puanlarımız için notumuzu belirleyelim.
Ve bu kod parçasında, bir sözlük kullanıyoruz ve değerlerimizin her birini sözlüklerimiz içinde ayarlıyoruz.
Yani bizim koridorlarımız var.
Bunu her bir satır olarak düşünüyoruz ve dilimleme ile indeksimizi birden dokuza kadar ayarlayabiliyoruz.
Ve bu değerleri ayarlamak için for döngümüzle birlikte bir yineleme kullanmak istiyoruz.
Bunu yaparken, birden ona kadar, bir, yedi ve dokuza bakarsak ve bunu kullanarak, ortamımızda çalıştığımız
birden ona kadar olan aralığımızdaki satır dizinini ayarlayabileceğimizi göreceksiniz.
Sütun indeksini ayarlayabiliriz.
Sözlüğümüzle satır indeksimizin koridorlarında, ödül satır indeksimiz ve sütun indeksimiz, negatif bir olarak
ayarlayabiliriz.
Yani bunun yaptığı şey, esasen her bir spesifik ürüne bakarsak, burada bir aralık alırsak, örneğin, aralığımızdaki
I için dokuzuncu koridor, tüm ortam boyunca veya ortamımızdaki her bir durumda negatif bir setimiz
var.
Sekiz için üç ve yedi var.
Yukarı kaydırabilirsek, üç ve yedide, hepsi negatif olacağı için negatif bir ayarladığımızı,
100'ün negatif yüze ayarlandığını ve bu yinelemeyle bu ödülleri ayarlayabileceğimizi veya koridorlarımızda
tanımladığımız her durumu negatif bir olarak ayarlayabileceğimizi görebiliriz.
Bu işi çok kolaylaştırıyor.
Daha fazla mantık veya belki daha ayrıntılı fonksiyonlar veya deyimler yazmak zorunda kalmak yerine, bu değerleri yineleyebilir
ve ayarlayabiliriz.
Daha sonra ortamı değiştirmek isterseniz, deneyleri keşfetmek için bir dakikanızı ayırmanızı şiddetle tavsiye ederim.
Bu çözümü çalıştırdıktan sonra, bu politikaları öğrenmeye ve pekiştirmeye yardımcı olmak için harika bir yoldur.
Ancak bu şekillenmeye başlıyor ve yapabileceğimiz harika bir şey de bunu gerçekten görselleştirebilmemiz.
Ödül olarak dört sıra yapalım.
Satırı yazdırın ve bunu yazdıralım ve hücreleri gerçekten yeniden çalıştırmam gerekebileceğini görebiliriz.
Özür dilerim.
Burada çalışan not defterine bağlı değildim.
Yarım ver.
Hata verecek.
Geri dönüp hücreleri yeniden çalıştırmam gerekiyor.
Şunu hızlıca bir gözden geçireyim.
NumPy'yi içe aktarmak istiyorum.
Aslında sadece.
Oh, özür dilerim.
Şunu bir gözden geçireyim ve aşağıya inelim.
Çevremizi yönetmek istiyoruz.
Eylemlerimizi yürütmek istiyoruz.
Diğerleri sadece metin olduğu için onlara ihtiyacımız yok.
Ama sizlerin referans alabilmeniz için bunu da eklemek istiyorum.
Ödül puanlarımızı istiyoruz ve nihayet bunu görselleştirmek istiyoruz.
Görselleştirmeyi, ortamımızın numpy'deki gerçek sayısal temsilini görebiliriz.
Gerçekten harika.
Böylece ortamımızı kurmuş olduk.
Harika iş.
Umarım bunu faydalı buluyorsunuzdur.
Şimdi bu konuyu burada kapatacağız çünkü bir sonraki derste modeli eğitmeye başlayacağız.
Yani bu, temsilcilerimizin eylemlerini, çevremizi, ödüllerimizi ve cezalarımızı belirlemek içindi.
Bu, temsilcinin Q öğrenimi içinde en uygun politikayı oluşturmasına yardımcı olacaktır.
Genel olarak, bu görsel temsili veya bu görüntüyü oluşturduk ve satırımızın çıktısını alırsak
burada görebiliriz.
İnanılmaz.
Tamam.
Saçmalamaya devam etmeyeceğim.
Bir sonraki derste bu konuyu burada kapatalım.
Modeli eğitmeye başlayalım.
Bir sonraki derste görüşürüz.