Una descripción completa de las redes neuronales artificiales (ANN)
Publicado: 2020-07-17Incluso si no está trabajando en el espacio de la ciencia de datos o la ingeniería de software, es difícil evitar ponerse frente al término redes neuronales artificiales.
Las redes neuronales artificiales (ANN) son omnipresentes. Se utilizan en chatbots, imágenes médicas, planificación de medios y muchas otras áreas. Pero, ¿nos hemos preguntado con un sentido de profunda curiosidad: qué es una red neuronal artificial y qué puede lograr realmente?
Todos nos hemos encontrado con la definición común de que las redes neuronales artificiales replican el funcionamiento del sistema neuronal humano. Eso explica el principio de funcionamiento, pero la mayoría de nosotros todavía no sabemos qué hace que una ANN sea tan especial o para qué problemas es ideal. Para aclarar las cosas, aquí está la guía más completa y accesible que encontrará sobre redes neuronales artificiales.
¿Qué es una red neuronal artificial?
Cuando una docena de términos como inteligencia artificial, aprendizaje automático, aprendizaje profundo y redes neuronales, es fácil confundirse. La bifurcación real entre estas verticales no es tan complicada.
AI es el conjunto universal que es el tema en cuestión. Es el estudio sistemático de cómo operan y se realizan los programas inteligentes. El aprendizaje automático es un subconjunto de la IA que se centra en cómo las máquinas pueden aprender por sí mismas. El aprendizaje profundo es un subconjunto adicional de ML que se enfoca en cómo se pueden usar las capas de redes neuronales para generar resultados. Puede utilizar esta visualización para navegar por la jerarquía:

