MAKİNE ÖĞRENMESİNDE PEKİŞTİRMELİ ÖĞRENME

Yapay zekâ fırtınası 2022 yılının Kasım ayında ChatGPT ile başladı, daha sonra sektörün tüm devlerinden karşı ataklar geldi, kendi yapay zekâ uygulamalarını birer birer kullanıcılara sunmaya başladılar. Bunun yanında yüzlerce start-up şirket ki bunlardan bazıları 3-4 milyar dolar değerine ulaşmış durumda, değişik konularda geliştirdikleri yapay zekâ uygulamalarını pazara sundular. Şu anda dünyada tam bir yapay zekâ uygulamaları enflasyonu yaşanıyor, zaman içinde hangisinin işe yarar hangisinin içinin boş olduğu ortaya çıkacak. Yapay zekâ alanında çalışan mühendislerin maaşları da bu arada tepe değerine ulaşmış durumda. Bizim üniversitelerimizde yapay zekâ eğitim programları var mı bilmiyorum ama varsa da yine biraz geç kalınmış durumda. Geleceği tahmin etmekte, ona göre saflarımızı belirlemekte pek iyi değiliz.

Geçen sayılarda makine öğrenmesinde en çok kullanılan yöntemlerden olan denetimli öğrenme ve denetimsiz öğrenme konuları üstüne yazılar yazmıştık, “Makine Öğrenmesinde Denetimli Öğrenme”[1] ve Makine Öğrenmesinde Denetimsiz Öğrenme”[2] başlıklı yazılara aşağıdaki linklerden ulaşabilirsiniz. Bu yazıda da pekiştirmeli öğrenme veya takviyeli öğrenme diye Türkçeye çevirebileceğimiz reinforcement learning konusuna değineceğiz.

Daha önce de belirttiğimiz gibi denetimli öğrenme algoritmaları ile denetimsiz öğrenme algoritmaları arasındaki en büyük fark makine öğrenmesi sisteminin eğitim aşamasında kullanılan veri setlerinin yapılarının farklı olmasıdır. Denetimli öğrenmede etiketli veri setleri, denetimsiz öğrenme de ise herhangi bir kategorizasyon veya geri bildirim olmaksızın etiketlenmemiş veri setleri kullanılıyor.

Pekiştirmeli öğrenme de makine öğrenmesinin alt dallarından biridir. Pekiştirmeli veya takviyeli öğrenme, kümülatif ödül kavramını en üst düzeye çıkarmak için akıllı aracıların, algoritmaların bir ortamda nasıl harekete geçmesi gerektiğiyle ilgili bir makine öğrenimi alanıdır. Pekiştirmeli öğrenmede, bir algoritma bir karar alarak etrafındaki çevre ile etkileşime girer. Algoritma, aldığı karar istenen sonuçlara yol açmışsa bir ödül ve istenmeyen sonuçlara yol açmışsa bir ceza alır. Algoritma, zaman içinde beklenen ödülü en üst düzeye çıkaran kararları almayı öğrenir.

Pekiştirmeli öğrenmede kullanılan veri setleri ise belirli uygulama ve öğrenme yaklaşımına bağlı olarak çok değişebilir. Pekiştirmeli öğrenmede kullanılan bazı yaygın veri kümesi türleri ise doğrudan sensörlerden, kameralardan veya diğer kaynaklardan toplanan gerçek dünya veri setleri, uzman  kullanıcılarından gelen bilgiler ışığında hazırlanan veri setleri, gerçek dünya senaryolarını taklit etmek için tasarlanmış bilgisayar tarafından oluşturulan simülasyon veri setleri, algoritmanın ortamı keşfederek ve onunla etkileşim kurarak kendi kendine oluşturduğu veri setleri, algoritmaya eylemlerinin arzu edilirliği hakkında geri bildirim sağlayan ve bazen ödül işlevini insan tercihlerinden veya davranışından tanımlamak için kullanılan veri setleri olabilir.

Pekiştirmeli öğrenme, özellikle oyun stratejileri geliştirmekte, robot hareketlerini kontrol etmekte, finans alanında kârı maksimize etmekte, insansız taşıtlarda ve özellikle doğal dil işleme uygulamalarında çok başarılı bir şekilde kullanılmaktadır. Meşhur ChatGPT de pekiştirmeli öğrenme metotlarını kullanmaktadır. Makine öğrenmesi alanlarının en karışık ve başarılı alanlarından birisidir.

Pekiştirmeli öğrenmeye bir örnek verecek olursak mesela tic-tac-toe oyununun nasıl oynanacağını öğrenmeye çalışan bir algoritma olsun. Algoritma hamlelerini rastgele yaparak başlar ve bir oyun kazandığı için 1, bir oyunu kaybettiği için -1 ve bir oyun berabere kaldığı için 0 ödül alır. Algoritma zamanla oyunların kazanılmasına yol açan hamleleri yapmayı ve oyunların kaybedilmesine yol açan hamlelerden kaçınmayı öğrenecektir. Yeteri kadar sayıda oyun oynadığında yani eğitildiğinde ise bu algoritmayı artık yenmek mümkün olamaz.

Pekiştirmeli öğrenme metodu diğer makine öğrenimi yöntemleriyle çözülmesi zor veya imkânsız olan sorunları çözmek için kullanılabilir. Pekiştirmeli öğrenme metodu deneyimden öğrenmek için faydalandığından kullanılabilir açıkça yeni programlamaya gereksinim duymadan zaman içinde kendi kendine gelişebileceği anlamına geliyor. Sorunları gerçek zamanlı olarak çözmek için kullanılabiliyor.

Pekiştirmeli öğrenme metodu bazen istenmeyen sonuçlara da varabiliyor, algoritmanın davranışı öngörülemez olabilir Geçenlerde bir haberde alacağı ödülü maksimize etmek için kendine, hareketlerini limitleyici emirler gönderen kontrol kulesini bombalayan insansız hava aracından bahsediliyordu, bu araç da bu tür bir makine öğrenmesi metodu kullanıyor olmalı.

Pekiştirmeli öğrenme metodunda kullanılan birçok algoritma var, bunlardan en önemlileri:

  • Q-öğrenme ve değer yineleme algoritmaları
  • Markov karar süreçleri (MDP'ler)
  • Politika gradyanları ve derin pekiştirmeli öğrenme algoritmalarıdır.

Bu algoritmaların detayları bu yazının kapsamını aşmaktadır ama ilgilenen okuyucularla herzaman beraber çalışma olanağımız olabilir.

Yapay zekâ konusu tüm dünyada çok hızlı bir şekilde gelişiyor. Dünyanın bütün bilişim devleri yapay zekâ ürünlerini portföylerine alarak trilyon dolarlık değerlere ulaşıyorlar. Günümüzün sihirli değneği yapay zekâ, değdiği yeri altına çeviriyor, biz farkında olmasak da.


[1] Makine Öğrenmesinde Denetimli Öğrenme https://ictmedia.com.tr/yazar/icerik/819

[2] Makine Öğrenmesinde Denetimsiz Öğrenme https://ictmedia.com.tr/yazar/icerik/834