"New Neural", MetaTrader 5 platformu için bir sinir ağı motorunun Açık Kaynak projesidir.

 

Selamlar.

Burada projenin amaç ve hedeflerini belirlemeyi öneriyorum. Ayrıntıları ve nüansları tartışın.

Hoş geldin!

 
TheXpert :

Her şeyden önce, muhtemelen proje için yeni bir basit foruma ihtiyacınız var.

Büyük olasılıkla, soursforge'da bir proje yapmanız ve tartışmayı hemen oraya aktarmanız gerekir.

Her şeyden önce, bir beyin fırtınası oturumuna ihtiyacımız var, gerçeküstü de olsa bir fikir tabanına ihtiyacımız var ve bir forum başlığı (açıklığı açısından) mükemmel uyuyor.

Herkes, uzman olmayanlar bile fırtına yapabilir. Saldırı cümleleri, metnin geri kalanından renkli olarak en iyi şekilde vurgulanır.

Örneğin: bir ızgara oluşturmak için bir grafik motoru yapmak için, motoru çalıştırmadan önce, katman sayısı için parametreler ayarlanır, ardından nöron sayısına göre her katman için giriş pencereleri, ardından kullanıcının eklediği trend çizgileri belirlenir. bağlantılar.

 
TheXpert :

Andrey, bu başlıktan beyin fırtınası yapmamızın sakıncası var mı?

Tabii ki karşı değil. Bu konu bunun için oluşturuldu.
 

Saldırı konuları:

-- Proje türü (kullanıcıyla etkileşim şekli)

-- Projede uygulanacak ağlar

-- Veri ön işleme ve onunla bağlantılı her şey

-- Mimari, arayüzler

-- uygulama, bağlantı.

-- test etme, hata ayıklama.

Yasak : Herhangi bir, en sanrılı düşünceyi bile eleştirmek, sel. Yeterlilik düzeyi önemli değildir . Eğer ilgileniyorsanız ve düşünceleriniz varsa -- konuşun !

Hoş Geldiniz : yeni fikirler sunun, mevcut fikirleri geliştirin.

 
TheXpert :
...

Eklemeye değer olabilir:

-- Rötuş

Benim düşünceme göre, ölçeklenebilirlik beklentisiyle (çeşitli sinyalleri bağlama/bağlantıyı kesme, ağ komiteleri oluşturma yeteneği vb.) bireysel modüllerin arayüzlerine özellikle dikkat etmek gerekiyor. Bu nedenle, ağın kendisini (örneğin ağın kendisi, örneğin iki gizli katmana sahip MLP, yalnızca birkaç düzine satır alır, saldırıda bir örnek) hemen öğrenme algoritmasından ayırma ihtiyacı ortaya çıkar.

Dosyalar:
F_MLP.mqh  5 kb
 

vektörlerin normalleştirilmesi, giriş ve çıkış verilerinin görselleştirilmesi,

harici kurucu Neurosolutions kullanın, nörosolutions ile DLL kullanın, niterface ..

veri yükleme ve boşaltma için arayüzler: vektörler, ağırlıklar,

EDNA Evrimsel Tasarım Ağ Mimarisi

aktivasyon fonksiyonlarını, öğrenme algoritmalarını seçme ve yapılandırma yeteneği,

 
jöle :
Büyük olasılıkla çiplerden biri, dll olmayacağıdır.
 

...şöyle görünür:

Proje türü : sınıf kitaplığı,

1) etkileşim yolu, sistemlerinin kodunda (ayrıntılı olarak belgelenmiş) bir API kullanılmasıdır.

Anladığım kadarıyla, kütüphanenin pratik uygulaması şöyle olacak:

  1. kendi yardımcı programlarınızı hızlı bir şekilde yazar mısınız? (ne denir) - istenen ağ türünü belirleriz, yapılandırmasını oluştururuz, onu neyle besleyeceğimizi belirleriz (eğitim örneği), vb.
    bu tür her yardımcı program, giriş parametreleriyle ayrı bir uygulama olarak hareket edebilir. Test cihazında böyle bir yardımcı program mı çalıştırıyoruz? çıktıda dosya şeklinde eğitimli bir ağımız var ( FILE_COMMON )

  2. eğitimli ağların dosya( lar )ını kullanabilen yazma uzmanları

