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

 
TheXpert:
Gracias :) último golpe.

Prefiero ocuparme de una implementación y tratar de perfeccionarla.

Puede que no pueda competir con la genética en escala (aquellas clases de tareas que no tienen una función objetivo explícita), pero en términos de eficiencia de uso y aprendizaje...

Decisión muy acertada, para cuando aparezca algún proyecto aquí ya habrás hecho mucho trabajo de base, y si el proyecto no aparece, darás un resultado.

Tienes más posibilidades de mantener vivo el proyecto.

No te rindas, publica tu trabajo, pregunta, quizás alguien se anime.

 
Urain:

No desaparezca, exponga sus trabajos, pregunte, y tal vez alguien se anime.

Lo que está en marcha. Lo publicaré en cuanto esté listo.

Tengo una implementación en C++. Todo lo que tengo que hacer es reorganizar y mejorar un par de cosas.

 
ivandurak:

Me gustaría que escupieran, pero me ignoran. Se le ha pedido consejo: sí o no.

Si (SÍ), iré a leer algunos libros inteligentes;

Si no, vete a leer otro y patalea en la otra dirección;

Nikolay, tira aquí los libros, que te regalé hace poco, sobre la agrupación, pero es aburrido rebuscar en la biblioteca de nuevo.
 
ivandurak:

Buenas tardes, no se trata del tema, necesito un consejo.

Yo mismo tengo una tarea . Es necesario elegir una ventana de tiempo adaptativa del momento actual, y no fijarla en parámetros por ejemplo en 10 bares . A continuación, debemos recorrer el historial en profundidad para averiguar a qué clúster pertenece la ventana seleccionada. ¿Pueden las redes neuronales encargarse de ello o es más fácil hacer otra cosa? Si no lo siento, por favor envíenme un libro sobre rejillas en el nivel de salchichas solamente.

No sé el nivel de salchichas, como dicen los ricos.

La agrupación y la clasificación son las tareas que mejor hacen las redes.

La aproximación es peor, pero también está bien, pero con la extrapolación en general es ajustada. Sin embargo, todo depende de la aplicación.

Archivos adjuntos:
 
Urain:

No sé si el nivel de la salchicha, como se dice.

La agrupación y la clasificación son las tareas que mejor hacen las redes.

La aproximación es peor, pero también está bien, pero la extrapolación es difícil. Sin embargo, todo depende de la aplicación.

Muy agradecido, iré a masticar el granito.
 
yu-sha:
...

el aprendizaje es un proceso externo a la propia red

...

Entonces, para completar, el aprendizaje no es sólo un proceso externo, sino también de naturaleza interna, ya que a menudo tiene acceso no sólo a los pesos, sino también a los datos de cálculo intermedios, así como a las propiedades de la topología.

Y es por esta propiedad del proceso de aprendizaje que se suele atribuir a los procesos internos de la red.

Llegan a la conclusión de que la red debe revelar su información interna para el proceso de aprendizaje, mientras que la oculta del entorno en absoluto.

El curso de acción lógico en esta situación es envolver la propia red en un caparazón de entrenamiento, si es necesario,

Así, tenemos un objeto de red externa que tiene métodos:

  • inicialización
  • flujo de trabajo
  • aprender

Un método de flujo de trabajo recibe la red tal como es, un método de entrenamiento recibe la red envuelta en el caparazón de entrenamiento; una continuación lógica de la encapsulación sería dar un método de red con una bandera de selección en lugar de dos métodos de flujo de trabajo y de entrenamiento.

 
Urain:

así que tenemos un objeto de red externa que tiene métodos :

  • inicialización de
  • Ejecutar
  • formación

Un método de flujo de trabajo obtiene la red tal cual, un método de entrenamiento obtiene la red envuelta en un caparazón de entrenamiento, una extensión lógica de la encapsulación sería dar un método de red con una bandera de selección en lugar de dos métodos de flujo de trabajo y entrenamiento.

En el caso más general, la red debe tener un único método run()

