Redes neuronales para tontos: una guía completa
Publicado: 2018-02-07Nuestro cerebro es una increíble máquina de reconocimiento de patrones. Procesa 'entradas' del mundo exterior, las categoriza (eso es un perro; eso es un trozo de pizza; ¡oh, eso es un autobús que viene hacia mí!) y luego genera una 'salida' (acariciar al perro; el delicioso sabor de esa pizza; ¡salir del camino del autobús!).
Todo esto con poco esfuerzo consciente, casi impulsivamente. Es el mismo sistema que detecta si alguien está enojado con nosotros, o involuntariamente nota la señal de alto cuando pasamos a toda velocidad. Los psicólogos llaman a este modo de pensar 'Sistema 1' e incluye habilidades innatas, como la percepción y el miedo, que compartimos con otros animales. (También hay un 'Sistema 2', para saber más sobre él, consulte el extremadamente informativo Thinking, Fast and Slow de Daniel Kahneman ).
¿Cómo se relaciona todo esto con las redes neuronales ? Espera, llegaremos allí en un segundo.

Mire la imagen de arriba, solo sus números regulares, distorsionados para ayudarlo a explicar mejor el aprendizaje de las redes neuronales . Incluso mirando superficialmente, su mente le indicará las palabras "192".
Seguramente no dijiste “Ah, eso parece una línea recta, creo que es un 1”. No lo calculaste, sucedió instantáneamente.
fascinante, ¿verdad?
Hay una razón muy simple para esto: te has encontrado con el dígito tantas veces en tu vida que, por prueba y error, tu cerebro reconoce automáticamente el dígito si le presentas algo remotamente parecido.
¿Cuál es la diferencia entre ciencia de datos, aprendizaje automático y big data?
Vamos a cortar por lo sano.
Tabla de contenido
¿Qué es exactamente una Red Neuronal ? ¿Como funciona?
Por definición, una red neuronal es un sistema de hardware o software, modelado según el funcionamiento de las neuronas en el cerebro humano. Básicamente, ayuda a las computadoras a pensar y aprender como humanos. Un ejemplo hará esto más claro:
Cuando éramos niños, si alguna vez tocábamos una taza de café caliente y nos quemaba, nos asegurábamos de no volver a tocar una taza caliente nunca más. Pero, ¿teníamos tal concepto de dolor en nuestra conciencia ANTES de tocarlo? Realmente no.
Este ajuste de nuestro conocimiento y comprensión del mundo que nos rodea se basa en el reconocimiento de patrones. Y, como nosotros, las computadoras también aprenden a través del mismo tipo de reconocimiento de patrones. Este aprendizaje forma la base completa del funcionamiento de las redes neuronales .
Los programas informáticos tradicionales funcionan en árboles lógicos: si sucede A, sucede B. Todos los resultados potenciales para cada uno de los sistemas se pueden preprogramar. Sin embargo, esto elimina el alcance de la flexibilidad. No hay aprendizaje allí.
¡Y ahí es donde las redes neuronales entran en escena! Una red neuronal se construye sin ninguna lógica específica. Esencialmente, es un sistema que está entrenado para buscar y adaptarse a patrones dentro de los datos. Está modelado exactamente según cómo funciona nuestro propio cerebro. Cada neurona (idea) está conectada a través de sinapsis. Cada sinapsis tiene un valor que representa la probabilidad o posibilidad de que ocurra la conexión entre dos neuronas. Hecha un vistazo a la imagen de abajo:

¿Qué son exactamente las neuronas, preguntas?
En pocas palabras, una neurona es solo un concepto singular. Una taza, el color blanco, el té, la sensación de ardor al tocar una taza caliente, básicamente cualquier cosa. Todas estas son posibles neuronas. Todos ellos se pueden conectar, y la fuerza de su conexión se decide por el valor de su sinapsis. Cuanto mayor sea el valor, mejor será la conexión. Veamos una conexión de red neuronal básica para que lo entiendas mejor:

Cada neurona es el nodo y las líneas que las conectan son las sinapsis. El valor de sinapsis representa la probabilidad de que una neurona se encuentre junto a la otra. Entonces, está bastante claro que el diagrama que se muestra en la imagen de arriba describe una taza que contiene café, que es de color blanco y está extremadamente caliente.
Generación de lenguaje natural: cosas principales que debe saber
Todas las tazas no tienen las propiedades como la en cuestión. Podemos conectar muchas otras neuronas a la taza. El té, por ejemplo, es probablemente más común que el café. La probabilidad de que dos neuronas se conecten está determinada por la fuerza de la sinapsis que las conecta. Cuanto mayor sea el número de tazas calientes, más fuerte será la sinapsis.
Sin embargo, en un mundo donde las tazas no se usan para contener bebidas calientes, la cantidad de tazas calientes disminuiría drásticamente. Por cierto, esta disminución también daría como resultado una disminución de la fuerza de las sinapsis que conectan las tazas con el calor.
Entonces,

se convierte

Esta descripción pequeña y aparentemente sin importancia de una taza representa la construcción central de las redes neuronales .
Tocamos una taza que se encuentra sobre una mesa: descubrimos que está caliente. Nos hace pensar que todas las tazas están calientes. Luego, tocamos otra taza, esta vez, la que está en el estante, no está nada caliente. Llegamos a la conclusión de que las tazas en el estante no están calientes. A medida que crecemos, evolucionamos.
Nuestro cerebro ha estado tomando datos todo este tiempo. Este dato le permite determinar una probabilidad precisa de si la taza que estamos a punto de tocar estará caliente o no. Las redes neuronales aprenden exactamente de la misma manera.
Ahora, hablemos un poco sobre el primer y más básico modelo de una red neuronal : ¡El Perceptrón!