2) etkileşimin ikinci yolu. Bir ağ oluşturma / eğitim yardımcı programının oluşturulmasını basitleştiren bir GUI uygulaması - tür parametreleri vb. için olduğu gibi - basittir. ama farklı ayarlar için? + kullanıcı arayüzünde ağa ne besleneceği nasıl ayarlanır? kodda yapmak daha kolay. Sinir ağı oluşturma sihirbazı gibi, ağ oluşturma yardımcı programı şablonunun oluşturulmasını meta düzenleyiciye yerleştirmek mümkün müdür? Çıkışta - hazır bir kod, yalnızca ağ girişine neyin beslendiğini belirtmek için kalır?


Yukarıdaki PS, joo'dan "ölçeklenebilirlik beklentisi olan bireysel modüllerin arayüzlerini" kullanması istendi, sadece master'a dayalı meta düzenleyicide oluşturulmaları gerekiyor ve öğrenme algoritması eklenmelidir.

 
joo :

Burada projenin amaç ve hedeflerini belirlemeyi öneriyorum. Ayrıntıları ve nüansları tartışın.

Doğru anladıysam, FANN gibi bir şey tasarlandı, sadece çok daha geniş ve daha genel mi? Böyle bir canavarın beklentilerini nasıl değerlendireceğimi bile biliyorum, bu çok büyük bir katman) Çok fazla ayrıntı ve nüans var. Joo tarafından ortaya konan küçük bir kod parçasında bile, belirli bir uygulama için keskinleştirme olmadan değildi (aktivasyon işlevindeki 7 sayısı büyük olasılıkla bu operadan). Sinir ağları tamamen bu tür ayrıntılardan oluşur. Projeyi ilgiyle takip edeceğim ve yoluma çıkmamaya çalışacağım, ancak şu ana kadar bunun birkaç meraklının gücüyle prensipte mümkün olup olmadığı konusunda çok az fikrim var ....

 

Modüler sinir ağları

Büyük bir ağı parçalar halinde eğitme yeteneğini ekleyebilirsiniz, aslında bu bir komitenin eğitimidir, ancak ağları tek bir sistemde birleştirmede sorun yaşamadan.
Модулярні нейронні мережі — Вікіпедія
  • uk.wikipedia.org
Модулярна нейронна мережа (англ. ) — група нейронних мереж (які в даному випадку називаються модулями), що керуються певним посередником. Кожна нейронна мережа слугує модулем і оперує окремими входами для вирішення певних підзавдань із групи завдань, які повинна виконати модулярна нейронна мережа. [1] Посередник приймає вихідні сигнали кожного...
 
figar0 :

Doğru anladıysam, FANN gibi bir şey tasarlandı, sadece çok daha geniş ve daha genel mi?

Çok "geniş" ve "genel". :)

Aksi takdirde, neden rahatsız?

figar0 :

Çok fazla ayrıntı ve nüans. Joo tarafından ortaya konan küçük bir kod parçasında bile, belirli bir uygulama için keskinleştirme olmadan değildi (aktivasyon işlevindeki 7 sayısı büyük olasılıkla bu operadan). Sinir ağları tamamen bu tür ayrıntılardan oluşur.

Burada, hayır. Aktivasyon fonksiyonundaki 7 sayısı ölçek faktörüdür, böylece sigmoid eğrilik bölümü [-1.0;1.0] bölümüne düşer.

Ayrıca, karışıklığı önlemek ve aynı arayüzü sağlamak için her tür şebekenin giriş ve çıkışları için bu aralığı kullanmayı öneriyorum. Bu yüzden 7'yi oraya koydum - gelecekteki gelişmelerin beklentisiyle.

Bununla birlikte, bu katsayı bir değişken olarak resmileştirilebilir, daha sonra FA'li tüm nöronlar için sigmoidin eğriliğini ayarlamak mümkün hale gelir (doğrusal olmayan S-şekilli bir dönüşüme sahip bir ara bölüm dahil olmak üzere mantıksal anahtarlamadan basit doğrusal ölçeklemeye)