[vc_row][vc_column][vc_column_text]En los últimos meses, los temas relacionados a Inteligencia Artificial en general y a Machine Learning en particular a llegado a formar parte de la agenda de los ejecutivos, estos son consultados por los inversores sobre sus estrategias en Machine Learning y donde ya han implementado ML. Entonces, ¿Cómo este tema técnico de repente es convirtió en un tema de discusión en las salas de junta de la compañia?
Se supone que las computadoras resuelven tareas para los humanos. El enfoque tradicional es «programar» el procedimiento deseado; en otras palabras, le enseñamos a la computadora un algoritmos de resolución de problemas adecuado. El algoritmo es una descripción detallada de un procedimiento, similar a una receta. Hay muchas tareas que se pueden describir de manera efectiva mediante un algoritmo. Por ejemplo, en la primaria aprendimos el algoritmo para sumar números.
Sin embargo, este procedimiento tiene sus limitaciones. ¿Cómo reconocemos una foto de un gato? Esta tarea aparentemente fácil es difícil de estructurar como un algoritmo. Hagamos una pausa por un momento y piénselo. Incluso las instrucciones simples como «tiene cuatro patas» o «tiene dos ojos» tienen sus desventajas, porque estas características pueden estar ocultas, o la foto solo puede mostrar parte del gato. Luego nos encontramos con la siguiente tarea de reconocer una pierna o un ojo, que es tan difícil como identificar un gato.
Aquí es exactamente donde reside la fuerza del aprendizaje automático. En lugar de tener que desarrollar un algoritmo para resolver el problema, la computadora usa ejemplos para aprender el algoritmo por sí mismo. Entrenamos la computadora sobre la base de muestras. Usando nuestro ejemplo de gato, esto podría significar que entrenamos el sistema usando una gran cantidad de fotos, con las que muestran un gato etiquetado en consecuencia (aprendizaje supervisado). De esta manera, un algoritmo evoluciona y madura que finalmente es capaz de reconocer gatos en imágenes desconocidas.[/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_single_image image=»1904″ img_size=»full» alignment=»center»][/vc_column][/vc_row][vc_row][vc_column][vc_column_text]De hecho, en esta situación, la computadora generalmente no aprende los programas clásicos tanto como los parámetros dentro de un modelo, por ejemplo, los pesos de borde dentro de una red. Este principio se puede comparar con el proceso de aprendizaje en nuestro cerebro (al menos, hasta donde lo entendemos), en el que las conexiones entre las células nerviosas (neuronas) se adaptan. Al igual que el cerebro, ya diferencia de un programa clásico, esta red con sus pesos de borde es virtualmente imposible de interpretar por los humanos.
En este contexto, una clase especial de métodos de aprendizaje para redes neuronales artificiales llamada Deep Learning ha demostrado ser particularmente exitosa. El Deep Learning es una especialización del Machine Learning, que a su vez es una sub disciplina de la inteligencia artificial, una rama importante de la investigación en ciencias de la computación. Ya en 2012, un equipo de investigación de Google entrenó con éxito una red de 16,000 computadoras para identificar gatos (y otras categorías de objetos) a partir de imágenes usando 10 millones de vídeos de YouTube. El procedimiento empleado fue el Deep Learning.
[/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_column_text]Muchos problemas relacionados con la práctica caen más en la categoría de «reconocer a un gato» que «agregar números» y, por lo tanto, no pueden resolverse adecuadamente con algoritmos escritos por humanos. Con frecuencia se trata de identificar un patrón en algunos datos, por ejemplo, reconocer objetos en imágenes, texto del lenguaje o intento de fraude en los datos de transacción.
Para un ejemplo de caso simple, veamos el mantenimiento predictivo. Imagine que muchos sensores envían flujos de datos y ocasionalmente una máquina se descompone. El desafío entonces es aprender los patrones en las secuencias de datos que finalmente conducen al mal funcionamiento. Una vez que se ha aprendido este patrón, se puede identificar durante el funcionamiento normal, de modo que se pueda anticipar y evitar un posible colapso.
Aunque el principio de Machine Learning no es nuevo, actualmente goza de un aumento de popularidad. Hay tres razones principales para esto; en primer lugar, la disponibilidad de grandes cantidades de datos necesarios para las aplicaciones y la capacitación («big data»). En segundo lugar, ahora tenemos la enorme potencia informática requerida, especialmente en la nube. Y en tercer lugar, una gama de proyectos de código abierto ha llevado a que los algoritmos sean accesibles para casi todo el mundo.
[/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_column_text]Machine Learning no reemplaza la programación clásica, sino que la complementa. Proporciona herramientas que nos permiten, además, abordar una categoría principal de problemas que hasta ahora habían sido demasiado difíciles o incluso imposibles de dominar. Colectivamente, estos nos presentan nuevas oportunidades mientras que los sistemas existentes también se están adaptando cada vez más para incorporar funcionalidades de Machine Learning.
Las operaciones repetitivas que siguen patrones son un ejemplo típico. Imagine un programa de computadora con cien funcionalidades a las que se accede a través de una serie compleja de menús, pero utiliza activamente solo algunas de ellas en el día a día. Al observar los pasos que generalmente toma, una computadora puede aprender a anticipar su próximo movimiento y así aumentar su eficiencia. O bien, tome la asignación y transformación de datos (por ejemplo, trabajos ETL para rellenar un almacén de datos); donde la computadora «aprende» datos y objetos recurrentes, muchos pasos se pueden automatizar y acelerar.
Más ejemplos se encuentran en casi todas las áreas: la adaptación adecuada de material de aprendizaje para estudiantes individuales (en particular, «cursos en línea abiertos masivos» o MOOC), el diagnóstico temprano de enfermedades, grupos objetivo correctos para el marketing en línea, rotación de clientes , la identificación automática de problemas de calidad de datos o la comparación de perfiles de usuario por servicios de citas.
[/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_column_text]Gracias a sus herramientas avanzadas, Spark (en combinación con Hadoop) se ha establecido como un marco líder de Big Data en el campo de Machine Learning. Talend también está siguiendo este enfoque, pero se abstrajo un nivel más alto al modelar los trabajos (tanto para la capacitación como para el despliegue en la producción). El modelado reduce la complejidad y al mismo tiempo conduce a un grado de independencia de las tecnologías subyacentes, que continúan cambiando rápidamente y, por lo tanto, solo son accesibles para pocos expertos.
Solo unos pocos especialistas necesitan comprender realmente los detalles más finos de los algoritmos en el campo de Machine Learning. Por otro lado, es beneficioso para todos entender el concepto de ML, que básicamente es aprender patrones a partir de ejemplos y poder usarlos en nuevos conjuntos de datos. En última instancia, esto amplía las categorías de problemas que pueden abordarse con máquinas y, por lo tanto, pueden automatizarse: específicamente mediante procesos de toma de decisiones. Esto es exactamente lo que aprende la computadora; toma una decisión con respecto a nuevos datos basados en el conocimiento que ha acumulado a partir de los datos de capacitación. Por un lado, podemos usar esto para nuestro beneficio, sea cual sea nuestro negocio o círculo, mediante la automatización de decisiones. Por otro lado, nosotros mismos representamos una fuente constante de datos que las máquinas de otras personas analizarán para optimizar su propio negocio.
Para resumir, me gustaría dejarte con la siguiente imagen: las computadoras ahora son capaces no solo de seguir instrucciones claras (pensar en la suma de números) sino también de aprender a través de ejemplos (piensa en el reconocimiento de los gatos mediante el entrenamiento con muestras imágenes). Dependiendo del desafío, un procedimiento podría ser más adecuado que el otro. Sin embargo, ambos procedimientos pueden combinarse de infinitas maneras y, en última instancia, generar más oportunidades para la automatización.[/vc_column_text][/vc_column][/vc_row]