Crea una cuenta o inicia sesión

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

Etiquetado rápido en Python: Stanza (Stanford NLP)

3/26
Recursos

Aportes 15

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

información muy interesante que encontré en la documentación de stanza:

Stanza está construido con componentes de red neuronal de alta precisión que también permiten un entrenamiento y una evaluación eficientes con sus propios datos anotados. Los módulos están construidos sobre la biblioteca de PyTorch . Obtendrá un rendimiento mucho más rápido si ejecuta este sistema en una máquina habilitada para GPU.

stanza también tiene una demo en linea: http://stanza.run/

Stanza esta disponible para las versiones de Python inferiores a la 3.8

Hasta el momento va bien, pude localizar unos 9 vocablos del idioma que he terminado de estudiar, y he logrado calcular la frecuencia con que se usan en un diccionario que tiene 11 mil entradas, ahora voy a hacer una referencia cruzada, voy a verificar el etiquetado de todo el léxico traducido al español y voy a revisar con que frecuencia coincide la etiqueta conocida de mi idioma de estudio con la etiqueta del idioma español, en determinados contextos. Ahora tengo que generar los contextos…

Bueno, soy experto en idiomas mesoamericanos, y gracias a este curso pude animarme a entrarle a NLTK y ya estoy obteniendo resultados sorprendentes.

Estimados, tengo un error

Y estoy trabajando con estas versiones

Les comparto mi codigo hice dos pruebas una con stanza y otra con spacy stanza , con la primera uso dos ciclos for como en la clase y toma mas de dos segundos, con spacy usando un solo ciclo for toma .22 segundos, esto es muy importante ya que con textos muy grandes es importante optimizar recursos.

<import stanza
import spacy_stanza
import time
#stanza.download('es')

def run():
    inicio_stanza = time.time()
    nlp = stanza.Pipeline('es', processors='tokenize, pos')
    doc = nlp('Yo soy  una persona muy amable')
    for sentence in doc.sentences:
        for word in sentence.words:
            print(word.text, word.pos)
    fin_stanza = time.time()
    print(f'tiempo de stanza: {fin_stanza-inicio_stanza} ')

    print('############')
    inicio_spacy = time.time()
    #prueba utilizando spacy como etiquetador , esta forma es m'as rápida usa un solo for esto es importante
    nlp = spacy_stanza.load_pipeline('es', processors='tokenize, pos')# si no se especifica tokenize, pos, hace todo el proceso
    doc = nlp ('Yo soy una persona muy amable')
    for token in doc:
        print(token.text, token.pos_)
    fin_spacy = time.time()
    print(f'tiempo de spacy: {fin_spacy-inicio_spacy} ')

    #Nota el tiempo de stanza con el doble for es de mas de 2 segundos, no se debe usar asi

    #Spacy con un solo ciclo realiza el proceso en .23 segundos


if __name__ == '__main__':
    run()> 

Súper!!!

para nov del 2021 stanza version 1.3.0 funciona bien para para python 3.9.7. saludos

Stanza es genial

En verdad es espectacular

Que interesante!

Que interesante, en verdad