textos texto spanish sentimientos natural mineria language instalar español ejemplos con como analisis python nlp nltk text-classification textblob

python - texto - nlp español



Python textblob y clasificación de texto (1)

Ok encontré que el módulo Pickle es lo que necesito :)

Formación:

# -*- coding: utf-8 -*- import pickle from nltk.tokenize import word_tokenize from textblob.classifiers import NaiveBayesClassifier with open(''file.csv'', ''r'', encoding=''latin-1'') as fp: cl = NaiveBayesClassifier(fp, format="csv") object = cl file = open(''classifier.pickle'',''wb'') pickle.dump(object,file)

extracción:

import pickle sys.stdout = open(''demo.txt'',"w"); from nltk.tokenize import word_tokenize from textblob.classifiers import NaiveBayesClassifier cl = pickle.load( open( "classifier.pickle", "rb" ) ) print(cl.classify("text to classify"))

Estoy intentando construir un modelo de clasificación de texto con python y textblob , el script se está ejecutando en mi servidor y en el futuro la idea es que los usuarios puedan enviar su texto y será clasificado. Estoy cargando el conjunto de entrenamiento de csv:

# -*- coding: utf-8 -*- import sys import codecs sys.stdout = open(''yyyyyyyyy.txt'',"w"); from nltk.tokenize import word_tokenize from textblob.classifiers import NaiveBayesClassifier with open(''file.csv'', ''r'', encoding=''latin-1'') as fp: cl = NaiveBayesClassifier(fp, format="csv") print(cl.classify("some text"))

csv es de aproximadamente 500 líneas de longitud (con cadena entre 10 y 100 caracteres), y NaiveBayesclassifier necesita aproximadamente 2 minutos para el entrenamiento y luego poder clasificar mi texto (no estoy seguro si es normal que necesite tanto tiempo, tal vez mi servidor sea lento con solo 512 mb ram).

ejemplo de línea csv:

"Oggi alla Camera con la Fondazione Italia-Usa abbiamo consegnato a 140 studenti laureati con 110 e 110 lode i diplomi del Master in Marketing Comunicazione e Made in Italy.",FI-PDL

Lo que no me queda claro, y no puedo encontrar una respuesta en la documentación de un bloque de texto, es si hay una forma de ''guardar'' mi clasificador entrenado (así que ahorre mucho tiempo), porque ahora cada vez que ejecuto el script, entrenará de nuevo el clasificador. Soy nuevo en la clasificación de texto y el aprendizaje automático, así que me disculpo si es una pregunta tonta.

Gracias por adelantado.