Crea una cuenta o inicia sesión

¡Continúa aprendiendo sin ningún costo! Únete y comienza a potenciar tu carrera

Configurar ambiente de trabajo

4/24
Recursos

Aportes 14

Preguntas 6

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regístrate o inicia sesión para participar.

Glosario:

Corpus lingüístico
Un corpus lingüístico es un conjunto amplio y estructurado de ejemplos reales de uso de la lengua. Estos ejemplos pueden ser textos, o muestras orales.​ Un corpus lingüístico es un conjunto de textos relativamente grande, creado independientemente de sus posibles formas o usos.

Token
Un token es un conjunto de caracteres que representan texto. También podemos decir que el token es la unidad análisis de texto, así como un número es la unidad del análisis matemático. Es fácil para nosotros pensar que un token es igual a una palabra, sin embargo esto no es correcto, puesto que la “palabra” es un elemento del lenguaje que posee significado por sí misma, mientras que el token se supone es un elemento abstracto. Dependiendo de la tarea que estemos afrontando, el token puede ser alguna de las siguientes:

  • Una sola palabra, como: “jóvenes”, “nivel” o “superior”,
  • Un número, como: “1”, “0”, o “10”,
  • Un solo caracter, como: “j”, “ó” o “v”,
  • Un símbolo, como “¿”, “?” o “#”,
  • Un conjunto de caracteres, como “nivel superior” o “escuela técnica”

Tokenización
La tokenización es un paso que divide cadenas de texto más largas en piezas más pequeñas o tokens. Los trozos de texto más grandes pueden ser convertidos en oraciones, las oraciones pueden ser tokenizadas en palabras, etc. El procesamiento adicional generalmente se realiza después de que una pieza de texto ha sido apropiadamente concatenada. La tokenización también se conoce como segmentación de texto o análisis léxico. A veces la segmentación se usa para referirse al desglose de un gran trozo de texto en partes más grandes que las palabras (por ejemplo, párrafos u oraciones), mientras que la tokenización se reserva para el proceso de desglose que se produce exclusivamente en palabras.


Bibliografía:

Cuando hace flatten[:20] tarda porque esta volviendo a ejecutar el ciclo for, para que no gasten recurso de mas pueden hacerlo en una celda aparte

Justamente me quede revisando la data disponible de NLTK. Incluso tiene modelos de entrenamiento. http://www.nltk.org/nltk_data/

<h1>Cómo usar NLKT en Google Colab</h1>
# Importamos la biblioteca
import nltk
# Descargamos nuestra base de datos de textos
nltk.download('cess_esp')

Expresiones Regulares

  • Constituyen un lenguaje estandalizado para definir cadenas de búsqueda de texto.
  • Biblioteca de operaciones con expresiones regulares de Python re.
  • Reglas para escribir expresiones regulares.
# Importamos una biblioteca para expresiones regulares. 
import re
# Definimos un corpus en Python 
corpus = nltk.corpus.cess_esp.sents()
# Vemos de que trata este contenido
print(corpus)
# Vemos el tamaño del nuestro corpus. 
print(len(corpus))

''' Aquí vamos a concatener todas esas sublistas en una lista grande, de modo de que ya no tendremos una lista de listas, si no una sola lista donde están 
todos los titulares seguidos uno tras otro '''  
flatten = [w for l in corpus for w in l]

# Imprimimos una parte de la estructura interna 
print(flatten[:100])

Excelente muy didáctico y clara la explicación

Para trabajar con tus textos propios puedes usar

path = 'dirección/de/tu/archivo.txt'

f = open(path, 'r')
raw = f.read() # Es el archivo en texto puro. No es usable por nltk aún
tokens = nltk.word_tokenize(raw) # Primero se extraen los tokens
text = nltk.Text(tokens) # Se genera el texto a partir de los tokens

Configurara ambiente de trabajo

  • nltk ya tiene varios corpus y corpora para trabajar 😄. Para usar una, debemos descargarla. Usaremos un corpus en español nltk.download("cess_esp"). Este corpus consiste de titulares de noticas en español.

  • Se recomienda tomar el curso de expresiones regulares 👀. Python tiene una librería de expresiones regulares llamada re. Las expresiones regulares son un lenguaje estandarizado para definir cadenas de búsqueda de texto.

    re - Regular expression operations - Python 3.9.7 documentation

  • Hay una operación llamada flatten, donde aplanamos una lista, de tal manera que no tenemos una lista de listas, si no una sola lista con una secuencia de tokens larga 👀.

For linux users:

mport nltk
import ssl

try:
    _create_unverified_https_context = ssl._create_unverified_context
except AttributeError:
    pass
else:
    ssl._create_default_https_context = _create_unverified_https_context

Hola, sera que me podrían hacer el favor de ayudar? tengo varias dudas.

  1. No me queda aun muy claro la diferencia de corpus y corpora, corpora es un conjunto de textos, entonces podriamos decir que un libro podria ser una copora cierto? por ejemplo el libro de harry potter
  2. Una lista de listas visualmente es una matriz cierto?

no entendi bien que significa corpus

Muy clara la explicación

hola chicos tengo un preguta:
entre un pequeño modelo usando Spacy … el modelo lo tengo en mi laptop pero ya lo subi a la carpeta donde se guardan los notebooks de google colab … pero no puedo cargarlo para trabajar … alguien sabe como hacerlo…?

El enlace:
https://platzi.com/clases/machine-learning/
No funciona, es el que explica más en detalle, como usar colab de Google.

La flatten se puede optimizar un poco con:

import functools
import operator
flatten = functools.reduce(operator.iconcat, corpus, [])