¿Qué es un perceptrón?
Un perceptrón es el modelo más básico de una red neuronal. Toma múltiples entradas binarias: x1, x2, …, y produce una única salida binaria.

Comprendamos mejor la red neuronal anterior con la ayuda de una analogía.
Digamos que caminas al trabajo. Tu decisión de ir a trabajar se basa principalmente en dos factores: el clima y si es un día laborable o no. El factor clima todavía es manejable, ¡pero trabajar los fines de semana es un gran no! Como tenemos que trabajar con entradas binarias, propongamos las condiciones como preguntas de sí o no. ¿Está bien el tiempo? 1 para sí, 0 para no. ¿Es un día de semana? 1 si, 0 no
Una guía para principiantes sobre la comprensión del lenguaje natural
Recuerde, no podemos decirle explícitamente a la red neuronal estas condiciones; tendrá que aprenderlos por sí mismo. ¿Cómo decidirá la prioridad de estos factores al tomar una decisión? Mediante el uso de algo conocido como "pesos". Los pesos son solo una representación numérica de las preferencias. Un mayor peso hará que la red neuronal considere esa entrada con mayor prioridad que las demás. Esto está representado por w1, w2... en el diagrama de flujo anterior.
"Está bien, todo esto es bastante fascinante, pero ¿dónde encuentran trabajo las redes neuronales en un escenario práctico?"
Aplicaciones de la vida real de las Redes Neuronales
Si aún no lo ha descubierto, aquí está, una red neuronal puede hacer casi todo, siempre que pueda obtener suficientes datos y una máquina eficiente para obtener los parámetros correctos. Cualquier cosa que requiera aprendizaje automático, incluso remotamente, recurre a las redes neuronales en busca de ayuda. El aprendizaje profundo es otro dominio que hace un uso extensivo de las redes neuronales. Es uno de los muchos algoritmos de aprendizaje automático que permite que una computadora realice una gran cantidad de tareas, como clasificación, agrupación o predicción.
- Con la ayuda de las redes neuronales , podemos encontrar la solución a esos problemas para los que un método algorítmico tradicional es costoso o no existe.
- Las redes neuronales pueden aprender con el ejemplo, por lo tanto, no necesitamos programarlo en gran medida.
- Las redes neuronales son precisas y significativamente más rápidas que las velocidades convencionales.
Debido a las razones mencionadas anteriormente y más, el aprendizaje profundo, al hacer uso de las redes neuronales , encuentra un uso extensivo en las siguientes áreas:

- Reconocimiento de voz: Tome el ejemplo de Amazon Echo Dot : parlantes mágicos que le permiten pedir comida, obtener noticias y actualizaciones del clima, o simplemente comprar algo en línea simplemente hablando.
- Reconocimiento de escritura a mano: las redes neuronales se pueden entrenar para comprender los patrones en la escritura de alguien. Eche un vistazo a la aplicación de entrada de escritura a mano de Google, que utiliza el reconocimiento de escritura a mano para convertir sin problemas sus garabatos en textos significativos.
- Reconocimiento facial: desde mejorar la seguridad de su teléfono (Face ID) hasta los geniales filtros de Snapchat , el reconocimiento facial está en todas partes. Si alguna vez subiste una foto a Facebook y te pidieron que etiquetaras a las personas en tu foto, ¡sabes lo que es el reconocimiento facial!
- Proporcionar inteligencia artificial en los juegos: si alguna vez ha jugado ajedrez contra una computadora, ya sabe cómo la inteligencia artificial potencia los juegos y el desarrollo de juegos. Es en la medida en que los jugadores usan la IA para mejorar sus tácticas y probar sus estrategias de primera mano .
En conclusión…
Las redes neuronales forman la columna vertebral de casi todas las grandes tecnologías o invenciones que se ven hoy en día. Es justo decir que imaginar el aprendizaje automático/profundo sin redes neuronales es casi imposible. Según la forma en que implemente una red y el tipo de aprendizaje que utilice, puede lograr mucho con una red neuronal , en comparación con un sistema informático tradicional.

Aprenda cursos de ML de las mejores universidades del mundo. Obtenga programas de maestría, PGP ejecutivo o certificado avanzado para acelerar su carrera.
¿En qué se diferencia el aprendizaje profundo de las redes neuronales?
El aprendizaje profundo es una rama del aprendizaje automático, mientras que las redes neuronales consisten en varios algoritmos de aprendizaje automático. Mientras que las redes neuronales emplean neuronas para transmitir datos en forma de valores de entrada y salida a través de conexiones, el aprendizaje profundo está asociado con la transformación y extracción de características, cuyo objetivo es establecer una relación entre los estímulos y las respuestas neuronales correspondientes que existen en el cerebro.
¿Cuáles son algunas limitaciones de las redes neuronales?
Una desventaja de emplear redes neuronales es que se necesita una gran cantidad de datos, que es uno de los aspectos negativos. Además, en comparación con las técnicas estándar, la utilización de redes neuronales es computacionalmente costosa. Un problema importante es que las redes neuronales no brindan una buena explicación de los resultados que producen. Esto se puede observar en sitios como Quora, donde cuando se cancela la cuenta de un usuario, no se puede proporcionar una explicación clara de por qué la respuesta que proporcionó fue incorrecta.
¿Cómo maneja la ambigüedad el aprendizaje automático?
ML incluye una amplia gama de tipos de datos, como fotos, videos, scripts, etc. Aunque desafiantes, los algoritmos de aprendizaje automático, como el procesamiento del lenguaje natural y la secuenciación del ADN, brindan respuestas a la ambigüedad. La ambigüedad solo se reducirá si se utilizan más datos de alta calidad. Además, el objetivo de ML idealizado debe ser exacto y estar sincronizado con las necesidades del proyecto de ML en cuestión.
