Bir sinir ağı mesafe kavramını çözebilir mi?


10

Kırmızı piksel ve mavi piksel dışında siyah bir ekran olduğu bir oyun düşünün. Bu oyunu bir insana verdikten sonra, önce ok tuşlarına basmanın kırmızı pikseli hareket ettireceğini görecekler. Bir sonraki deneyecekleri şey kırmızı pikseli mavi piksele taşımaktır.

Bu oyunu bir yapay zekaya verin, bir milyon deneme yapana kadar kırmızı pikseli rastgele hareket ettirir ve ödül almak için yanlışlıkla mavi piksele geçer. Yapay zeka kırmızı ve mavi piksel arasında bir mesafe kavramına sahipse, bu mesafeyi en aza indirmeye çalışabilir.

Aslında mesafe kavramında programlama yapmazsak, oyunun piksellerini alırsak, "entropi" gibi, pikseller birbirine çok yakın olduğundakinden daha düşük olan bir sayı (sayıları) hesaplayabilir miyiz? Diğer piksel konfigürasyonlarıyla çalışmalıdır. Birinin iyi ve birinin kötü olduğu üç pikselli bir oyun gibi. Sinir ağına ekranın nasıl göründüğüne dair daha fazla fikir vermek için mi? Daha sonra NN'ye "tahtanın entropisini en aza indirmeye çalışın ve ödüller almaya çalışın" gibi bir hedef verin.

Mevcut araştırmada buna benzer bir şey var mı?


Doğrudan görüntüyü besleyeceğinizi ve mesafeyi bulacağınızı sanmıyorum ... Aksine, mesafeyi, dikey mesafeyi, yatay mesafeyi vb. Temsil eden bir dizi sayıyı
beslersiniz

@Pheo evet, ancak her "oyun" türü için farklı değerler beslemeniz gerekir. Söylediğim gibi, pikseller gruplandığında yüksek, pikseller aralıklı olduğunda düşük küresel bir değer türümüz olabilir mi?
zooby

"Bir sonraki deneyecekleri şey kırmızı pikseli mavi piksele taşımaktır." "kırmızı" ve "mavi" çoğu zaman düşmandır, bu yüzden mavi piksel sizi fark etmeden önce mesafeyi artırmaya başlayacaksınız.
Lee

Yanıtlar:


1

Cevap

Sorunu yüz değerinde ele alacağım ve bu konunun derinliklerine gideceğim.

Evet yapabilirler. Tipik insan aklı yapabilir. Ama insan aklını düşünün. Milyarlarca olmasa da milyonlarca nöron. Aslında, insanlık bir kavram olarak düşünülebilir, sadece dünya ile etkileşimlerden geliştirilen bir teori.

Bu nedenle, bir veya iki yıl boyunca, elinizde bir ton nöron varken, bu senaryoyu çoğaltabilirsiniz. Bilgisayarınız insan zihni kadar paralel ise. Kısa açıklama, insan zihninin çok paralel olduğudur.

Bununla birlikte, mesafeyi bir AI ile değil, bir programla hesaplamak ve sonucu sadece kararları verecek olan AI'ya beslemek daha kolay olacaktır.

Bir ekrana bakmak için ne kadar zaman harcadığınızı düşünün. İki piksel arasındaki (yaklaşık) mesafeyi söyleyebiliyorsanız, bir Sinir Ağı da olduğu gibi bunu yapabilirsiniz. Ancak, canlı ve öğrenim için harcadığınız süreyi denkleme ekleyin ve bu bir felaket haline gelir.

daha fazla okuma

İnsan beyni paralel

Bu, insan beynindeki tüm nöronların birbirinden bağımsız olmasının bir sonucudur. Gerçek eşzamanlı eylemler yürütebilirler , böylece nöron blokları diğerlerinin operasyonlarından bağımsız olarak "düşünebilir", bu da minik bir miktarla "gecikme" ne sınırlanabilir.


1

Bir insan olarak "görmek" için yapay zeka yaratabilirsiniz. Dediğiniz gibi, insana anahtarları vererek, rastgele tıklayacak. Sadece ekrandaki diğer nesnelere yaklaşan hangi tuşlara bastığını bilmeli. Bir yapay zekanın temelleri nesne tanıma olduğunu düşünüyorum. Oyunun ekran nesnelerini eşlemek için bir betik oluşturmaya çalışırdım. Python'da yasal örnekler var.

Ben böyle bir yolu takip etmeye çalışacağız:

  • Yapay zekayı okları veya WASD'yi tıklatarak ve GAME bağlamında, pikselleri yöne göre hareket ettiren nesnenin ana yazarı (oynatıcı) temsil ettiğini anlamasını sağlayın.

  • Paralel olarak: otomatik olarak koordinat etki alanı ve nesne mesafesine sahip olmak için bölgenin tüm sınırlarını eşleyin ve o bölgedeki farklı nesneleri dizinleyin. AI, nesneleri kategorilere ayırmak için oyunu GÖRMEK (akış) yapmak zorundadır. Ne demek istediğimi anlıyor musun?

  • Paralel olarak: AI, ekrandaki tüm metinlerin ve bilgilerin farkında olmalıdır (hepsi haritalanmıştır, hatırlıyor musunuz?). Bir metnin ne zaman değiştiğini veya farklı bir şeyin ne zaman gerçekleştiğini anlamanız gerekir. Örneğin: her aşamanın başlangıç ​​konumuna döndüğünde, her sayımı olduğunda, cout sıfıra ulaştığında veya başka bir tür değişiklik yaratan ortak bir sayı olduğunda ne olur.

  • Her "yeniden doğuşta" neyin tekrarlandığını anlamalıdır. Ayrıca "yeniden doğma" nın ne olduğunu da anlamalısınız. Ekranda bir sayım sona erdiğinde, her haritada belirli bir harita konumu olabilir. Veya belirli bir nesne türüne (eşlenmiş nesne) karşı geldiğinde

