¿Qué es mejor, la caja de herramientas de red neuronal o la implementación de programación?

En primer lugar, hablemos de la caja de herramientas de redes neuronales. Cuando entré en contacto por primera vez con las redes neuronales, utilicé la caja de herramientas para resolver problemas, lo que me dio una comprensión intuitiva de las redes neuronales y una comprensión general. de redes neuronales. El alcance de las redes y cómo resuelven problemas del mundo real.

La ventaja de la caja de herramientas es que no necesitamos comprender su implementación interna específica, sino centrarnos más en el establecimiento del modelo y el análisis del problema. Los errores del algoritmo y luego usar la caja de herramientas para resolver problemas prácticos nos permitirán centrarnos más en la construcción de modelos de problemas reales en lugar de la tediosa implementación y análisis de algoritmos.

En segundo lugar, hablemos de programación para implementar redes neuronales. Debido a mi capacidad personal limitada, solo he implementado algunos algoritmos neuronales básicos a través de una programación simple. Mi experiencia general es que el proceso de programación me ha brindado una mayor experiencia. Una comprensión profunda del algoritmo puede analizar su mecanismo operativo interno más profundamente y también puede implementar sus propias ideas y construir su propio algoritmo de red neuronal.

Lo anterior es mi comprensión simple de los dos métodos. Entonces, ¿qué método es mejor? Mi opinión personal es que depende del propósito del usuario.

Si el propósito del usuario es resolver problemas prácticos y utilizar las funciones de aproximación y ajuste de redes neuronales para realizar su propio análisis y solución modelo de problemas prácticos, entonces mi sugerencia es utilizar la caja de herramientas de redes neuronales para aprender Cualquiera que sepa lenguajes de programación sabe que no importa qué lenguaje de programación se utilice para programar un algoritmo existente para lograr resultados utilizables, el proceso es extremadamente engorroso y complejo. Tomemos como ejemplo el algoritmo de red neuronal clásico de BP. La implementación en sí no es realmente difícil. Sin embargo, la eficiencia de ejecución del programa compilado es muy diferente dependiendo de la capacidad de diferentes personas. Además, si una persona reflexiva ha leído el código fuente de la caja de herramientas de Matlab, debería poder encontrarlo. Los métodos utilizados en él no son los mismos. No es completamente un algoritmo clásico de BP. Un algoritmo también depende de la ayuda de otros algoritmos desde la teoría hasta la implementación. Los errores de redondeo que inevitablemente ocurren cuando se calculan las computadoras deben garantizar que los pesos. cambios en todo momento. Estas son todas las cosas que los programadores deben considerar, y puede haber muchos más problemas.

En este caso, si programa solo para implementar redes neuronales para resolver problemas prácticos, el general. La eficiencia no será mejor que usar una caja de herramientas.

Si el propósito del usuario es analizar el algoritmo y construir una nueva red, entonces, por supuesto, se recomienda programarlo usted mismo. Mi sensación personal es que si realmente lo programa usted mismo, tendrá una comprensión profunda del algoritmo. Durante el proceso de programación y depuración, también comprenderá muchas cuestiones que nunca antes había considerado, como la inicialización de pesos. debe ser la selección aleatoria, en qué orden deben ingresarse las muestras de entrenamiento, etc. Todos estos son temas que deben considerarse en la implementación de la programación. Habrá una gran brecha en los resultados obtenidos por diferentes métodos.