¿Pueden las Máquinas Comprender Realmente a los Humanos?
Es obvio que los humanos somos especiales ¿no?… Sin ánimos de abordar temas evolutivos, nos diferenciamos de otras especies por dominar el mundo, por nuestra capacidad de crear, resolver problemas, movernos a donde nos apetezca, utilizar herramientas, desarrollar tecnologías, entre muchas otras “ventajas humanas”. En este sentido, considero que es importante resaltar uno de los puntos que nos diferencia: nuestra manera de comunicarnos y el habla. La importancia de la comunicación radica en que es nuestro medio para entendernos los unos a los otros, de ahí se derivan nuestras otras capacidades. Actualmente, existen más de 7.000 idiomas distintos, vivimos en sociedad y dependemos los unos de los otros, por lo que es fundamental tener la capacidad de expresarnos y aprender a comunicarnos con los demás. Adicional a ello, en el siglo en el que vivimos somos protagonistas de una era tecnológica, donde nuestra forma de comunicarnos no solo nos diferencia, sino que genera una ENORME cantidad de datos.
Alguna vez se han preguntado ¿cuanta data se genera cada día? o ¿cuanta data existe en el mundo?… aunque no podamos tener una respuesta exacta a esa pregunta, podemos hacernos una idea con ciertas estadísticas y aproximaciones. De acuerdo a https://seedscientific.com/, tenemos lo siguiente:
- A principios de 2020, se estimaba que el universo digital constaba de 44 zettabytes de datos (1 ZB à 1021 bytes).
- Para 2025, se crearán cerca de 463 exabytes cada 24 horas en todo el mundo.
- Para junio de 2019, había más de 4.5 mil millones de personas en línea.
- El 80% del contenido digital que consumimos, no está disponible en nueve de cada diez idiomas.
- En 2019, Google procesó 3,7 millones de consultas, Facebook vio un millón de inicios de sesión y YouTube grabó 4,5 millones de videos vistos cada 60 segundos.
- El volumen de contenido de Netflix en 2019 superó al de la industria televisiva de EE. UU. En 2005.
- Para el 2025, se estima que habrán 75 mil millones de dispositivos de Internet de las cosas (IoT) en el mundo.
- Para 2030, nueve de cada diez personas de seis años o más estarán digitalmente activas.
No es secreto que nuestra era es digital, vivimos en un mundo globalizado, estamos todos conectados, cada cosa que imagines puede ser traducida a un dato y sin haberlo pensarlo en gran detalle, todos somos productores de este bien intangible y ahora que la comunicación ha mutado, es parte natural de nuestra especie generar datos; los datos son conocidos como “el nuevo petróleo” y hay tanto poder detrás en ellos, que apenas estamos siendo capaces de reconocer existe un iceberg, pero no hemos si quiera visto su punta.
Ahora que podemos hacernos una breve idea de la cantidad de datos que existen, de que se generan datos en actos tan elementales como comunicarnos y de que existe un gran poder detrás, todas las fuerzas y tecnologías se están concentrando en desarrollar los métodos para extraer valor de ellos, por lo que créanme, seguiremos viendo tantas ofertas y mayor demanda en el mundo del “Big Data”. En líneas generales, se relacionaba el termino de datos para un ambiente empresarial o científico y aunque haga mucho énfasis en este punto, con este cambio de era, debemos empezar a entender los datos desde otra perspectiva mucho más personal. En este sentido, cuando hablamos de datos necesitamos diferenciar su estructura o naturaleza, y podemos encontrarnos con:
- Datos estructurados, que están altamente organizados y formateados de manera que se pueden buscar fácilmente en bases de datos. (Yo lo asocio a Excel, datos de una empresa, tablas organizadas, elementos ordenados)
- Datos NO estructurados, que no tienen un formato u organización predefinidos, lo que hace que sea mucho más difícil recopilar, procesar y analizar. (Yo lo asocio a los tweets que genero, el registro de los videos que veo, el contenido de una página web, correo electrónico, imágenes satelitales… )
- Datos semiestructurados, que son una mezcla de los dos anteriores no presenta una estructura perfectamente definida como los datos estructurados, pero si presentan una organización definida en sus metadatos donde describen los objetos y sus relaciones
De los números mencionados al principio del artículo, se calcula que solo el 20% de datos del mundo son estructurados y el resto carecen de un formato específico, entre las principales diferencias entre estos, resaltamos la facilidad de analizarlos; por ejemplo, si quieres sumar el total en una columna numérica de Excel, no demorarás lo mismo que si pretendes analizar la utilización de cierto #hashtag durante un evento popular. La idea principal del Big Data es que cuanto más sabes sobre algo mejor lo entiendes y te ayuda a tomar una mejor decisión o solucionar mas eficientemente un problema. Es por esto que no podemos hacer vista gorda de los datos no estructurados, sino mas bien, buscar la manera de acoplarlos de forma veloz y correcta en el proceso.
Únicamente combinando datos no estructurados con datos estructurados, lograremos tener una visión plena del comportamiento humano…
He contado todo esto, porque me parece necesario para llegar a entender una de las ramas de la inteligencia artificial que me parece más atractiva, dinámica, emocionante y en la cual quiero desarrollar varias entradas: NLP, por sus siglas en ingles de “Natural Lenguage Processing”.
NLP, es un campo dentro de la inteligencia artificial y la lingüística aplicada que estudia las interacciones mediante uso del lenguaje natural (¿recordamos que existen mas de 7000 idiomas?) entre los seres humanos y las máquinas, analiza grandes cantidades de datos del lenguaje humano en lugar de los datos numéricos típicos y es considera la intersección entre la informática y la lingüística, lo que en definitiva es un gran desafío para las máquinas. “NLP toma elementos prestados de muchas disciplinas, incluyendo la ciencia de la computación y la lingüística computacional, en su afán por cerrar la brecha entre la comunicación humana y el entendimiento de las computadoras…”
Aunque el procesamiento del lenguaje natural no es una ciencia nueva, esta es una disciplina está escalando innumerables industrias, la tecnología avanza con rapidez gracias a un mayor interés en la comunicación entre humanos y máquinas, además de que ahora disponemos del big data, computadoras mucho poderosas y algoritmos mejorados. En lo personal considero es un área de importancia trascendental. NLP ayuda a las computadoras a comunicarse con humanos en nuestro lenguaje, escalando por otras tareas relacionadas. Imaginemos que podemos predecir el comportamiento o tendencias de un negocio de acuerdo a su histórico y siguiendo esta línea, nuestro lenguaje, comportamiento y patrones de conducta podrían ser (son) el input a algoritmos que dan solución a muchísimos problemas de nuestra humanidad. La meta de NLP en general, es tomar texto crudo del lenguaje y aplicar técnicas de lingüística + algoritmos para transformar o enriquecer el texto de tal forma que provea un mayor valor.
En términos generales, las tareas NLP dividen el lenguaje en piezas elementales más cortas, intentan entender las relaciones entre las piezas y exploran cómo funcionan las piezas juntas para crear significado. Al día de hoy podemos encontrar diversas utilidades de NLP, entre las cuales se mencionan:
- Análisis de sentimientos: Identificación del estado de ánimo u opiniones subjetivas en grandes cantidades de texto, incluyendo minería de sentimiento y opiniones promedio. Con el uso del análisis de sentimientos, podemos clasificar cosas como las reseñas de empresas o sus productos, encuestar las opiniones de las personas en función de sus comentarios y publicaciones en las redes sociales, dividir la clasificación de polaridad en clases con una distribución más grande, como muy positiva, positiva, neutral, negativa, muy negativa.
- Resumen de documentos: Generación automática de sinopsis de grandes cuerpos de texto.
- Etiquetado de Texto: Los modelos de PNL pueden distinguir artículos subjetivos de objetivos, clasificar preguntas, etiquetar entidades con nombre de acuerdo a un texto: Carolina Herrera puede ser una persona y también puede ser una marca.
- Traducción eficiente: en un mundo tan globalizado, la comunicación con los clientes y posibles socios comerciales será más fácil con el uso de modelos de traducción de NLP, capaces de crear modelos complejos que den una experiencia más orgánica cuando se trata de leer (o escuchar) textos traducidos.
- Reconocimiento de voz: Nuestras queridas compañeras Siri & Alexa, utilizan una variedad de tecnologías avanzadas de aprendizaje automático para poder comprender nuestros comandos y devolver una respuesta adecuada.
(entre varios otros)
Para percibirlo de manera mas cotidiana, algunos ejemplos de NLP pueden ser:
- Uso de frases como: “Alexa… Reproduce Bohemian Rhapsody en Spotify”, “Siri… cual es la temperature de hoy?”
- Aplicaciones predictivas de salud, por ejemplo, Dignity Health utiliza NLP y otros algoritmos avanzados para monitorear registros médicos electrónicos para detectar indicios de septicemia. Si la probabilidad de que un paciente presente septicemia es alta, el sistema envía una alarma a la enfermera o médico de guardia.
- El Spam del correo electrónico, el cual utiliza una técnica de NLP estadística que compara las palabras del correo no deseado con correos electrónicos válidos para identificar correo basura.
- Cuando escribes en google y tienes sugerencias predictivas.
- Existe una aplicación llamada Woebot, el cual es una chatbot con técnicas para vencer la ansiedad o síntomas de la depresión. Es un robot que te pregunta cómo estás, reconoce el problema y te ofrece todo tipo de herramientas para mejorar.
El lenguaje humano es increíblemente complejo y diverso, nos expresamos muchísimas maneras diferentes tanto verbalmente como por escrito. No solo tenemos más de 7000 idiomas, sino que en cada uno de ellos tenemos distintas reglas de gramática y de sintaxis, utilizamos palabras coloquiales, emoticones, tenemos errores ortográficos, utilizamos abreviaturas, omitimos signos de puntuación, cuando hablamos tenemos distintos acentos, tartamudeamos, cortamos palabras, utilizamos frases de otros idiomas… imaginen tener la capacidad de procesar esto a un nivel en el cual puedas entender a cualquier humano en el mundo a través de una maquina, esto podría darnos una imagen global de lo que busca NLP… Utilizar la inteligencia artificial, técnicas de aprendizaje supervisado, no supervizado, Deep-learning y a la vez introducir entendimiento sintáctico y semántico.
Finalmente, dejaré un par de preguntas para su reflexión:
- ¿Pueden las computadoras “comprender” a los humanos?
- ¿Pueden las computadoras extraer significado de texto?
- ¿Pueden las computadoras predecir nuestra siguiente compra?
- ¿Pueden las computadoras descifrar si nuestras últimas canciones reproducidas esconden un patrón de sentimiento?
- ¿Pueden las computadoras saber cuando vamos a sufrir de una enfermedad?
A medida que desarrollemos el tema, seremos capaces de aclarar estos puntos, esto solo ha sido un abrebocas para dar una idea del potencial que tiene la inteligencia artificial combinada con otras ciencias. En entradas posteriores realizaremos prácticas de NLP utilizando Python y diversas librerías para poder percibir a nivel mas técnico su utilidad.