Entonces, ¿qué es una red neuronal artificial? La respuesta es exactamente como la promocionan los medios populares. Es un sistema de procesamiento de datos y generación de resultados que replica el sistema neuronal para desentrañar relaciones no lineales en un gran conjunto de datos. Los datos pueden provenir de rutas sensoriales y pueden estar en forma de texto, imágenes o audio.
La mejor manera de entender cómo funciona una red neuronal artificial es comprender cómo funciona una red neuronal natural dentro del cerebro y establecer un paralelismo entre ellas. Las neuronas son el componente fundamental del cerebro humano y son responsables del aprendizaje y la retención del conocimiento y la información tal como los conocemos. Puede considerarlos la unidad de procesamiento en el cerebro. Toman los datos sensoriales como entrada, los procesan y dan los datos de salida utilizados por otras neuronas. La información se procesa y pasa hasta que se alcanza un resultado decisivo.
La red neuronal básica en el cerebro está conectada por sinapsis. Puede visualizarlos como los nodos finales de un puente que conecta dos neuronas. Entonces, la sinapsis es el punto de encuentro de dos neuronas. Las sinapsis son una parte importante de este sistema porque la fuerza de una sinapsis determinaría la profundidad de la comprensión y la retención de la información.
Cuando estás practicando una actividad, estás fortaleciendo estas relaciones sinápticas. Así es como puedes visualizar la red neuronal en tu cerebro:
Todos los datos sensoriales que tu cerebro recopila en tiempo real se procesan a través de estas redes neuronales. Tienen un punto de origen en el sistema. Y a medida que son procesadas por las neuronas iniciales, la forma procesada de una señal eléctrica que sale de una neurona se convierte en la entrada para otra neurona. Este procesamiento de microinformación en cada capa de neuronas es lo que hace que esta red sea efectiva y eficiente. Al replicar este tema recurrente de procesamiento de datos a través de la red neuronal, las ANN pueden producir resultados superiores.
En una ANN, todo está diseñado para replicar este mismo proceso. No te preocupes por la ecuación matemática. Esa no es la idea clave que debe entenderse ahora. Todos los datos que ingresan con la etiqueta 'X' en el sistema tienen un peso de 'W' para generar una señal ponderada. Esto replica el papel de la fuerza de una señal sináptica en el cerebro. La variable de sesgo se adjunta para controlar los resultados de la salida de la función.
Entonces, todos estos datos se procesan en la función y terminas con una salida. Así es como se vería una red neuronal de una capa o un perceptrón. La idea de una red neuronal artificial gira en torno a la conexión de varias combinaciones de estas neuronas artificiales para obtener resultados más potentes. Es por eso que el marco conceptual de la típica red neuronal artificial se parece mucho a esto:
Pronto definiremos la capa oculta, mientras profundizamos en cómo funciona una red neuronal artificial. Pero en lo que respecta a una comprensión rudimentaria de una red neuronal artificial, ahora conoce los primeros principios.
Este mecanismo se utiliza para descifrar grandes conjuntos de datos. La salida generalmente tiende a ser un establecimiento de causalidad entre las variables ingresadas como entrada que puede usarse para pronósticos. Ahora que conoce el proceso, puede apreciar completamente la definición técnica aquí:
“Una red modelada a partir del cerebro humano mediante la creación de un sistema neuronal artificial a través de un algoritmo informático de reconocimiento de patrones que aprende, interpreta y clasifica los datos sensoriales”.
¿Cómo funcionan y aprenden las redes neuronales artificiales?
Prepárate, las cosas están a punto de ponerse interesantes aquí. Y no te preocupes, no tienes que hacer un montón de matemáticas en este momento.
La magia sucede primero en la función de activación. La función de activación realiza un procesamiento inicial para determinar si la neurona se activará o no. Si la neurona no está activada, su salida será la misma que su entrada. Entonces no pasa nada. Es fundamental tener esto en la red neuronal, de lo contrario, el sistema se verá obligado a procesar una tonelada de información que no tiene impacto en la salida. Verá, el cerebro tiene una capacidad limitada pero ha sido optimizado para usarla de la mejor manera.
Una propiedad central común a todas las redes neuronales artificiales es el concepto de no linealidad. La mayoría de las variables que se estudian poseen una relación no lineal en la vida real.
Tomemos por ejemplo el precio del chocolate y la cantidad de chocolates. Suponga que un chocolate cuesta $1. ¿Cuánto costarían 100 chocolates? Probablemente $100. ¿Cuánto costarían 10,000 chocolates? No $10,000; porque el vendedor agregará el costo de usar empaques adicionales para juntar todos los chocolates o reducirá el costo ya que le está quitando gran parte de su inventario de una sola vez. Ese es el concepto de no linealidad.
Una función de activación utilizará principios matemáticos básicos para determinar si la información se procesará o no. Las formas más comunes de funciones de activación son la función de paso binario, la función logística, la función de tangente hiperbólica y las unidades lineales rectificadas. Aquí está la definición básica de cada uno de estos:
- Función de paso binario: Esta función activa una neurona en base a un umbral. Si la función tiene un resultado final que está por encima o por debajo de un valor de referencia, la neurona se activa.
- Función logística: esta función tiene un resultado final matemático en forma de curva 'S' y se utiliza cuando las probabilidades son el criterio clave para determinar si la neurona debe activarse. Entonces, en cualquier punto, puedes calcular la pendiente de esta curva. El valor de esta función se encuentra entre 0 y 1.
La pendiente se calcula utilizando una función diferencial. El concepto se utiliza cuando dos variables no tienen una relación lineal. La pendiente es el valor de una tangente que toca la curva en el punto exacto donde se activa la no linealidad. El problema con la función logística es que no es buena para procesar información con valores negativos. - Función tangente hiperbólica: es bastante similar a la función logística, excepto que sus valores se encuentran entre -1 y +1. Entonces, el problema de que un valor negativo no se procese en la red desaparece.
- Unidades lineales rectificadas (ReLu): Los valores de esta función se encuentran entre 0 e infinito positivo. ReLu simplifica algunas cosas: si la entrada es positiva, dará el valor de 'x'. Para todas las demás entradas, el valor sería '0'. Puede usar un Leaky ReLu que tenga valores entre infinito negativo e infinito positivo. Se usa cuando la relación entre las variables que se procesan es realmente débil y la función de activación podría omitirla por completo.
Ahora puede consultar los mismos dos diagramas de un perceptrón y una red neuronal. ¿Cuál es la diferencia, aparte del número de neuronas? La diferencia clave es la capa oculta. Una capa oculta se encuentra justo entre la capa de entrada y la capa de salida en una red neuronal. El trabajo de la capa oculta es refinar el procesamiento y eliminar variables que no tendrán un fuerte impacto en la salida.
Si el número de instancias en un conjunto de datos donde el impacto del cambio en el valor de una variable de entrada es notable en la variable de salida, la capa oculta mostrará esa relación. La capa oculta facilita que la ANN envíe señales más fuertes a la siguiente capa de procesamiento.
Incluso después de hacer todos estos cálculos y comprender cómo funciona la capa oculta, es posible que se pregunte cómo aprende realmente una red neuronal artificial. Comencemos con la pregunta básica de qué es aprender. Aprender, en los términos más simples, es establecer causalidad entre dos cosas (actividades, procesos, variables, etc.). Cuando 'aprende' cómo lanzar una bola curva, está estableciendo causalidad entre la acción física de lanzar la bola de cierta manera y hacer que la trayectoria de la bola se curve de cierta manera.
Ahora bien, esta causalidad es muy difícil de establecer. ¿Recuerdas el dicho de que la correlación no es igual a la causalidad? Es bastante fácil determinar cuándo dos variables se mueven en la misma dirección. Es muy difícil decir con absoluta certeza qué variable está provocando el movimiento en qué variable. Obviamente, a menudo somos capaces de establecer esto intuitivamente; pero ¿cómo hacer que un algoritmo entienda la intuición?

