NLP / By Alejandro Salamanca R.
Este artículo PNL: La magia detrás de entender las máquinas, habla sobre el Procesamiento del Lenguaje Natural o PNL, una rama del conocimiento entre la Inteligencia Artificial y la Lingüística que tiene como objetivo dotar a las máquinas de la capacidad de comprender el lenguaje de los humanos.
La PNL IMPLICA EL ANÁLISIS DE LO SIGUIENTE:
Ejemplo: en la oración “compraré un dulce”, “yo” es el sujeto, “dulce” es el objeto directo y “compraré” es el verbo.
También te puede interesarChatGPT Mini: ¡una CLI liviana para ChatGPT que es amigable con la billetera y centrada en la privacidad!Ejemplo: en la oración “El ingeniero fue a la oficina del cliente”, la oficina del cliente se refiere a un lugar.
Ejemplo: en la oración, “David bebió vino en la fiesta. Que era de color rojo.» Rojo se refiere al vino que bebió David.
Realizamos estos tres análisis todos los días, algunos casi inconscientemente. Para nosotros, derivar significado del lenguaje resulta muy sencillo y es consecuencia no sólo de un proceso de desarrollo y aprendizaje sino de miles de años de evolución. Ahora, piensa en lo difícil que puede ser para una máquina que solo entiende unos y ceros entender tus emociones cuando escribes una reseña de una película o un producto que has comprado.
Entre los desafíos más difíciles de la PNL se encuentran el manejo de expresiones ambiguas, la pragmática y el uso implícito de conocimientos previos. Algunas oraciones que muestran este tipo de problema son:
También te puede interesarCorrector ortográfico eficiente: combinación de técnicas de corrección Trie, Edit Distance y Threshold-Based– Estaré en la playa con Mary leyendo. ¿Estás leyendo, ambos están leyendo o ella está leyendo? (Ambigüedad).
– Vimos a John caminando. ¿Viste que John estaba caminando, o viste a John cuando estabas caminando? (Ambigüedad)
– El primer sprint del proyecto tomó un mes. El término sprint es lenguaje técnico en desarrollo de proyectos (Conocimientos previos).
Piense en lo difícil que es para una máquina derivar el significado de tales oraciones si no podemos derivar el significado con claridad.
También te puede interesarText Generation in Customer Service (Part 2)¿POR QUÉ ES VALIOSO TENER MÁQUINAS DE COMPRENSIÓN?
El lenguaje es la principal forma en que los seres humanos se comunican de manera efectiva. Piensa que usas el lenguaje a diario para realizar tareas, hacer análisis, transmitir emociones y realizar muchas otras acciones y necesidades de tu vida. Ahora piensa, qué pasaría si una máquina que puede realizar tareas y actividades miles de veces más rápido que tú, pudiera entenderte, y no solo a ti sino a miles de personas al mismo tiempo.
Está claro que las implicaciones de una máquina que entiende el lenguaje natural son fascinantes. Aquí presentaré algunas aplicaciones y sistemas que hacen uso de la PNL.
SISTEMAS DE DIÁLOGO
También te puede interesarIntroducción a la programación en PythonEstos sistemas se dividen en dos grandes grupos: sistemas orientados a tareas y chatbots. Los primeros se enfocan en realizar tareas valiosas, mientras que los segundos se enfocan en mantener una conversación con el usuario sin implementar ninguna tarea específica.
La siguiente imagen muestra cómo se dividen este tipo de sistemas según puedan realizar tareas prácticas y mantener una conversación social compleja.
En muchos entornos comerciales, estos términos a menudo se confunden, ya que todas las empresas solicitan desarrollar chatbots cuando realmente quieren un sistema orientado a tareas.
Ejemplos de sistemas orientados a tareas son los asistentes virtuales como Siri, Alexa y Cortana. Los chatbots, por otro lado, se caracterizan por tener personalidades definidas, mantener conversaciones completas y expresar emociones como miedo, temperamento y desconfianza. La tendencia es moverse hacia los asistentes virtuales con personajes que pueden manejar conversaciones sociales más complejas pero que tienen conocimientos sobre muchos temas y pueden realizar tareas funcionales.
CLASIFICACIÓN DEL TEXTO
Este es el proceso de asignación de categorías a los textos según su contenido. Cuatro de las aplicaciones más comunes de clasificación de texto son:
– Análisis de sentimiento: cuando se quiere determinar si un texto es negativo, positivo o neutro, o cuando se quiere determinar la emoción predominante en un texto. Esto es muy utilizado para analizar textos en redes sociales o reseñas de productos y servicios.
– Clasificación de textos por temas: el objetivo es entender de qué está hablando un texto determinado o su tema principal.
– Detección de idioma: desea determinar el idioma de un texto determinado.
– Detección de intenciones: es muy utilizado en atención al cliente para clasificar las respuestas de los clientes según su intención (interesado, no interesado, darse de baja, potencial comprador…).
EXTRACCIÓN DE INFORMACIÓN
Este es el proceso de transformar información no estructurada en datos estructurados. El objetivo es encontrar entidades importantes dentro de un texto (personas, organizaciones, ubicaciones, etc.), descubrir sus relaciones y almacenarlas en una estructura de datos como una base de datos relacional. El propósito de esto es estructurar la información para que se pueda realizar un mejor análisis, se pueda reutilizar la información y se puedan generar mejores conocimientos.
SISTEMAS DE RECUPERACIÓN DE INFORMACIÓN
La recuperación de información es la ciencia detrás de los motores de búsqueda. Su objetivo es brindar a los usuarios información relevante de fuentes no estructuradas, como texto, imágenes, videos y audio. El ejemplo por excelencia de este tipo de sistemas es el buscador de Google. Sin embargo, considere todos los beneficios que podría tener su empresa si tuviera un “Google interno” que pudiera traer información relevante para exponer todos los documentos, informes, correos electrónicos y hasta redes sociales, según criterios de búsqueda que se pueden escribir como usted normalmente lo expresa. tú mismo.
¿DÓNDE ESTÁ LA “MAGIA” DETRÁS DE ESTO?
Todos estos sistemas y aplicaciones de PNL están basados en métodos de Machine Learning que parecen, a primera vista, muy sofisticados. Pero, ¿qué tan inteligentes son estos sistemas? Para responder a esta pregunta, primero debe comprender qué hay detrás de estos sistemas. En general, no existe una convención o un proceso definido para atacar este tipo de proyectos; sin embargo, aquí enunciaré tres tareas que suelen ser fundamentales en muchas aplicaciones de la PNL.
El primero es hacer POS Tagging (Part of Speech Tagging), que tiene como objetivo asignar una etiqueta a cada palabra en una oración de acuerdo con su rol sintáctico.
El segundo es realizar Dependency Parsing, que tiene como objetivo analizar la estructura gramatical de una oración estableciendo relaciones entre palabras.
El tercero es realizar el reconocimiento de entidades nombradas, cuyo objetivo es encontrar todas las entidades relevantes dentro de una oración. Estas entidades pueden ser personas, organizaciones o lugares.
¿CÓMO SE REALIZAN ESTAS TAREAS?
Estas tres tareas las realizan automáticamente los modelos de Machine Learning. Parece casi “mágico” que solo tengamos que pasar texto plano a estos modelos para que automáticamente realicen estos análisis, y tenemos las etiquetas palabra por palabra. Sin embargo, la realidad es que estos modelos no son tan mágicos. Todos estos modelos de Machine Learning son aprendizaje supervisado, lo que significa que aprenden en base a muchos ejemplos que los humanos debemos darles. El siguiente ejemplo muestra cómo un ser humano debe etiquetar el rol sintáctico de cada palabra (etiqueta POS) en una oración para proporcionarle a la máquina un ejemplo de cómo se hace (las etiquetas están en rojo y cada etiqueta tiene un significado):
El/DT gran/JJ jurado/NN comentó/VBD sobre/IN un/DT número/NN de/IN otros/JJ temas/NNS ./.
¡Tenga en cuenta que hay una etiqueta incluso para el período!
Este es un proceso terriblemente tedioso. Ahora tenga en cuenta que el ejemplo es sólo una oración. Para que dichos modelos realicen automáticamente estas tareas, las máquinas deben aprender de millones de oraciones que un humano pobre debe etiquetar manualmente. Aún así, ¿suena muy sofisticado?
Ya hay una gran cantidad de documentos etiquetados disponibles gratuitamente; sin embargo, las diferencias en la calidad de los documentos etiquetados, la cantidad de documentos etiquetados y la variabilidad del tipo de documentos etiquetados entre el inglés y el español es abismal, lo que hace que los modelos de Machine Learning que realizan automáticamente estas tareas mencionadas anteriormente sean mucho mejores en inglés que en español. u otros idiomas.
Lo cierto es que, a pesar de estas limitaciones, se pueden hacer cosas muy interesantes, funcionales y valiosas. El reto es entender qué funciona, qué no y por qué, saber utilizar las mejores herramientas, optimizar su uso y tratar de mejorar su rendimiento para cada caso de negocio específico.
¿CUÁL ES EL FUTURO?
El sueño de futuro en este campo es llegar a métodos que no necesiten ejemplos humanos o, al menos, reducir significativamente su dependencia. Queremos máquinas que no necesiten millones de ejemplos de oraciones etiquetadas palabra por palabra para aprender.
Ya se sabe que algunos métodos permiten que las máquinas aprendan sin necesidad de ejemplos. Estos son los métodos que hay detrás de las máquinas que juegan al ajedrez mejor que los grandes maestros del ajedrez o las que vencen a los mejores gamers del mundo en algunos videojuegos. Pero, ¿se pueden extrapolar estos métodos a otras áreas de la Inteligencia Artificial, como la PNL? Por ejemplo, ¿podemos llegar a máquinas que con solo “observarnos” hablar puedan entender lo que decimos?
Si quieres ponerte en contacto y por cierto, conéctate con nosotros en Instagram o LinkedIn.
¡Gracias por leer! 😄 🙌
[post_relacionado id=»1590″]