Takviye öğrenimindeki durumlar nasıl tanımlanır?


14

Takviye öğrenimini ve bunun çeşitlerini inceliyorum. Algoritmaların nasıl çalıştığını ve bir MDP'ye nasıl uygulandıklarını anlamaya başlıyorum. Anlamadığım şey, MDP'nin durumlarını tanımlama sürecidir. Çoğu örnek ve öğreticide, bir ızgara veya benzeri bir kare gibi basit bir şeyi temsil ederler.

Yürümeyi öğrenen bir robot gibi daha karmaşık sorunlar için, bu durumları tanımlamaya nasıl devam edersiniz? Bu durumları "öğrenmek" için öğrenme veya sınıflandırma algoritmalarını kullanabilir misiniz?

Yanıtlar:


14

Takviyeli Öğrenmede (RL) durum temsili sorunu, denetimli veya denetimsiz öğrenmede özellik gösterimi, özellik seçimi ve özellik mühendisliği sorunlarına benzer.

RL'nin temellerini öğreten literatür, çok basit ortamları kullanma eğilimindedir, böylece tüm durumlar numaralandırılabilir. Bu, değer tahminlerini, anlaşılması ve uygulanması daha kolay olan bir tablodaki temel yuvarlama ortalamalarına basitleştirir. Tablo şeklindeki öğrenme algoritmalarının makul teorik yakınsama garantileri de vardır. olabilir diyelim ki, vardır, az birkaç milyon devletler daha sonra bu değer çalışıyor böylece sorununuzu basitleştirmek.

En ilginç kontrol problemleri, bunları takdir etseniz bile, bu sayıda duruma uymayacaktır. Bunun nedeni, " boyutsallığın laneti " " dir. Bu problemler için tipik olarak durumunuzu farklı özelliklerin bir vektörü olarak temsil edersiniz - örneğin bir robot, çeşitli pozisyonlar, açılar, mekanik parçaların hızları için. Denetimli öğrenmede olduğu gibi, bunları belirli bir öğrenme süreciyle kullanmak için tedavi etmek isteyebilirsiniz. Örneğin, tipik olarak hepsinin sayısal olmasını isteyeceksiniz ve nöral bir ağ kullanmak istiyorsanız, bunları standart bir aralığa normalleştirmelisiniz (örn. -1 ila 1).

Diğer makine öğrenimi için geçerli olan yukarıdaki endişelere ek olarak, RL için, Markov Özelliği ile de ilgilenmeniz gerekir - devletin yeterli bilgi sağladığı, böylece bir sonraki beklenen ödülleri ve bir eylem verildiğinde sonraki durumları doğru bir şekilde tahmin edebilmeniz, ek bilgiye ihtiyaç duymadan. Bunun mükemmel olması gerekmez, örneğin tekerlekli bir robot için hava yoğunluğu veya sıcaklık değişimlerinden kaynaklanan küçük farklılıklar genellikle navigasyonu üzerinde büyük bir etkiye sahip olmaz ve göz ardı edilebilir. RL teorisine bağlı kalırken esasen rasgele olan herhangi bir faktör de göz ardı edilebilir - ajanı genel olarak daha az optimal hale getirebilir, ancak teori yine de işe yarayacaktır.

Sonucu etkileyen tutarlı bir bilinmeyen faktör varsa ve mantıksal olarak çıkarılabilir - belki de devlet veya eylemler geçmişinden - ancak bunları devlet temsilinden hariç tuttuysanız, daha ciddi bir sorununuz olabilir ve temsilci öğrenemeyebilir .

