Aktör-Eleştirmen Yöntemleri (A2C)
Avantaj işlevi, aktör (politika) ve eleştirmen (değer), eşzamanlı A2C uygulaması.
Aktör-Eleştirmen Yöntemleri (A2C), CoddyKit'te ücretsiz bir Learn AI with Python dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Learn AI with Python öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Learn AI with Python kursu toplamda 4 dersten oluşur.
Politika ile Değeri Birleştirme
Actor-Critic yöntemleri iki fikri birleştirir: eylemleri seçen bir politika olan actor ve bu eylemleri değerlendiren bir değer fonksiyonu olan critic. Critic, ham getirilerden daha düşük varyanslı geri bildirim sağlayarak öğrenmeyi dengeler.
actor
actor, politika ağıdır. REINFORCE'ta olduğu gibi geçerli durum için eylem logitleri (veya olasılıkları) üretir ve ne yapılacağına karar verir.
class ActorCritic(nn.Module):
def __init__(self, obs_dim, n_actions):
super().__init__()
self.shared = nn.Sequential(nn.Linear(obs_dim, 128), nn.ReLU())
self.actor = nn.Linear(128, n_actions)critic
critic, durum değerini V(s) tahmin eder: s durumundan elde edilmesi beklenen getiri. Tek çıkışlı bir başlıktır ve mevcut durumun ne kadar iyi olduğunu tahmin eder.
self.critic = nn.Linear(128, 1)
def forward(self, s):
h = self.shared(s)
return self.actor(h), self.critic(h)Paylaşılan Omurga, İki Başlık
Actor ve critic genellikle ilk katmanları (omurgayı) paylaşır ve iki başlığa ayrılır. Özellikleri paylaşmak verimlidir ve her iki görevin de yararlı temsilleri güçlendirmesini sağlar.
Avantaj Fonksiyonu
Temel nicelik avantajdır: A = r + gamma * V(s') - V(s). Bir eylemin critic'in beklediğinden ne kadar daha iyi olduğunu ölçer. Pozitif avantaj, “ortalamadan daha iyi”; negatif avantaj ise daha kötü anlamına gelir.
advantage = reward + gamma * V_next - V_currentAvantaj Neden Ham Getiriden Daha İyidir
Tam getiri G_t yerine avantajı kullanmak, sinyali critic'in tahmini etrafında merkezler ve varyansı büyük ölçüde azaltır. Actor-critic'in REINFORCE'tan daha dengeli öğrenmesinin temel nedeni budur.
actor Kaybı
Actor, REINFORCE gibi eğitilir; ancak getiri yerine avantajla ağırlıklandırılır: pozitif avantajlı eylemlerin olasılığı artırılır.
actor_loss = -(log_prob * advantage.detach()).mean()critic Kaybı
Critic, getirileri doğru tahmin etmeyi öğrenir. Kaybı, tahmini V(s) ile gözlemlenen r + gamma * V(s') hedefi arasındaki karesel hatadır.
target = reward + gamma * V_next.detach()
critic_loss = (V_current - target).pow(2).mean()Birleşik Kayıp
Kayıpları toplayarak her iki başlığı birlikte eğitin (keşfi teşvik etmek için genellikle küçük bir entropi bonusu eklenir). Tek bir geri yayılım geçişi, paylaşılan omurgayı ve her iki başlığı günceller.
loss = actor_loss + 0.5 * critic_loss - 0.01 * entropy
loss.backward()Eşzamanlı A2C
A2C (Avantaj Actor-Critic), eşzamanlı sürümdür: birden çok paralel çalışan, ortamın kopyalarından aynı anda deneyim toplar; ardından tek bir eşzamanlı güncelleme tüm verilerini kullanarak kararlılığı ve işlem hacmini artırır.
# N parallel envs step together each iteration
# gather all transitions, then one combined updateA2C ve A3C Karşılaştırması
Eşzamansız sürüm olan A3C, çalışanların birbirinden bağımsız olarak güncelleme yapmasına izin verir. A2C çalışanları eşzamanlar; bu yaklaşım daha basittir, GPU kullanımına daha uygundur ve genellikle aynı derecede etkilidir. Bu nedenle popülerdir.
Hızlı Kontrol
Actor-critic anlayışınızı sınayın.
Özet: Actor-Critic ve A2C
actor'ın politika logitlerini ürettiğini ve critic'in çoğu zaman shared iki başlıklı bir omurga aracılığıyla V(s) değerini tahmin ettiğini öğrendiniz. Avantaj r + gamma*V(s') - V(s) varyansı azaltır; eşzamanlı A2C ise kararlı ve verimli eğitim için paralel çalışanları kullanır.
Sıkça Sorulan Sorular
“Aktör-Eleştirmen Yöntemleri (A2C)” dersi ücretsiz mi?
Evet — “Aktör-Eleştirmen Yöntemleri (A2C)” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Learn AI with Python kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Learn AI with Python kursu toplamda 4 dersten oluşur.
“Aktör-Eleştirmen Yöntemleri (A2C)” dersinde ne öğreneceğim?
Avantaj işlevi, aktör (politika) ve eleştirmen (değer), eşzamanlı A2C uygulaması. Learn AI with Python ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Learn AI with Python öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Learn AI with Python, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“Aktör-Eleştirmen Yöntemleri (A2C)” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Learn AI with Python dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Learn AI with Python dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Politika Gradyanı Yöntemleri: REINFORCE
- Aktör-Eleştirmen Yöntemleri (A2C)
- Yakınsal Politika Optimizasyonu (PPO)
- Özel Gymnasium Ortamları