Realiza el cálculo de las neuronas de salida y asume que las entradas ya han sido inicializadas

El "profesor" es un objeto independiente que se inicializa con los parámetros de formación y se controla mediante el objeto de formación

Necesitarías un validador para comprobar si puedes enseñar este objeto por este método

Pero todas estas cosas son difíciles de formalizar en el caso general

Por ello, el diseño rígido estándar del tipo Red+Función+Profesor puede desarrollarse para un usuario final y permitir establecer sólo algunos parámetros, por ejemplo, el número de neuronas en la capa

la red debe exponer su información interna al proceso de aprendizaje mientras la oculta del entorno

Estoy de acuerdo. Algunos métodos de entrenamiento, aunque no todos, requieren un acceso casi completo al interior de la red

 

yu-sha:

...

Algunos métodos de entrenamiento, aunque no todos, requieren un acceso casi total a los componentes internos de la red.

Ese es el problema, algunos métodos requieren que la red no sólo esté expuesta, sino que esté estructurada adecuadamente para el método.

En otras palabras, el método en sí fue escrito para una red particular. ¿Qué sentido tiene implementar estos métodos en un motor universal?

Es mejor dejar que Andrew lo codifique todo. Veo un método de entrenamiento universal para el motor universal - GA.

En el resto tenemos: una idea del motor universal para cualquier topología, idea del método universal de inicialización para cualquier topología y GA como entrenador universal de todo esto.

En el lado positivo, tenemos una fácil implementación de nuevos tipos de neuronas, aquellas estándar pero aún no descritas o no estándar.

Sólo hay un método de formación en los inconvenientes.

Si alguien puede averiguar cómo encajar otros métodos de entrenamiento en él, sería genial, pero por ahora es así.

 
Urain:

En el resto tenemos: la idea de un motor universal para cualquier topología, la idea de un método de inicialización universal para cualquier topología, y el AG como tutor universal para todo esto.

El lado positivo es que es fácil implementar nuevos tipos de neuronas, las estándar pero aún no descritas o las no estándar.

Las desventajas son sólo un método de entrenamiento.

Pensando de la misma manera he llegado a casi la misma conclusión)).

Y dado que el AG se convierte en el principal algoritmo de aprendizaje, existe una necesidad urgente de computación paralela.

Ahí es donde entran las GPU.

Параллельные вычисления в MetaTrader 5 штатными средствами
Параллельные вычисления в MetaTrader 5 штатными средствами
  • 2010.11.24
  • Andrew
  • www.mql5.com
Время является неизменной ценностью на протяжении всей истории человечества, и мы стремимся не расходовать его понапрасну. Из этой статьи вы узнаете, как можно ускорить работу вашего эксперта, если у вашего компьютера многоядерный процессор. Причем, реализация описываемого метода не требует знания каких-либо еще языков кроме MQL5.
 
yu-sha:

Pensando de la misma manera llegué más o menos a la misma conclusión ))

Y dado que el AG se convierte en el principal algoritmo de aprendizaje, existe una necesidad urgente de computación paralela

Aquí es donde entran las GPUs

Si lees atentamente lo que he escrito antes, habrás notado que en mi modelo de red universal el procesamiento en sí está dividido en capas, por lo que las neuronas se combinan en capas no formalmente (por propiedad), sino realmente (una capa tiene memoria y una neurona no, una neurona sigue siendo sólo una entidad informativa que suministra información a una capa sobre dónde y por qué). Así, el paralelismo viene definido por la propia estructura del motor (la información dentro de la capa se procesa en paralelo). Ya hice NS entrenado por GA y la mayor pérdida de productividad fue exactamente en el cálculo de NS (especialmente en redes grandes). Y como anuncio, puedo decir que para la UGA propuesta por joo , el aprendizaje de NS es pan comido.

Pero si es posible paralelizar también los cálculos de FF (y NS para GA es una parte de FF), sólo estoy a favor. Aunque no creo que sea una tarea sencilla, las acciones simples se realizan por capas, mientras que el cálculo de FF puede implicar una secuencia bastante compleja.