python - spanish - Stanford NLP Tagger a través de NLTK-tag_sents divide todo en caracteres
pos tagger spanish (2)
Espero que alguien tenga experiencia con esto, ya que no puedo encontrar ningún comentario en línea además de un informe de errores de 2015 con respecto a NERtagger, que probablemente sea el mismo.
De todos modos, estoy tratando de procesar por lotes el texto para evitar el etiquetador de base de bajo rendimiento. Por lo que entiendo, tag_sents debería ayudar.
from nltk.tag.stanford import StanfordPOSTagger
from nltk import word_tokenize
import nltk
stanford_model = ''stanford-postagger/models/english-bidirectional-distsim.tagger''
stanford_jar = ''stanford-postagger/stanford-postagger.jar''
tagger = StanfordPOSTagger(stanford_model, stanford_jar)
tagger.java_options = ''-mx4096m''
text = "The quick brown fox jumps over the lazy dog."
print tagger.tag_sents(text)
Excepto que pase lo que pase al método tag_sents, el texto se divide en caracteres en lugar de palabras. ¿Alguien sabe por qué no funciona correctamente? Esto funciona como se esperaba ...
tag(text)
Traté de dividir la oración en fichas para ver si eso ayudó pero el mismo tratamiento
La función tag_sents
toma una lista de cadenas de cadenas.
tagger.tag_sents(word_tokenize("The quick brown fox jumps over the lazy dog."))
Aquí hay un modismo útil:
tagger.tag_sents(word_tokenize(sent) for sent in sent_tokenize(text))
donde el text
es una cadena.
Otra variación de lo que dijo alvas, que funcionó para mí: tagger.tag_sents([[text]])
.