Burada gözlem ve devlet arasındaki farkı belirtmek gerekir . Gözlem, toplayabileceğiniz bazı verilerdir. Örneğin, robotunuzda eklemlerinin konumlarını geri besleyen sensörler olabilir. Devletin Markov Mülkü'ne sahip olması gerektiğinden, tek bir ham gözlem uygun bir durum oluşturmak için yeterli veri olmayabilir. Bu durumda, kullanılabilir verilerden daha iyi bir durum oluşturmak için alan adı bilgilerinizi uygulayabilir veya kısmen gözlenebilir MDP'ler (POMDP'ler) için tasarlanmış teknikleri kullanmayı deneyebilirsiniz - bunlar etkin bir şekilde devlet verilerinin eksik kısımlarını oluşturmaya çalışır istatistiksel. Bunun için bir RNN veya gizli markov modeli ("inanç durumu" olarak da bilinir) kullanabilirsiniz ve bir şekilde "istediğiniz gibi "bu durumları " öğrenmek için öğrenme veya sınıflandırma algoritmaları .

Son olarak, kullanmak istediğiniz yaklaşım modelinin türünü göz önünde bulundurmanız gerekir. Benzer bir yaklaşım, denetimli öğrenme için de geçerlidir:

  • Etki alanı bilgisine dayalı olarak geliştirilen özelliklere sahip basit bir doğrusal regresyon çok iyi olabilir. Doğrusal yaklaşımın çalışması için farklı durum gösterimlerini denemek için çok çalışmanız gerekebilir. Avantajı, bu daha basit yaklaşımın kararlılık sorunlarına karşı doğrusal olmayan yaklaşımdan daha sağlam olmasıdır

  • Çok katmanlı bir sinir ağı gibi daha karmaşık bir doğrusal olmayan fonksiyon tahmincisi. Daha "ham" bir durum vektörü ile beslenebilir ve gizli katmanların iyi tahminlere yol açan bir yapı veya temsil bulacağını umabilirsiniz. Bazı yönlerden, bu da "bu durumları " öğrenmek için " öğrenme veya sınıflandırma algoritmalarıdır ", ancak bir RNN veya HMM'den farklı bir şekilde. Durumunuz doğal olarak bir ekran görüntüsü olarak ifade edilirse bu mantıklı bir yaklaşım olabilir - görüntü verileri için özellik mühendisliğini elle anlamak çok zordur.

DeepMind tarafından Atari DQN çalışma ekibinin özelliği mühendisliği bir arada kullanılan ve sonuçlar elde etmek için derin sinir ağı dayanarak. Özellik mühendisliği, görüntüyü alt ölçeklendirmeyi, gri ölçeğe indirmeyi ve - daha da önemlisi Markov Özelliği için - tek bir durumu temsil etmek için arka arkaya dört kare kullanarak, durum gösterimlerinde nesnelerin hızı hakkında bilgi bulunmasını içeriyordu. DNN daha sonra görüntüleri durum değerleri hakkında tahminlerde bulunmak için kullanılabilecek daha üst düzey özelliklere dönüştürdü.


3

Karmaşık sorunların modellenmesine yönelik ortak bir erken yaklaşım, ayrıklaştırmadır . Temel düzeyde, bu karmaşık ve sürekli bir alanı bir ızgaraya böler. Ardından, ayrık, doğrusal, uzaylar için tasarlanmış klasik RL tekniklerinden herhangi birini kullanabilirsiniz. Ancak, tahmin edebileceğiniz gibi, eğer dikkatli değilseniz, bu çok sorun yaratabilir!

Sutton & Barto'nun klasik kitabı Takviye Öğrenimi , bu konuda başka yollar için bazı önerilere sahiptir. Bunlardan biri, yeni, ikinci baskının 9.5.4. Bölümünde yer alan karo kodlamasıdır . Döşeme kodlamasında, her biri farklı ızgara aralığına sahip çok sayıda ızgara üretiyoruz. Ardından ızgaraları üst üste bindiriyoruz. Bu, ayrık bölgeler muntazam olmayan şekiller oluşturur ve çeşitli sorunlar için iyi çalışabilir.

Bölüm 9.5 ayrıca, radyal bazlı fonksiyonlar ve kaba kodlamalar dahil, sürekli bir boşluğu ayrı bir MDP'ye kodlamanın çeşitli başka yollarını da kapsar. Bunu kontrol et!

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.