Curso "Introducción al Procesamiento del Lenguaje Natural con Python - Parte II" - Grupo de Ingeniería Linguística, UNAM
Material usado en el curso "Introducción al Procesamiento Natural con Python - Parte II" del Grupo de Ingeniería Lingüistica de la UNAM.
Todas las sesiones se detallan a continuación, y se añaden links para visualizar las notebooks usadas en cada sesión.
- 0.1 Sintaxis de Python
- cómo escribir una línea de código
- cómo nombrar variables
- para qué sirven las variables
- qué son las palabras reservadas
- 0.2 Strings
- qué son
- comparar dos strings
string1 == string2
- qué hacen:
len(string)string.lower()string.capitalize()
- 0.3 Listas
- qué son
- cuál es su utilidad en la lingüistica computacional
- cómo acceder a un elemento en una lista por medio de su índice
- cómo acceder a varios elementos dentro de una lista por medio de sus índices
- qué hacen los métodos
sorted(lista),len(lista),.append(),.pop()
- 0.4 Condiciones
if- qué es
- cómo funciona
- condiciones
if-else - condiciones
if-elif
- 0.5 Ciclos
for- qué son
- cómo funcionan
- 0.6 Lectura y escritura de archivos con
pandas- cómo leer un archivo
.csven Python y guardarlo en una variable - cómo guardar un archivo en formato
.csven nuestro Drive
- cómo leer un archivo
- 0.7 Funciones
- qué son
- cómo se nombran
- qué es el "parámetro" de una función
- qué significa que una función "regrese" algo
- cuál es la utilidad de usar funciones
- qué es una librería
- 1.1 Tokenización
- qué es
- cómo realizarlo
- 1.2 Lemmatización
- qué es
- cómo realizarlo
- cómo escribir casos especiales o que no estén dentro de los modelos de spaCy
- 1.3 Part-of-Speech Tagging
- qué es, cómo se hace en spaCy
- cómo entender las etiquetas
- Ejercicio de desambigüación de oraciones usando POS
- 1.4 Relaciones sintácticas
- cómo hacer análisis de dependencias sintácticas con spaCy
- cómo buscar la descripción de las etiquetas de spaCy
- Ejercicio: Obtener la lista de dependencias sintácticas de una oración. ¿Qué significa ROOT y qué tiene que ver esa token con las demás ?
- 2.1 El objeto ‘token’ en spaCy
- qué es
- cómo imprimir tokens en una notebook
- qué hace doc.sents
- 2.2 El método
doc.noun_chunks- qué regresa este método
- 2.3 El
spande spaCy- qué es
- cómo obtener los spans de un
doc - ejemplo de cómo obtener la similitud semántica de dos spans
- 2.4 Modelos de spaCy
- qué son
- cómo cargarlos
- cómo identificar sus diferencias
- 2.5 Dependencias sintácticas
- qué son
- cómo obtener las dependencias de una oración usando una variable
nlpcon un modelo de spaCy precargado
- 2.6 Extracción de tokens a partir de sus dependencias sintácticas
- cómo obtener los tokens por oración
- 2.7 Ejercicio de repaso: Extracción de características lingüísticas de un texto
- cómo crear una variable de pandas, que contenga una tabla de datos en formato
.csv
- cómo crear una variable de pandas, que contenga una tabla de datos en formato
- cómo obtener sólo ciertas partes del discurso usando una condición
if - función
obtiene_pospara obtener sólo lostoken.textde un texto, que esten etiquetados con ciertotoken.pos_
- 4.2.1 Introducción
- qué son
- por qué usarlos, y no hacer una simple representación con 1s y 0s
- 4.2.2 Ejemplos
- cómo usar la función
similarityde spaCy para obtener la similitud semántica entre dos tokens - cómo usar la función
similarityde spaCy para obtener la similitud semántica entre dos tokens de tipoNOUN
- cómo usar la función
- 4.2.3 Funciones
- función
cargar_datos - función
elimina_columnas_en_pandas - función
calcula_estadisticas_basicas
- función
- 5.1 Carga y prepocesamiento de datos
- cargar modelo de lenguaje a la notebook
- importar el modelo en la notebook nueva
- cargar datos en la notebook
- eliminar columnas en mi variable
datos - Borrar todas las filas que tengan el valor en dentro de la columna
language
- 5.2 Nubes de palabras simples
- generación de una nube de palabras usando un tuit
- 5.3 Nubes de palabras con formas
- generación de una nube de palabras usando varios tuits, con la forma de una imagen especificada
- 5.4 Gráficas de barras
- generación de una gráfica de barras sencilla tomando los cinco tokens de verbos más comunes en el conjunto de datos cargado
- 5.5 Gráficas de pie
- generación de una gráfica de barras sencilla tomando los cinco tokens de verbos más comunes en el conjunto de datos cargado
- 5.6 Múltiples gráficas en una imagen
- generación de una imagen con seis gráficas dentro de ella, tomando los cinco tokens (de distintos tipos) más comunes en el conjunto de datos cargado
- 6.1 Carga y preprocesamiento de datos
- carga de datos
- eliminación de columnas
- eliminación de tuits en inglés
- **6.2 Definir reglas manualmente en el modelo cargado de spaCy^^
- funciones para corrección de errores ortográficos manualmente
- definir un tipo de token nuevo, que no contenga el modelo de spaCy: token tipo
es_musico - definir un límite para el tokenizador por oraciones precargado en
doc.sents
- 6.3 Librería
huggingface- qué es
- ejemplo de análisis de sentimientos usando el
pipelineprecargado enhuggingface - ejemplo de generación de texto usando un modelo
gpt2alojado ennlptown/bert-base-multilingual-uncased-sentiment
- 6.4 Análisis de sentimientos en el conjunto de datos de detección de sexismo
- aálisis de sentimientos de los tuits en los datos del paso
6.1, usando el modelonlptown/bert-base-multilingual-uncased-sentimentalojado ennlptown/bert-base-multilingual-uncased-sentiment
- aálisis de sentimientos de los tuits en los datos del paso