#python #nltk #pickle
#python #nltk #рассольный
Вопрос:
Я пытаюсь провести анализ настроений по обзорам фильмов.
Следующий код находится внутри функции:
classifier = nltk.classify.SklearnClassifier(LinearSVC())
classifier.train(train_set)
Как мне сохранить его и загрузить, когда я буду использовать его позже? И куда мне следует поместить функции pickle в моем коде?
Спасибо, что уделили мне время!
Комментарии:
1. Вы хотите сохранить объект классификатора?
Ответ №1:
Вы можете использовать pickle
при сохранении и чтении документов после запуска nltk
. Сначала вам нужно импортировать модуль.
import pickle
classifier = nltk.classify.SklearnClassifier(LinearSVC())
classifier = classifier.train(train_set)
Для сохранения:
with open("filename", "wb") as infile:
pickle.dump(classifier, infile)
Для чтения:
with open("filename","rb") as outfile:
docs = pickle.load(outfile)
Ответ №2:
Вы можете использовать pickle
.
Для написания:
import pickle as pkl
clf = nltk.classify.SklearnClassifier(LinearSVC())
clf.train(X_train,y_train)
with open('clf.pkl','wb') as myfile:
pkl.dump(clf,myfile)
Для чтения:
import pickle as pkl
with open('clf.pkl','wb') as myfile:
clf = pkl.load(myfile)
Ответ №3:
Сохранить:
def save(name,data,type='.dat'):
name =type
pickle.dump(data,open(name,'wb'))#will create file if doesn't exist,will update file if there is such file
Загрузить:
def load(name):
return pickle.load(open(name,'rb'))#will raise error if no such file exists
Пример:
save('myFile','foo')
print(load('myfile.dat'))#remember .dat !
#will prints 'foo'
Сначала вам нужно импортировать pickle, а затем вы сможете сохранить все, что угодно