Redes Neuronales. Un conjunto de palabras que hemos escuchado con creciente frecuencia en estos dos últimos años y cuya importancia, irá creciendo aún más. Pero qué son las redes neuronales, por qué están cobrando tanta importancia ahora, y cuáles son las aplicaciones que podremos darle? En este artículo, veremos por qué es importante tener el concepto de redes neuronales bien claro, para entender qué nos depara el futuro cercano.

 Redes neuronales artificiales: una simulación del cerebro humano.

Lo bueno es que “redes neuronales”, de por sí, es un conjunto de palabras bastante descriptivo. Sabemos que, de alguna manera, tiene que estar relacionado con el cerebro, verdad?

Y es que una red neuronal es, en esencia, una simulación o copia de cómo funciona un cerebro típico, en una computadora. Una manera que una computadora pueda aprender, detectar patrones y tomar decisiones en torno a ello, tal y como lo haría un ser humano.

Piensen un momento cómo es que funciona la computadora, smartphone o tablet que estén usando. Estas computadoras son muy capaces a la hora de realizar cálculos, de reorganizar información, de actuar frente a las precisas instrucciones que nosotros les damos. Pero sin una interacción de nuestra parte, si nosotros no le “ordenamos” a la computadora hacer algo, son totalmente inútiles. Nuestro cerebro, por otro lado, funciona de una manera totalmente diferente. Puede que nos tome mucho más tiempo realizar cálculos o reordenar información, pero nuestro cerebro puede razonar , recopilar información recogida por experiencia, y luego asumir o interpretar dicha información para actuar sobre ella.

Un ejemplo excelente, es el que encontramos en “Neural Networks and Deep Learning”. Vean esto:

Nosotros podemos rápidamente interpretar dicha imagen como 504192, verdad? Pero esto es porque nuestro cerebro, como una super computadora, analiza la información visual y sabe, por experiencias pasadas, por miles cientos de millones de años de evolución, que se trata de una serie de dígitos. Pero intentar hacer que una computadora entienda ello, que el “2” es una figura ligeramente redondeada en la parte superior, con una curvatura inicial para terminar en una línea recta horizontal, es sumamente complicado. Y no, tampoco entenderá analogías como “piensa en el dos como si fuese un cisne”.

Aquí es donde las redes neuronales, o la inteligencia artificial entran en acción. En lugar de actuar como un típico programa de computadora, que espera nuestros comandos para poder tomar acción, una red neuronal toma una enorme cantidad de información previa, conocido como “ejemplos de entrenamiento” y luego utiliza esta información para para inferir una respuesta por su cuenta. Si nosotros notamos algún error y se lo hacemos saber, la red neuronal puede adaptar este nuevo conocimiento, tomarlo como un resultado negativo y así, mejorar la precisión de información para el futuro . Es decir, las redes neuronales siempre están en constante aprendizaje, alimentándose de la información d

Algunos ejemplos de entrenamiento para que las redes neuronales sean capaces de inferir sobre números escritos a mano:

Así es como funcionan las redes neuronales: cogen enormes cantidades de información pre-existente (denominado “input units”) que pasan a ser procesadas para luego darnos un “output” o resultado Las redes neuronales aprenden de acuerdo al feedback o respuestas que les damos. Siguiendo el ejemplo anterior: si detecta un “9” cuando no lo es y se lo informamos, tomará esta información para aplicarla en un futuro.

 Algunos ejemplos

Quizás uno de los ejemplos más populares en la actualidad, es la aplicación fotográfica “Prisma”, que recientemente saltó a la fama por ofrecernos los mejores filtros artísticos que hemos visto a la fecha. De la nada, Prisma podía imitar el estilo de varios artistas, o darle a nuestras fotos un look de ilustración.

Esto lo consigue a través de redes neuronales. Prisma se alimenta de información de millones de fotografías, para poder definir qué cosa es qué en una imagen. Es decir, sabe el “contexto” de la foto. Piensen en una aplicación fotográfica cualquiera; lo que hace usualmente, es hacer los cálculos necesarios para aplicar un filtro a toda la imagen, de acuerdo a los parámetros que nosotros establecemos, verdad?

En cambio Prisma actúa diferente. Prisma no aplica un filtro encima de la foto y nos la entrega, sino que construye una imagen nueva en base a la información dada. Coge nuestra foto y detecta que se trata de un paisaje, por ejemplo, o de un retrato. Luego, en base al estilo seleccionado, aplica esta información y genera una imagen nueva, de cero, en un “lienzo vacío”. Por eso los resultados son tan diferentes, tan especiales con Prisma. No se trata de una “capa de pintura” o filtro encima de la foto; es una imagen construida desde cero, por redes neuronales.

Otro claro ejemplo, es el que Google recientemente implementó en su app Google Translate para móviles, que ha implementado “traducción neuronal” que, en lugar de traducir palabra por palabra, lo hace frase por frase, mejorando enormemente la consistencia y calidad de las traducciones. El resultado, gracias a la aplicación de redes neuronales a Google Translate es, según Barak Turovsky, product lead, una mejora tan sustancial que ha mejorado más con este salto, que en los últimos 10 años combinados. De momento, las redes neuronales para traducción se aplican a 8 idiomas: Alemán, Francés, Español, Portugués, Chino, Japonés, Coreano y Turco.

Este es tan sólo un par de ejemplos recientes de la aplicación visible de redes neuronales (o Inteligencia Artificial) a aplicaciones a las que nosotros, como consumidores finales, tenemos acceso. Gracias al creciente poder computacional, además de la creciente recolección de información de gigantes como Google, es que estas redes neuronales, ahora, cuenta con la data o información necesaria, además del poder computacional para poder procesarlas. Por eso estamos viendo tantos avances en ello. Se han preguntado cómo Google Photos, por ejemplo, hace tan buen trabajo en detectar el contexto de nuestras fotos? Cómo sabe que estamos en un concierto, en una montaña, que esa foto que tomamos es de una cerveza, o de una copa de vino? Cómo identifica rostros de personas, a pesar de que estas personas están de perfil, en un segundo plano? Todo esto es gracias a las redes neuronales. Y la aplicación y utilidad de las mismas, se irá ampliando.

Gracias a la cantidad de información que Google recibe, está en una posición privilegiada para poder realizar grandes avances a las redes neuronales, machine learning e inteligencia artificial en sí. De hecho, acaban de lanzar “A.I Experiments”, un portal con diferentes juegos que nos darán una oportunidad de aprender y conocer cómo funcionan. Pueden darle un vistazo aquí!

screenshot-2016-11-16-09-35-38f