Spiral şeklinde olan veriler nasıl sınıflandırılır?


Yanıtlar:


11

Bu tür bir soruna birçok yaklaşım vardır. En belirgin olanı yeni özellikler yaratmaktır . Gelebileceğim en iyi özellikler koordinatları küresel koordinatlara dönüştürmektir .

Oyun alanında bunu yapmanın bir yolunu bulamadım, bu yüzden bu konuda yardımcı olacak birkaç özellik oluşturdum (günah özellikleri). 500 tekrardan sonra doyurulur ve 0,1 puanda dalgalanır. Bu, daha fazla iyileştirme yapılmayacağını ve büyük olasılıkla gizli katmanı genişletmem veya başka bir katman eklemem gerektiğini gösteriyor.

Gizli katmana sadece bir nöron ekledikten sonra 300 iterasyondan sonra kolayca 0.013 elde etmeniz şaşırtıcı değildir . Benzer bir şey yeni bir katman ekleyerek olur (0.017, ancak önemli ölçüde daha uzun 500 yinelemeden sonra. Ayrıca hataları yaymak daha zor olduğu için sürpriz değil). Büyük olasılıkla bir öğrenme oranı ile oynayabilir veya daha hızlı hale getirmek için uyarlanabilir bir öğrenme yapabilirsiniz, ancak buradaki nokta bu değildir.

resim açıklamasını buraya girin


Küresel koordinatlar! Bana undergra hesabını hatırlattı.
Souradeep Nanda

4
@SouradeepNanda, ML'de insanların okulda işe yaramaz bulduğu bir çok matematik malzemesi bulacaksınız
Salvador Dali

Sadece benim gibi meraklı olanlar için, sonuçları çoğaltmaya çalışıyorum , ama işler o kadar düzgün gitmiyor
codevision

4

İdeal olarak sinir ağları, küresel özellikleri sağlamadan fonksiyonu kendi başına bulabilmelidir. Bazı deneylerden sonra ve dışında hiçbir şeye ihtiyacımız olmayan bir yapılandırmaya ulaşabildim . Bu ağ, oldukça uzun olan yaklaşık 1500 çağdan sonra birleşti. Bu yüzden en iyi yol hala ek özellikler eklemek olabilir ama sadece onlarsız yakınsama hala mümkün olduğunu söylemeye çalışıyorum.X1X2

Ek özelliklere sahip olmayan çözüm


3

Hile ile ... thetaolan , olan .arctan(y,x)r(x2+y2)

Teorik olarak, ve çalışmalıdır, ancak pratikte, bazen de olsa, bir şekilde başarısız oldular.x2y2

resim açıklamasını buraya girin


1
Nasıl "aldattığını" açıklayabilir misin? Bu özellikleri nasıl eklediniz? Oyun alanını GitHub'dan indirip değiştirdiniz mi? Yoksa bunu yapmanın daha doğrudan bir yolu var mı?
Jim

Ben de bu kesmek nasıl uygulanacağını merak ediyordum. Tarayıcı içinde yapmaya çalıştı ama hiçbir şansı yoktu. Sonra kaynak kodunu kırmaya karar verdim ve yeni giriş özelliklerini ekledim. Burada
Cankut

0

vanilya tensorflow oyun alanı spiral çözüm

Bu, ilave özellikleri ve modifikasyonu olmayan vanilya Tensorflow oyun alanının bir örneğidir. Spiral için çalışma, bağlı olarak 187 ila ~ 300 Epoch arasındaydı. Lasso Regularization L1 kullandım, böylece katsayıları ortadan kaldırabilirim. Çıktının aşırı uymasını önlemek için parti boyutunu 1 azalttım. İkinci örneğimde veri kümesine biraz gürültü ekledim, sonra telafi etmek için L1'i yükselttim.

resim açıklamasını buraya girin


0

Solüsyon yargıya da bir saat sonra ulaşıldı genellikle sadece 100 dönemleri yakınsar .

Evet, orada en düzgün karar sınırına sahip olmadığını biliyorum, ama oldukça hızlı bir şekilde birleşiyor.

! [% 0.6 test hatası

Bu spiral deneyden birkaç şey öğrendim:

  • Çıkış katmanı, giriş katmanından büyük veya ona eşit olmalıdır . En azından bu spiral probleminde fark ettiğim şey bu.
  • İlk öğrenme hızını bu durumda 0,1 gibi yüksek tutun , ardından% 3-5 veya daha az gibi düşük bir test hatasına yaklaştıkça, öğrenme oranını bir çentik (0,03) veya iki azaltın. Bu, daha hızlı yakınlaşmaya yardımcı olur ve küresel minimanın etrafında atlamayı önler.
  • Sağ üstteki hata grafiğini kontrol ederek öğrenme hızını yüksek tutmanın etkilerini görebilirsiniz.
  • 1 gibi daha küçük parti büyüklükleri için 0,1, model küresel minima etrafında atladıkça birleşmediği için çok yüksek bir öğrenme oranıdır.
  • Bu nedenle, yüksek bir öğrenme oranını (0.1) korumak isterseniz, toplu iş boyutunu da (10) yüksek tutun. Bu genellikle yavaş ama pürüzsüz bir yakınsama sağlar.

Tesadüfen bulduğum çözüm Salvador Dali'nin çözümüne çok benziyor .

Daha fazla sezgi veya muhakeme bulursanız lütfen bir yorum ekleyin.

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.