"New Neural" es un proyecto de motor de red neuronal de código abierto para la plataforma MetaTrader 5.

 
TheXpert:

Lo primero que hay que hacer es tener un foro nuevo y sencillo para el proyecto.

Creo que hay que hacer un proyecto en sorsforge y trasladar la discusión allí directamente.

Lo primero es hacer una lluvia de ideas, necesitamos una base de datos de ideas, aunque sean surrealistas, y la rama del foro (por su apertura) es el mejor lugar para hacerlo.

Todo el mundo puede asaltar los foros, incluso los no especialistas. Las sugerencias sobre tormentas se destacan mejor del resto del texto en color.

Por ejemplo: hacer un motor gráfico para crear una cuadrícula, antes de iniciar el motor, establecer el número de capas, a continuación, la ventana de entrada para cada capa por el número de neuronas, a continuación, las líneas de tendencia que el usuario añade definir las conexiones.

 
TheXpert:

Andrei, ¿te importa que hagamos una sesión de brainstorming en este hilo?

Por supuesto que sí. Para eso está este hilo.
 

Temas del asalto:

-- Tipo de proyecto (la forma en que el usuario interactúa con el proyecto)

-- Redes que se implantarán en el proyecto

-- El preprocesamiento y todo lo que conlleva

-- Arquitectura, interfaces

-- Implementación, conectividad.

-- Pruebas, depuración.

Prohibido: criticar cualquier, incluso la idea más delirante, para fastidiar. El nivel de competencia no importa. Si está interesado y tiene alguna idea, ¡hable!

Es bienvenido: proponer nuevas ideas, desarrollar ideas ya existentes.

 
TheXpert:
...

Tal vez debería añadir:

-- Post-procesamiento

En mi opinión, se debe prestar especial atención a las interfaces de los módulos individuales, con la expectativa de escalabilidad (conectar/desconectar diferentes señales, capacidad de crear comités de redes, etc.). De ahí la necesidad de separar la red en sí (la red en sí, por ejemplo MLP con dos capas ocultas sólo ocupa unas decenas de líneas, ejemplo en el atacha) del algoritmo de aprendizaje.

Archivos adjuntos:
F_MLP.mqh  5 kb
 

normalización de vectores, visualización de datos de entrada y salida,

usar constructor externo Neurosolutions, usar DLL con Neurosolutions, niterface ...

interfaces para cargar-descargar datos: vectores, pesos,

Arquitectura de red de diseño evolutivo EDNA

La posibilidad de seleccionar-personalizar las funciones de activación, los algoritmos de aprendizaje,

 
njel:
Probablemente una de las fichas es que no habrá un dlloc.
 

...se ve así:

Tipo de proyecto: biblioteca de clases,

1) método de interacción: uso de la API (ampliamente documentada) en el código de sus sistemas .

Supongo que la aplicación práctica de la biblioteca será:

  1. Escritura rápida de utilidades propias ... (cómo lo llamaré) - especificar el tipo de red requerida, formar su configuración, prescribir con qué la vamos a alimentar (muestra de entrenamiento), etc.
    Cada una de estas utilidades puede servir como una aplicación independiente con parámetros de entrada. Ejecútelo en el probador y obtenga una red entrenada como archivo(FILE_COMMON)

  2. ¿Cómo escribir EAs que puedan utilizar archivos de redes entrenadas?

2) segunda forma de interacción. Aplicación GUI para simplificar la creación de la utilidad de creación/formación de redes - en cuanto a los parámetros del tipo, etc. - es fácil. ¿pero los diferentes tipos tienen diferentes ajustes? + ¿Cómo establecer en la UI qué alimentar a la red? es más fácil establecerlo en el código. ¿Es posible incrustar la creación de una plantilla de utilidad de generación de redes en el meta-editor, como un asistente de creación de redes neuronales? La salida es el código terminado, lo único que hay que especificar es lo que se alimenta a la entrada de la red?


P.D. arriba joo se sugirió usar "interfaces de módulos individuales con la expectativa de escalabilidad", sólo necesitan ser generados en meta-editor basado en el asistente, y el algoritmo de aprendizaje debe ser terminado

 
joo:

Aquí sugiero que se esbocen los fines y objetivos del proyecto. Discute los detalles y los matices.

Si he entendido bien, la idea es algo parecido a FANN, sólo que mucho más amplio y general. Incluso saber cómo evaluar las perspectivas de tal monstruo, es una capa de inmensidad tan grande) Tantos detalles y matices. Incluso en el pequeño trozo de código publicado joo, no lo hizo sin afinar a una implementación particular (el número 7 en la función de activación es probable que de este opus). Las redes neuronales están formadas en su totalidad por estas piezas. Con interés seguiré el proyecto e intentaré no estorbar, pero hasta ahora no tengo ni idea - es posible en principio por unos pocos entusiastas ....

 

Redes neuronales modulares

Es posible añadir la capacidad de entrenar una gran red por partes, en efecto se trata de un entrenamiento en comité, pero sin los problemas de combinar las redes en un solo sistema.
Модулярні нейронні мережі — Вікіпедія
  • uk.wikipedia.org
Модулярна нейронна мережа (англ. ) — група нейронних мереж (які в даному випадку називаються модулями), що керуються певним посередником. Кожна нейронна мережа слугує модулем і оперує окремими входами для вирішення певних підзавдань із групи завдань, які повинна виконати модулярна нейронна мережа. [1] Посередник приймає вихідні сигнали кожного...
 
Figar0:

Si he entendido bien, la idea es algo parecido a FANN, sólo que mucho más amplio y general.

Mucho más "amplio" y "general". :)

¿Por qué molestarse si no?

Figar0:

Tantos detalles y matices. Incluso en el pequeño trozo de código publicado joo, no lo hizo sin afinar a una implementación particular (el número 7 en la función de activación es probable que de este opus). Las redes neuronales están formadas en su totalidad por estas piezas.

Aquí es exactamente donde no está. El dígito 7 en la función de activación es el factor de escala, para que el gráfico de curvatura sigmoide caiga en el rango [-1,0;1,0].

Además, sugiero utilizar este rango para las entradas y salidas de todos los tipos de rejilla para evitar confusiones y garantizar la misma interfaz. Por eso puse el 7, en previsión de mis futuros diseños.

Sin embargo, este coeficiente puede formarse como una variable, entonces se hace posible ajustar la curvatura de la sigmoide en todas las neuronas que tienen FA (desde la conmutación lógica, hasta el escalamiento lineal simple, incluyendo una sección intermedia con transformación S no lineal)

Razón de la queja: