我正在使用pickle来保存我使用TextBlob库构建的NLP分类器.
经过大量与此问题相关的搜索后,我正在使用泡菜.目前我正在本地工作,我用我的i7和16GB RAM机器加载pickle文件(1.5Gb)没有问题.但我的想法是,我的程序将来必须在我的服务器上运行,该服务器只安装了512Mb RAM.
泡菜可以处理如此大的文件还是会遇到内存问题?
在我的服务器上,我安装了Python 3.5,它是一个Linux服务器(不确定哪个发行版).
我问,因为目前我无法访问我的服务器,所以我不能试着找出会发生什么,但同时我怀疑是否可以保持这种方法或者我必须找到其他解决方案.
我正在尝试使用python和textblob构建文本分类模型,该脚本在我的服务器上运行,并且将来的想法是用户将能够提交他们的文本并将其分类.我正在从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"))
Run Code Online (Sandbox Code Playgroud)
csv长约500行(字符串在10到100个字符之间),NaiveBayesclassifier需要大约2分钟进行训练,然后能够对我的文本进行分类(不确定是否正常,它需要这么多时间,也许是我的服务器很慢只有512mb ram).
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
Run Code Online (Sandbox Code Playgroud)
我不清楚,我无法找到textblob文档的答案,如果有一种方法来"保存"我训练有素的分类器(这样可以节省很多时间),因为现在每次运行脚本时它都会训练再次分类.我是文本分类和机器学习的新手,所以如果这是一个愚蠢的问题我会道歉.
提前致谢.