Dürüst olmak gerekirse, süper akıllı bir robot oluşturmak istiyorsanız, farklı insanların kafalarının veya en iyi insanların veya her oyunun kurallarının içinden geçen tüm adımları takip edebilirsiniz. Ancak bazen belirli görevleri yerine getirmek için belirli botlar oluşturmak daha kolaydır. Bu ne yapmak istediğinize bağlıdır


O sormuyordum nasıl bunu yapacağını, bunun yerine yapabilirsiniz bunu.
FreezePhoenix

Bunu çeşitli şekillerde yapmak mümkündür. Şablonu oluşturmak için alacağım yolu geçtim. Bu bir teori değil, yapay zeka evrimine göre diğer süreçleri de kapsayabilecek bir süreçtir.
Guilherme IA

1

Bahsettiğiniz şey, AI'de kapsamlı bir şekilde araştırılan yol planlaması için mükemmel bir örnek .

Lütfen A-star algoritmasını ve sinir ağları ile nasıl geliştirileceğini araştırın :)


1

Sorunu aşağıdaki gibi çözebiliriz:

İlk olarak, bir düzlemde iki noktanız varsa ve bu noktaların koordinatlarını bir sinir ağına (örneğin, bir ) ve gerçek mesafe olan bir etikette (ör. ), bu ilişkiyi keyfi olarak yakın doğrulukla öğrenebilmelidir.<x0,y0,x1,y1>(x0-y0)2+(x1-y1)2

Daha sonra, açıkladığınız şeye benzer bir görüntünüz varsa ve bunu farklı bir sinir ağı üzerinden (ör. CNN) besleyin ve etiket olarak iki noktanın noktalarını (bir kez daha ), o zaman bir kez daha keyfi olarak yakın doğrulukla bu ilişkiyi öğrenebilmelidir.<x0,y0,x1,y1>

Tabii ki, bunu iki ayrı sinir ağında yapmak için bir neden yok, bu yüzden iki uçtan uca görüntüyü giriş olarak ve çıkış olarak mesafeyi alan bir modelimiz var.

Bununla birlikte, bu modelin etiketli veriler üzerinde eğitilmesi gerekir, bu nedenle verileri kendiniz oluşturmanız veya görüntüleri etiketlemeniz gerekir.

Ancak, mesafeyi daha az denetimli bir şekilde kapatma fikrini öğrenmesini istiyorsanız, takviye öğrenimini kullanmanız gerekir. Bu durumda, aracıyı mesafeyi azaltmak için teşvik eden bir ortam kurmanız gerekir. Bir eylem mesafeyi azaltırsa, ödül kazanmak kadar basit olabilir.

Başka bir yaklaşım da gelecekteki ödülü kullanarak ajanı teşvik etmek olacaktır. Yani, ödülü sadece bir sonraki dolaysız durumun sonuçlarından gelmez, aynı zamanda bir sonraki olası durumun ve bundan sonraki durumun katkıları da vardır. Derin Q-Learning'in arkasındaki fikir budur ve bu not defterine basit bir örnek (tanımladığınıza çok benzer) uyguluyorum .

Şimdi soru şu: bu uygulama başarıya giden yolu takip edene kadar rastgele hareket etmekten başka bir şey yaptı mı?

Örneğinizde, ajanı hedefe ulaştığında ödüllendirmekten bahsediyorsunuz. Ama tarif ettiğim şeyde, hedefe yaklaşarak (Q-Function veya doğrudan çevreden) ödül kazandı. Bunu, bazı soyut mesafe fikrini öğrenerek yapabilir (denetlenen versiyonda gösterilebilir).

Bir insan bunu öğrendiğinde, aynı sebepten ötürü: İnsan bu yönde ilerideki ödüller duygusu ile hareket ettiği için ödül kazanıyor.

Yeterli eğitim ve veri verildiğinde, takviye öğreniminin bu kavramı kolaylıkla öğrenebileceğini söyleyebilirim. Tahtada diğer ödüller olduğu sürece (örneğin, "tahtanın entropisini en aza indirin ve ödüller almaya çalışın"), ne istediğini düşünmeniz gerekir. Temsilcinin mesafeyi en aza indirmesini veya ödülü en üst düzeye çıkarmasını tercih eder misiniz? Çünkü genel olarak ikisini birden yapamaz. Eğer ikisi arasında bir denge arıyorsanız, o zaman gerçekten sadece mesafeyi de dikkate almak için ödülü yeniden tanımlıyorsunuz.

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.