Evde yapay zeka öğrenme / deneme için açık kaynaklı bir araç mı?


9

Sinir ağı evrimi (NEAT) ile biraz deneme yapmak istiyorum. Ben sadece oynamak için 90'lı yıllarda bazı GA ve sinirsel kod C ++ yazdım, ama DIY yaklaşım nihayet düştü yeterince emek yoğun olduğunu kanıtladı.

O zamandan beri işler çok değişti ve hemen hemen her ilgi alanı için çok güzel açık kaynak kütüphaneler ve araçlar var. Ben farklı açık kaynak kütüphaneleri (örneğin DEAP) Googled ettik, ama iyi bir seçim olacağını seçerken bazı yardım kullanabilirsiniz ...

  • Neler olup bittiğini (sinirsel net durum, popülasyon uygunluğu) veya nihai sonuçları (grafikler vb.) Görselleştirmek için kod yazarak zamanımın çoğunu harcadım.

    Belki de bunun ayrı bir açık kaynaklı kütüphane tarafından yerine getirilmesi gerekirdi, ancak görselleştirme desteği, sorun / çözüme daha fazla ve uygulama ayrıntılarına daha az zaman harcamama izin verecek bir şey olurdu.
  • C / C ++, Java, C #, Python, Javascript ve birkaç tanesini biliyorum. Üst düzey bir dil ile ev donanımında iyi performans arasında iyi bir denge sağlayan bir şey iyi bir seçim olacaktır.

Deneyimli biri açık kaynak kodlu bir kütüphane veya bir takım araçlar önerebilir mi?


Bu soru softwarerecs.stackexchange.com'a aittir . Btw, bana göre, sorunuz çok geniş gibi görünüyor ve bu nedenle de yine de kapatılmalıdır.
nbro

@nbro - Teşekkürler, bunun için daha iyi bir yer olduğundan şüphelendim, ancak softwarerecs hakkında bir şey bilmiyordum.
Scott Smith

Bu soruyu yukarı oylayanlar bize nedenini söyleyebilir mi?
beşte biri

Yanıtlar:


3

Bu Javascript ile yazılmış ve (henüz) GPU desteği sunmadığından, oldukça yavaştır. Ancak, esnek ağ mimarileriyle uğraşmak çok güzel. Şu anda sunduğu tek görselleştirme, ağ mimarisinin bir haritasıdır, ancak grafikler kolayca uygulanabilir.

https://github.com/wagenaartje/neataptic


2

İsterseniz Eh, TensorfFlow ile işe elde edersiniz TensorBoard paketin parçası olarak. Bu aradığınıza yakın bir şey olabilir.

Ve TensorFlow ile, C ++, Python ve diğer birkaç dilde kodlama yapabilirsiniz (Sanırım şu anda hem Ruby hem de Java bağlamaları da var).



2

Ayrıca tanımladığınız gibi bir nöroevrimci sistem olan DXNN de var, Erlang'da yazılmış. https://github.com/CorticalComputer/DXNN2

Modüler yapmak için biraz çalıştım, bu yüzden bir kütüphane olarak kullanın ve kodunuzu / uygulamanızı izole edin.

DXNN'i kitaplık olarak indiren bir kod örneği . ayrıca görselleştirme için gnuplot hazır veri dosyaları oluşturur.


2

Fann ( http://leenissen.dk/fann/wp/ ) ücretsiz bir açık kaynaklı sinir ağı kütüphanesidir.

FANN Özellikleri:

  • C Çok Katmanlı Yapay Sinir Ağı Kütüphanesi
  • Geri yayılım eğitimi (RPROP, Quickprop, Toplu, Artımlı)
  • YSA'yı dinamik olarak oluşturan ve eğiten gelişen topoloji eğitimi (Cascade2)
  • Kullanımı kolay (yalnızca üç işlev çağrısı ile bir YSA yaratma, eğitme ve çalıştırma)
  • Hızlı (diğer kütüphanelere göre 150 kata kadar daha hızlı yürütme)
  • Çok yönlü (birçok parametreyi ve özelliği anında ayarlamak mümkündür)
  • İyi belgelendirilmiş (Okunması kolay bir tanıtım makalesi, kapsamlı bir referans kılavuzu ve uygulama hususlarını açıklayan 50'den fazla sayfa üniversite raporu vb.)
  • Çapraz platform (linux ve unix için komut dosyasını yapılandırın, pencereler için dll dosyaları, MSVC ++ ve Borland derleyicileri için proje dosyalarının da çalıştığı bildirilmiştir)
  • Birkaç farklı aktivasyon fonksiyonu uygulandı (ekstra hız için kademeli doğrusal fonksiyonlar dahil)
  • Tüm YSA'ları kaydetmek ve yüklemek kolaydır
  • Kullanımı kolay birkaç örnek
  • Hem kayan nokta hem de sabit nokta numaralarını kullanabilir (aslında hem float, double hem int kullanılabilir)
  • Önbellek optimize edildi (ekstra hız için)
  • Açık kaynak, ancak yine de ticari uygulamalarda kullanılabilir (LGPL altında lisanslanmıştır)
  • Eğitim veri setlerinin kolay kullanımı için çerçeve
  • Grafik Arayüzler
  • Çok sayıda farklı programlama diline Dil Bağlamaları
  • Yaygın olarak kullanılır (günde yaklaşık 100 indirme)

2

Genetik algoritmalar için GeneticSharp yazdım .

.NET Core ve .NET Framework için çok platformlu bir genetik algoritma kütüphanesi. Kütüphanede GA operatörlerinin çeşitli uygulamaları vardır: seçim, geçiş, mutasyon, yeniden yerleştirme ve sonlandırma.

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.