Çok Silahlı Haydutlara Giriş

TensorFlow.org'da görüntüleyin Google Colab'da çalıştırın Kaynağı GitHub'da görüntüleyin Not defterini indir

Tanıtım

Çok Silahlı Haydut (MAB), bir aracının uzun vadede kümülatif ödülünü en üst düzeye çıkarmak için eylemleri (silahları) seçmesi gereken bir Makine Öğrenimi çerçevesidir. Her turda aracı, mevcut durum (bağlam) hakkında bazı bilgiler alır, ardından bu bilgilere ve önceki turlarda edindiği deneyime dayanarak bir eylem seçer. Her turun sonunda, temsilci seçilen eylemle ilişkili ödülü alır.

Belki en saf örneği MAB adını veren bu sorun şu: biz karşı karşıya olduğunu hayal k slot makineleri (tek kollu haydutlar) ve çok fazla para kaybetme değil iken biz, bir iyi ödeme vardır hangi şekil gerekir.

Çok Silahlı Haydutlar

Her makineyi bir kez denemek ve ardından en çok ödeyen olanı seçmek iyi bir strateji olmayacaktır: Temsilci, başlangıçta şanslı bir sonucu olan ancak genel olarak optimal olmayan bir makine seçmeye düşebilir. Bunun yerine, temsilci, onlar hakkında daha fazla bilgi toplamak için çok iyi görünmeyen makineleri seçmeye tekrar tekrar gelmelidir. Bu, Çok Silahlı Eşkıyalarda ana zorluktur: ajan, optimal eylemleri gözden kaçırmamak için önceki bilgileri kullanmak ve keşfetmek arasında doğru karışımı bulmalıdır.

MAB'nin daha pratik örnekleri, öğrenci her karar verdiğinde bir parça yan bilgi içerir. Bu yan bilgiye "bağlam" veya "gözlem" diyoruz.

Çok Silahlı Eşkıyalar ve Takviye Öğrenimi

TF-Agents kitaplığında neden bir MAB Suite var? RL ve MAB arasındaki bağlantı nedir? Çok Silahlı Haydutlar, Takviyeli Öğrenmenin özel bir durumu olarak düşünülebilir. Alıntı RL Intro :

Her adımda, madde kendi ilke göre çevre üzerinde eylemde \(\pi(a_t|s_t)\), \(s_t\) ortamından mevcut gözlemdir, ve bir ödül alır \(r_{t+1}\) ve sonraki gözlem \(s_{t+1}\) ortamından . Amaç, ödüllerin toplamını (getiri) en üst düzeye çıkarmak için politikayı iyileştirmektir.

Genel RL durumda, bir sonraki gözlem \(s_{t+1}\) önceki devlet bağlıdır \(s_t\) ve eylem \(a_t\) politikası tarafından satın alındı. Bu son kısım, MAB'yi RL'den ayıran şeydir: MAB'de, gözlem olan sonraki durum, etmen tarafından seçilen eyleme bağlı değildir.

Bu benzerlik, TF-Agent'larda bulunan tüm kavramları yeniden kullanmamızı sağlar.

  • Bir ortam ödüllerle eylemlere gözlemlerini ve cevaplar verir.
  • İlke bir gözleme dayalı bir işlemi verir, ve
  • Bir ajan defalarca önceki gözlem-aksiyon ödül dizilerini dayalı politikasını günceller.

Mantar Ortamı

Açıklama amacıyla "Mantar Ortamı" adlı bir oyuncak örneği kullanıyoruz. Mantar veri kümesi ( Schlimmer, 1981 ) yenebilir ve zehirli mantar etiketli örnekler oluşur. Özellikler, mantarın farklı bölümlerinin şekillerini, renklerini, boyutlarını, ayrıca kokuyu ve daha fazlasını içerir.

mantar

Mantar veri kümesi, tıpkı tüm denetimli öğrenme veri kümeleri gibi, bağlamsal bir MAB problemine dönüştürülebilir. Ayrıca kullanılan bir yöntem kullanınız Riquelme ve diğ. (2018) . Bu dönüşümde, ajan bir mantarın özelliklerini alır, onu yiyip yememeye karar verir. Yenilebilir bir mantar yemek +5, zehirli bir mantar yemek ise eşit olasılıkla +5 veya -35 verir. Mantarı yememek, mantarın türünden bağımsız olarak 0 ödülle sonuçlanır. Aşağıdaki tablo ödül atamalarını özetlemektedir:

           | edible | poisonous
-----------|--------|----------
eating it  |     +5 | -35 / +5
leaving it |      0 |        0

LinUCB Temsilcisi

Bağlamsal bir haydut ortamında iyi performans göstermek, gözlem göz önüne alındığında, her eylemin ödül işlevi hakkında iyi bir tahmin gerektirir. Bir olasılık, ödül fonksiyonunu doğrusal fonksiyonlarla tahmin etmektir. Her eylem için olduğunu \(i\), biz parametre bulmaya çalışıyor \(\theta_i\in\mathbb R^d\) tahminleri için

\(r_{t, i} \sim \langle v_t, \theta_i\rangle\)

gerçeğe olabildiğince yakındır. İşte \(v_t\in\mathbb R^d\) zaman adımı alınan bağlamdır \(t\). Ajan onun tahminlerde çok emindir Sonra, bu seçebilir \(\arg\max_{1, ..., K}\langle v_t, \theta_k\rangle\) en yüksek beklenen ödül almak için.

Yukarıda açıklandığı gibi, sadece en iyi tahmini ödüle sahip kolu seçmek iyi bir stratejiye yol açmaz. (Bkz örn Orada doğrusal tahmincisi ajanlar sömürü ve keşif karıştırmak için birçok farklı yolu vardır ve en ünlü biri (LinUCB) algoritması Bağlı Lineer Üst Güven ise Li ve ark. 2010 ). LinUCB'nin iki ana yapı taşı vardır (bazı ayrıntılar atlanmıştır):

  1. Her Doğrusal en küçük kareler ile kolun parametreleri için tahminler tutar: \(\hat\theta_i\sim X^+_i r_i\), \(X_i\) ve \(r_i\) kol yığılmış bağlamlar ve mermi ödüllerdir \(i\) seçildi ve \(()^+\) sözde tersidir .
  2. Bu ters kovaryans tarafından tanımlanan güven elipsoitlerin tutar \(X_i^\top X_i\) yukarıdaki tahminlerde.

LinUCB'nin ana fikri "Belirsizlik Karşısında İyimserlik"tir. Aracı, tahminleri, bu tahminlerin varyansına karşılık gelen bir miktarda artırarak araştırmayı içerir. Güven Elipsoidlerin resmin içine gelmek olduğunu: Her kol için, iyimser tahmindir \(\hat r_i = \max_{\theta\in E_i}\langle v_t, \theta\rangle\), \(E_i\) elipsoid dönünce \(\hat\theta_i\). Ajan seçer en iyi kol görünümlü \(\arg\max_i\hat r_i\).

Tabii ki yukarıdaki açıklama, LinUCB'nin ne yaptığının sadece sezgisel ama yüzeysel bir özetidir. Bir uygulama bizim kod temeli bulunabilir burada

Sıradaki ne?

Bizim Bandits kitaplığı daha detaylı öğretici sahip olmak istiyorsanız bizim bakmak Bandits öğretici . Yerine, hemen kitaplığımıza keşfetmeye başlamak istiyorsanız, bunu bulabilirsiniz burada . Hatta daha istekli bizim uçtan uca örnekler bazıları eğitim, göz başlatmak için ise buradan LinUCB ile yukarıda açıklanan mantar ortamını dahil burada .