Inteligencia Artificial

Python, el lenguaje que está revolucionando la comunicación 

¿Qué es el Lenguaje Natural?

Entendemos cómo lenguaje natural al conjunto de palabras, frases o expresiones que usamos los seres humanos para desarrollar nuestra comunicación. Series de códigos con los que interactuamos y a los que se les conoce como “Idiomas”, tales como el español, inglés, portugués, etc. 

Cuando hablamos de programación e Inteligencia artificial (AI), el lenguaje natural se utiliza para interactuar con los sistemas informáticos de manera intuitiva y natural. Esto a través de la implementación de recursos como el desarrollo de algoritmos. También, sistemas que permitan a las máquinas, computadoras o inteligencias entender y procesar el lenguaje natural. De esta manera, generar un lenguaje natural e interactivo de manera efectiva.

 Figura 2

HTML.PYTHONLENGUAJE
  Nota. Adaptado de (https://wallpapersafari.com/w/zFb5tD), 2019

Python se considera uno de los lenguajes de programación más populares y poderosos que existen hoy en día. Conocido por su simple sintaxis, la facilidad de lectura que provee y su gran capacidad para abordar una amplia variedad de tareas de programación. Tales como el análisis de datos o el desarrollo web y la automatización de tareas.

Puntualmente, el lenguaje natural de Python potencia el desarrollo del procesamiento de lenguaje natural. (NLP, por sus siglas en inglés). cuya naturaleza se conoce como una sub disciplina de la inteligencia artificial y la lingüística computacional.

La NLP se encarga del procesamiento de lenguaje natural realizado por las AI o BOTS. Esto hace referencia a la capacidad de una máquina para analizar, entender y desarrollar de manera correcta el lenguaje natural humano.

En Python, el NLP se desarrolla mediante una serie de bibliotecas y herramientas de software específicas. Herramientas que permiten a los usuarios y desarrolladores trabajar con palabras, textos y en general lenguajes naturales en sus programas. Y cuya función permite un campo abierto y variado de posibilidades para la creación de aplicaciones basadas en lenguaje natural.

Las principales bibliotecas y herramientas de lenguaje en Python

La plataforma Python posee una amplia biblioteca de códigos y herramientas que facilitan a la AI comprender con mayor facilidad el lenguaje humano y viceversa. Entre las más destacadas está:

NLTK (Natural Language Toolkit): Es una biblioteca de procesamiento de lenguaje natural de código abierto. Una de las bibliotecas más populares para el procesamiento de texto en Python. Proporciona una amplia gama de herramientas de análisis de texto. Como: la tokenización de texto, el análisis morfológico, la eliminación de stopwords y la lematización. Además, también se considera una de las mejores herramientas para enseñar y aprender programación a través del lenguaje natural. Esto porque introduce al lector a los conceptos y pasos fundamentales de Python a través de una correcta escritura básica

Estas herramientas se definen como:
  • Análisis morfológico: Analiza la estructura gramatical de una oración, incluyendo la identificación de las partes del discurso de cada palabra. 
  • La eliminación de Stopwords: Consta de eliminar las palabras mayormente comunes en un idioma y que no poseen mayor relevancia en un texto. (tales como “el”, “y” o “en”). 
  • La lematización: Su función es reducir una palabra a su forma base dependiendo el contexto (Ej.: convertir “corriendo” a “correr”).

SpaCy: Biblioteca de NLP. La encarga de verificar la eficiencia y velocidad de procesamiento. Utilizada mayormente en aplicaciones que requieren este procesamiento en tiempo real y poseen grandes cantidades de texto. Esta herramienta también incluye la tokenización, análisis morfológico y adicional a esto, la detección de entidades nombradas (como nombres de personas, lugares y organizaciones).

Gensim: Su principal función es la modelización de temas y la recuperación de información. Se encarga de la creación de modelos de temas a partir de grandes colecciones de documentos. Además, también se encarga de proporcionar herramientas utilizadas en la realización de modelos de vectoriales de palabras. Básicamente se definen como representaciones de palabras en un espacio vectorial.

TextBlob: Se encarga de proporcionar y desarrollar una API (Interfaz de programación de aplicaciones). Fácil de usar y consistente, esto con el fin de hacer más asequible la realización de tareas relacionadas con el procesamiento de texto. Como la corrección ortográfica, la traducción automática, la extracción de frases clave y la clasificación de texto. También se encarga del Análisis de sentimiento de textos, analizando opiniones y frases por separado. Como base para muchas de sus funciones, esta herramienta utiliza la biblioteca de NLTK. Lo cual la hace compatible con muchas de las herramientas y funciones.

¿Qué usos se le dan al NLP (Lenguaje natural)?

El Lenguaje Natural de Python posee una gran cantidad de usos prácticos para los usuarios

               Figura 3

HTML.PYTHONLENGUAJE
  Nota. Adaptado de Data Scientest, 1 agosto,

(https://datascientest.com/es/nlp-introduccion
  • Análisis de sentimientos: A través de bibliotecas como TextBlob, la AI interpretará sí una reseña/publicación/comentario es positiva o negativa. También,.que opiniones se dividen al momento de hablar de política, RS, opiniones de compra/venta, etc. 
  • Web Scraping: Es un proceso mediante el cual se extraen diversos datos o contenido. Esto, a través de inteligencias artificiales o BOTS, y de bases de datos almacenadas por diversas entidades o páginas web. 
  • Chats: Son bots que se encargarán de mantener una conversación fluída con el usuario. También interpretarán sus expresiones a través de herramientas como Gensim (Chat GPT o GPT-3 es un ejemplo de ChatBot y un caso de éxito) 
  • Resumen de textos: Se pueden usar herramientas tales como la lematización para ahorrar redundancias. Adicionalmente, fijar la atención en la idea principal de un texto, descartando datos irrelevantes. 
  • Reconocimiento de entidades: La inteligencia debe ser capaz de reconocer una persona, una entidad política o comercial, una ciudad o marca, etc.
¿Qué técnicas se utilizan?  

Figura 4

HTML.PYTHONLENGUAJE
Nota. Adaptado de Javapiont
(https://www.javatpoint.com/nlp) 

Tokenización: Proceso utilizado para separar un texto generalmente denso, en palabras o frases más sencillas de entender. A éstas se les llama Tokens.

PoS: Se clasifican las frases u oraciones en orden, de tal manera que cobren sentido dentro del NLP

Shallow parsing: Es una unión de las dos anteriores. Da paso a entender la gramática de una oración correctamente haciendo un proceso de tokenización y posteriormente

con su PoS se procede a generar una gráfica descendente con su respectivo orden gramatical.

Análisis Pragmático: La inteligencia deberá detectar cuándo se utilizan las ironías o el sarcasmo, cuando hay intencionalidad, etc. 

¿Cuáles son los principales programas que ha desarrollado EL NLP Y Python?  

En la actualidad, con los diferentes avances tecnológicos que se implementan a diario, existe gran cantidad de plataformas o programas considerados “casos de éxito”

GPT-3 

Desarrollado por OpenAI, se consideran a sí mismos la “próxima generación de las apps”.  

A través de su APPI GPT-3, alrededor de 300 aplicaciones generan búsquedas, conversaciones, textos complementarios, etc.

Este programa genera aproximadamente 4.5 BILLONES de palabras al día. Y, adicionalmente, es una gran herramienta para varias empresas, principalmente relacionadas con la educación, comunicación, creatividad y los videojuegos.

Es una herramienta capaz de identificar temas, sentimientos, emociones y desarrollar chats en vivo, reseñas y mucho más.

Google BERT

La inteligencia algorítmica desarrollada por Google. Según sus creadores, supone un cambio exponencial en la forma de buscar información en los últimos tiempos. Las siglas BERT significan “Bidirectional Encoder Representation from Transformers”

BERT puede entender cuál es el significado de una búsqueda a través de una inteligencia artificial utilizando lenguaje natural.

¿Qué beneficios tiene el NLP en la actualidad?

Las inteligencias artificiales llegaron para quedarse y facilitarnos la vida, las tareas y en general la comprensión de varios elementos quizá difíciles de procesar. El uso de algoritmos para resolver un problema y la facilidad para obtener una solución, es un punto a favor para la humanidad.

 La organización, la rapidez y eficacia, y el dinero que podría ahorrarse en la contratación de un ser humano. Estas son también ventajas que provee la existencia de este tipo de programas. Adicionalmente, el desarrollo de NLP supone una gran ventaja comunicativa con dichas inteligencias. Gracias a esto usted no debe hacer un gran esfuerzo para entender sus respuestas y entonces ser comprendido.

Women who code, Bogotá, 29 sept 2020
Procesamiento de lenguaje natural
Presentado por: WWCode Bogota
Speaker: Isabel Yepes
  1. El NLP es el método utilizado por los desarrolladores de Python para proveer a la AI de diferentes herramientas. Y entonces, poder ser comprendidas por los seres humanos.
  2. A pesar de todas las disputas éticas que puedan existir alrededor del funcionamiento de las AI, es un recurso muy importante. Actúa de gran manera en el desarrollo social actual a raíz de su gran capacidad de solución a problemas.
  3. Es necesario aprender a dominar esta herramienta. A raíz de la evolución de las formas de comunicación, la sociedad avanza y debemos hacerlo con ella.
  4. Es importante procurar ser responsables con el uso de estas herramientas. Ya que, si bien pueden ser una gran ayuda, también es importante generar conciencia sobre la honestidad a la hora de generar nuevos proyectos. La mente e imaginación humana, no tienen comparación.

Por Daniela Charry Eusse

Editor Carlos Iván Pinzón Romero

Cod. UCPC-1

Universidad Central

Fuentes

León, E. (16 de Diciembre de 2020). Procesamiento del lenguaje natural (PLN) con Python. Obtenido de Baoss: https://www.baoss.es/procesamiento-del-lenguaje-natural-pln-con-python/
Arsys. (09 de octubre de 2020). Arsys. Obtenido de Análisis de sentimientos con Python y Jupyter Notebooks: https://www.arsys.es/blog/analisis-sentimientos-python-jupyter-notebooks
Simplilearn. (17 de Marzo de 2021). Youtube. Obtenido de Natural Language Processing In 5 Minutes | What Is NLP And How Does It Work? |: https://www.youtube.com/watch?v=CMrHM8a3hqw

Deja una respuesta