Me gustaría experimentar un poco con la evolución de la red neuronal (NEAT). Escribí algo de GA y código de red neuronal en C ++ en los años 90 solo para jugar, pero el enfoque de bricolaje demostró ser tan laborioso que eventualmente lo descarté.
Las cosas han cambiado mucho desde entonces, y hay muchas bibliotecas y herramientas de código abierto muy agradables para cualquier interés que pueda tener. Busqué en Google diferentes bibliotecas de código abierto (p. Ej., DEAP), pero podría usar un poco de ayuda para elegir una que sea adecuada ...
- Pasé gran parte de mi tiempo escribiendo código para visualizar lo que estaba sucediendo (estado de la red neuronal, estado físico de la población) o los resultados finales (gráficos, etc.).
Tal vez esto debería ser realizado por una biblioteca de código abierto separada, pero el soporte de visualización sería algo que me permitiría dedicar más tiempo al problema / solución y menos a los detalles de implementación. - Conozco C / C ++, Java, C #, Python, Javascript y algunos otros. Algo que sea una buena compensación entre un lenguaje de nivel superior y un buen rendimiento en hardware doméstico sería una buena opción.
¿Puede alguien con experiencia sugerir una buena biblioteca de código abierto o un conjunto de herramientas?
neural-networks
genetic-algorithms
neat
Scott Smith
fuente
fuente
Respuestas:
como está escrito en Javascript y (todavía) no ofrece soporte para GPU, es bastante lento. Sin embargo, es muy agradable jugar con arquitecturas de red flexibles. La única visualización que ofrece en este momento es un mapa de la arquitectura de red, pero los gráficos podrían implementarse fácilmente.
fuente
Bueno, si usted elige TensorfFlow de trabajar, se obtiene TensorBoard como parte del paquete. Eso podría ser algo cercano a lo que estás buscando.
Y con TensorFlow, puede codificar en C ++, Python y algunos otros lenguajes (creo que también hay enlaces de Ruby y Java, probablemente otros por ahora).
fuente
Tiene muchos recursos útiles. Por favor echa un vistazo.
fuente
También hay DXNN, que es como usted describió, un sistema neuroevolutivo, está escrito en Erlang. https://github.com/CorticalComputer/DXNN2
Trabajé un poco para hacerlo modular, por lo que lo usa como biblioteca y mantiene aislado su código / aplicación.
Aquí hay un ejemplo de código , que descarga DXNN como una biblioteca. También genera archivos de datos listos para gnuplot para su visualización.
fuente
Fann ( http://leenissen.dk/fann/wp/ ) es una biblioteca gratuita de red neuronal de código abierto.
Características de la FANN:
fuente
Para algoritmos genéticos, he escrito GeneticSharp .
Una biblioteca de algoritmos genéticos multiplataforma para .NET Core y .NET Framework. La biblioteca tiene varias implementaciones de operadores de GA, como: selección, cruce, mutación, reinserción y terminación.
fuente