Usas una función de costo. Matemáticamente, es la diferencia al cuadrado entre el valor real del conjunto de datos y el valor de salida del conjunto de datos. También puede considerar el grado de error. Lo elevamos al cuadrado porque a veces la diferencia puede ser negativa.
Puede marcar cada ciclo de procesamiento de entrada a salida con la función de costo. Su trabajo y el de ANN es minimizar la función de costo al valor más bajo posible. Lo logras ajustando los pesos en la ANN. (¿Recuerdas las relaciones sinápticas, también conocidas como los pesos? De eso es de lo que estamos hablando). Hay varias formas de hacer esto, pero en la medida en que comprenda el principio, solo estaría usando diferentes herramientas para ejecutarlo.
Con cada ciclo, nuestro objetivo es minimizar la función de costo. El proceso de pasar de la entrada a la salida se llama propagación directa. Y el proceso de usar datos de salida para minimizar la función de costo ajustando el peso en orden inverso desde la última capa oculta hasta la capa de entrada se llama propagación hacia atrás.
Puede seguir ajustando estos pesos utilizando el método de fuerza bruta, que se vuelve ineficiente cuando el conjunto de datos es demasiado grande, o el descenso de gradiente por lotes, que es un algoritmo de optimización. Ahora tiene una comprensión intuitiva de cómo aprende una red neuronal artificial.
Redes neuronales recurrentes (RNN) frente a redes neuronales convolucionales (CNN)
Comprender estas dos formas de redes neuronales también puede ser su introducción a dos facetas diferentes de la aplicación de IA: la visión por computadora y el procesamiento del lenguaje natural. En la forma más simple, estas dos ramas de la IA ayudan a una máquina a identificar objetos visualmente y comprender el contexto de los datos lingüísticos. Como os podéis imaginar, ya se utilizan aplicaciones de estas ramas en coches autónomos y asistentes virtuales como Siri.
Ahora, cada una de estas ramas tiene su propia red neuronal establecida. La PNL depende en gran medida de las redes neuronales recurrentes. La diferencia entre una RNN y una ANN es que en una ANN, cada señal de entrada se considera independiente de la siguiente señal de entrada. Entonces, los datos de entrada que existen entre dos nodos, en sí mismos no tienen ninguna relación.
En realidad, ese no es el caso. Cuando nos estamos comunicando, cada palabra despeja el camino contextual para la siguiente palabra. Por lo tanto, la naturaleza fundamental del lenguaje es que crea interdependencias entre la información que se ingresa antes y la información que se ingresa después. Los RNN son sensibles a esto al ejecutar una memoria paralela que establece la relación entre estas entradas para borrar el contexto.
Las redes neuronales convolucionales se utilizan idealmente para la visión artificial. Además de las funciones de activación generalmente utilizadas, agregan una función de agrupación y una función de convolución. Una función de convolución, en términos más simples, mostraría cómo la entrada de una imagen y la entrada de una segunda imagen (un filtro) dará como resultado una tercera imagen (el resultado). Puede imaginar esto visualizándolo como una imagen filtrada (un nuevo conjunto de valores de píxel) sobre su imagen de entrada (conjunto original de valores de píxel) para obtener una imagen resultante (valores de píxel modificados).
Una función de agrupación tomará el valor máximo o mínimo, según la función agregada, para facilitar el procesamiento de este conjunto de información. Así es como puedes visualizarlos:


