¿Cómo se diseñan las redes neuronales artificiales y qué teoremas académicos las respaldan?

Comencemos por el principio y pasemos por el proceso de diseño.

Las redes son un sistema interconectado que funciona en coherencia. Las redes neuronales se refieren a la masa de neuronas encontradas en los organismos vivos que realizan tareas cruciales como la respiración, etc. También pueden verse como un cuadro negro: proporciona una entrada y obtiene una salida muy parecida a los objetos en Java, pero no sabe por qué la salida se produce de la manera en que lo hizo. Artificial es lo que no se encuentra en la naturaleza. Por lo tanto, establezcamos la siguiente definición de Redes Neuronales Artificiales (ANN):

ANN son una forma de imitar el proceso de toma de decisiones en los seres humanos.

Sin embargo, una réplica exacta es casi imposible de diseñar porque hay miles de millones de neuronas y un número insondable de interconexiones que existen entre ellas.

Si estuvieras diseñando ANN, ¿cómo lo abordarías?

Aplica el clásico: Resumen. Luego divide y vencerás.

Abstracción:

¿Qué es realmente una neurona? Es un objeto que toma un cierto tipo de entrada y produce un cierto tipo de salida, aunque la salida no siempre es agradable o esperada.

¿Cuáles son las propiedades que debería tener este objeto?

Lo más importante sería que debería producir la misma salida dada la misma entrada, siempre. Por ejemplo, si quieres sacar tu mano del fuego, este estímulo debe activarse cada vez que colocas tu mano en el fuego; de lo contrario, estarías muerto. En resumen, queremos que las respuestas sean una relación bien definida entre una entrada y una salida.

¿Necesitamos crear tal objeto o ya existe uno?

Buenas noticias: existe. De hecho, existe en abundancia. Se llaman funciones en matemáticas.

Excelente ! Hemos abstraído el concepto de una neurona, una noción desconocida, a algo que habitualmente manejamos: funciones.

Divide y conquistaras :

Ahora que tenemos una neurona (una función) y sabemos que las neuronas individuales forman el cerebro, también nos gustaría crear un cerebro. Sin embargo, como notamos anteriormente, esto no es del todo posible. ¿Y por qué hay tantas neuronas en primer lugar en el cerebro humano? Esto se debe a que además de tomar una entrada a una salida, el cerebro realiza muchas otras funciones increíblemente complejas, como la risa y la violencia. Seguramente, ¿no queremos que nuestro programa se ría de nosotros cuando proporcionamos una entrada incorrecta o nos mata por no actualizarlo regularmente? Por lo tanto, tomamos solo lo que necesitamos. Tomamos algunas neuronas.

El diseño :

Lo siguiente que debemos cuidar es cuántas capas de neuronas, por lo tanto, cuántas conexiones entre neuronas queremos. Siguiendo el mismo principio que el anterior, decidimos las siguientes capas esenciales:

1. La capa de entrada

2. La capa de computación

3. La capa de salida

Tomemos el modelo más simple posible de lo anterior:

1. Una neurona toma la entrada

2. Una neurona realiza el cálculo necesario y produce la salida.

Un ejemplo está en orden: puede decidir que su función es la función de umbral. Digamos que las personas con x ml de glucosa en la orina son diabéticas. Luego puede clasificar a las personas diabéticas y no diabéticas.

Al principio, esto puede parecer muy simplista. De manera exasperante.

Sin embargo, debe tener en cuenta que el modelo parece simple porque la neurona, la función que eligió, era simple. Necesita la función “mejor” para producir resultados “mejores”.

Esa palabra “mejor” es donde se realiza la investigación.

Por ejemplo, se ha demostrado que existe una función que puede aproximarse a casi todas las demás funciones de buen comportamiento. Esos son términos técnicos y necesita una buena formación matemática para comprenderlo completamente.

La mejor función que tenemos actualmente es la clase de funciones sigmoideas. Son empinados en el medio y planos en la parte superior e inferior. Tienen buenas propiedades. Los ejemplos incluyen la función tanh y la función 1 / (1 + exp (-x)).

Geoffery Hinton es actualmente el más activo en el campo. Él es responsable de trucos como el Hinton Drop, que apaga algunas neuronas al azar para ahorrar energía computacional y demás.

Los teoremas que solicita abundan en forma de trabajos de investigación dispersos en revistas de estadística a lo largo de los años 50 y 60. Hay muchos más por venir y ANN se está integrando en el campo más amplio de Machine Learning (ML), que en sí mismo es un subconjunto de IA.

En caso de que se pregunte cómo se escribe el código: se implementa utilizando matrices, que representan las entradas que se alimentan a funciones específicas. La salida también se saca en forma de matrices. Es una buena idea repasar su Álgebra Lineal, si desea comprender las implementaciones en mayor profundidad. Pueden variar desde muy simples hasta muy complicadas, como las que se usan en el procesamiento de imágenes.

Buena suerte explorando más!

More Interesting

¿Es posible realizar el aprendizaje en conjunto mediante el apilamiento si solo tengo dos modelos?

¿Cuáles son los requisitos previos para aprender Oracle Apps Technical?

Si una red de alimentación directa de una sola capa es capaz de aproximarse a cualquier grado de precisión, ¿por qué es exitoso el aprendizaje profundo?

¿Está bien usar kNN para este problema de clasificación de símbolos musicales?

¿Dónde puedo encontrar un conjunto de datos de texto traducido de cualquier idioma a otro válido para ser entrenado en un modelo de traducción automática en aprendizaje automático?

¿Qué es un buen texto introductorio de aprendizaje automático?

¿Puede haber mejoras en el tiempo de ejecución al usar GPU para la red neuronal incluso si el conjunto de datos es de baja dimensión?

¿Cómo funciona la función softmax en el campo AI?

¿El proceso gaussiano supone que sus covarianzas se mantienen constantes?

¿Cuáles son las diferencias entre los métodos de análisis de componentes principales?

¿Cómo calculamos el error cuadrático medio en la regla de aprendizaje de LMS?

¿La retropropagación de red neuronal de convolución utiliza un algoritmo en línea o un algoritmo por lotes?

Cómo manejar múltiples funciones usando SVM en visión artificial

¿Cuáles son algunos de los obstáculos que evitan que las empresas aprovechen el poder del aprendizaje automático?

¿Necesito normalizar mis vectores de características antes de usar Deep Learning?