Función de agrupación
5 aplicaciones de las redes neuronales artificiales
Lo que hemos hablado hasta ahora estaba sucediendo debajo del capó. Ahora podemos alejarnos y ver estas ANN en acción para apreciar completamente su vínculo con nuestro mundo en evolución:
1. Personaliza las recomendaciones en las plataformas de comercio electrónico
Una de las primeras aplicaciones de ANN ha sido personalizar las experiencias de la plataforma de comercio electrónico para cada usuario. ¿Recuerdas las recomendaciones realmente efectivas en Netflix? ¿O las sugerencias de productos perfectas de Amazon? Son el resultado de la ANN.
Hay una tonelada de datos que se utilizan aquí: sus compras anteriores, datos demográficos, datos geográficos y los datos que muestran qué compraron a continuación las personas que compraron el mismo producto. Todos estos sirven como entradas para determinar qué podría funcionar para usted. Al mismo tiempo, lo que realmente compra ayuda a optimizar el algoritmo. Con cada compra, estás enriqueciendo a la empresa y al algoritmo que potencia la ANN. Al mismo tiempo, cada nueva compra realizada en la plataforma también mejorará la destreza del algoritmo para recomendarle los productos correctos.
2. Aprovechar el procesamiento del lenguaje natural para chatbots conversacionales
No hace mucho tiempo, las cajas de chat comenzaron a cobrar fuerza en los sitios web. Un agente se sentaría a un lado y lo ayudaría con sus consultas escritas en el cuadro. Luego, se introdujo un fenómeno llamado procesamiento de lenguaje natural (NLP) en los chatbots y todo cambió.
La PNL generalmente usa reglas estadísticas para replicar las capacidades del lenguaje humano y, al igual que otras aplicaciones ANN, mejora con el tiempo. Sus puntuaciones, entonaciones y enunciaciones, elecciones gramaticales, elecciones sintácticas, orden de palabras y oraciones, e incluso el idioma de elección pueden servir como entradas para entrenar el algoritmo de PNL.
El chatbot se vuelve conversacional al usar estas entradas para comprender el contexto de sus consultas y formular respuestas de la manera que mejor se adapte a su estilo. El mismo NLP también se está utilizando para la edición de audio en música y con fines de verificación de seguridad.
3. Predecir los resultados de un evento de alto perfil
La mayoría de nosotros seguimos las predicciones de resultados que realizan los algoritmos impulsados por IA durante las elecciones presidenciales y la Copa Mundial de la FIFA. Dado que ambos eventos están escalonados, ayuda al algoritmo a comprender rápidamente su eficacia y minimizar la función de costo a medida que se eliminan equipos y candidatos. El verdadero desafío en tales situaciones es el grado de las variables de entrada. Desde candidatos hasta estadísticas de jugadores, datos demográficos y capacidades anatómicas, todo debe incorporarse.
En los mercados de valores, los algoritmos predictivos que usan ANN existen desde hace un tiempo. Las actualizaciones de noticias y las métricas financieras son las variables de entrada clave utilizadas. Gracias a esto, la mayoría de las bolsas y los bancos pueden intercambiar fácilmente activos bajo iniciativas comerciales de alta frecuencia a velocidades que superan con creces las capacidades humanas.
El problema con los mercados de valores es que los datos siempre son ruidosos. La aleatoriedad es muy alta debido a que el grado de juicio subjetivo que puede afectar el precio de un valor es muy alto. Sin embargo, los ANN están siendo utilizados en actividades de creación de mercado por todos los bancos líderes en estos días.
4. Sanciones crediticias
Ya se estaban utilizando tablas actuariales para determinar los factores de riesgo asociados a cada solicitante de seguro. Las ANN han llevado todos esos datos a un nivel superior.
Todos los prestamistas pueden analizar las décadas de datos que poseen con las ponderaciones fuertemente establecidas en el sistema y usar su información como entrada para determinar el perfil de riesgo apropiado asociado con su solicitud de préstamo. Su edad, género, ciudad de residencia, escuela de graduación, industria de participación, salario y tasa de ahorro, se utilizan como datos para determinar sus puntajes de riesgo crediticio.
Lo que antes dependía en gran medida de su puntaje de crédito individual ahora se ha convertido en un mecanismo mucho más completo. Esa es la razón por la que varios jugadores privados de fintech se han lanzado al espacio de los préstamos personales para ejecutar las mismas ANN y prestar a personas cuyos perfiles son considerados demasiado riesgosos por los bancos.
5. Coches autónomos
Tesla, Waymo y Uber han estado usando ANN similares. Las entradas y la ingeniería del producto podrían haber diferido, pero estaban implementando computación visual sofisticada para hacer realidad los autos sin conductor.
Gran parte de la conducción autónoma tiene que ver con el procesamiento de información que proviene del mundo real en forma de vehículos cercanos, señales de tráfico, luces naturales y artificiales, peatones, edificios, etc. Obviamente, las redes neuronales que impulsan estos autos autónomos son más complicadas que las que discutimos aquí, pero funcionan con los mismos principios que expusimos.
Conclusión
Las ANN se están volviendo más y más sofisticadas día a día. Los NLP ahora están ayudando en el diagnóstico temprano de problemas de salud mental, la visión por computadora se está utilizando en imágenes médicas y las ANN están impulsando la entrega de drones. A medida que las ANN se vuelvan más complejas y estratificadas, la necesidad de inteligencia humana en este sistema será menor. Incluso áreas como el diseño han comenzado a implementar soluciones de IA con diseño generativo.
La evolución eventual de todas las ANN juntas sería la Inteligencia General, una forma de inteligencia tan sofisticada que puede aprender y percibir toda la información conocida y desconocida para la humanidad. Si bien es una realidad muy lejana, si es posible, se ha convertido en un concepto concebible gracias a la amplia adopción de ANN.