如何保存分类器textblob NaiveBayesClassifier的结果?

Prashant Shrivastava

NaiveBayesclassifier根据我选择的给定主题,我正在使用TextBlob进行文本分析。

数据巨大(约3000个条目)。

尽管我能够得到结果,但是如果不再次调用该函数并等待数小时直到处理完成,就无法保存它以备将来使用。

我尝试通过以下方法腌制

ab = NaiveBayesClassifier(data)

import pickle

object = ab
file = open('f.obj','w') #tried to use 'a' in place of 'w' ie. append
pickle.dump(object,file)

我得到一个错误,如下所示:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python27\lib\pickle.py", line 1370, in dump
    Pickler(file, protocol).dump(obj)
  File "C:\Python27\lib\pickle.py", line 224, in dump
    self.save(obj)
  File "C:\Python27\lib\pickle.py", line 331, in save
    self.save_reduce(obj=obj, *rv)
  File "C:\Python27\lib\pickle.py", line 419, in save_reduce
    save(state)
  File "C:\Python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "C:\Python27\lib\pickle.py", line 649, in save_dict
    self._batch_setitems(obj.iteritems())
  File "C:\Python27\lib\pickle.py", line 663, in _batch_setitems
    save(v)
  File "C:\Python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "C:\Python27\lib\pickle.py", line 600, in save_list
    self._batch_appends(iter(obj))
  File "C:\Python27\lib\pickle.py", line 615, in _batch_appends
    save(x)
  File "C:\Python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "C:\Python27\lib\pickle.py", line 562, in save_tuple
    save(element)
  File "C:\Python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "C:\Python27\lib\pickle.py", line 649, in save_dict
    self._batch_setitems(obj.iteritems())
  File "C:\Python27\lib\pickle.py", line 662, in _batch_setitems
    save(k)
  File "C:\Python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "C:\Python27\lib\pickle.py", line 501, in save_unicode
    self.memoize(obj)
  File "C:\Python27\lib\pickle.py", line 247, in memoize
    self.memo[id(obj)] = memo_len, obj
MemoryError

我也尝试过sPickle,但它也会导致错误,例如:

#saving object with function sPickle.s_dump
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python27\lib\site-packages\sPickle.py", line 22, in s_dump
    for elt in iterable_to_pickle:
TypeError: 'NaiveBayesClassifier' object is not iterable

#saving object with function sPickle.s_dump_elt
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python27\lib\site-packages\sPickle.py", line 28, in s_dump_elt
    pickled_elt_str = dumps(elt_to_pickle)
MemoryError: out of memory

谁能告诉我保存对象该怎么做?

还是通过某种方式保存了分类器的结果以备将来使用?

罗伯特·埃肯达尔

您需要将“ wb”用于二进制格式:

file = open('f.obj','wb')

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用 NaiveBayesClassifier 对文本进行分类

来自分类Dev

AttributeError: 'NoneType' 对象没有分类器的属性 'items' = nltk.NaiveBayesClassifier.train(training_set)

来自分类Dev

分类器预测结果有偏差

来自分类Dev

OpenCV Haar分类器结果表说明

来自分类Dev

SVM分类器的sklearn绘图结果

来自分类Dev

分类器预测结果有偏差

来自分类Dev

如何测量k最近邻分类器给出的结果的可靠性?

来自分类Dev

如何保存量角器测试结果

来自分类Dev

分类器是如何分类的?

来自分类Dev

如何使nltk.NaiveBayesClassifier.train()与我的字典一起使用

来自分类Dev

包装器保存方法结果

来自分类Dev

包装器保存方法结果

来自分类Dev

NLTK NaiveBayesClassifier输入格式

来自分类Dev

ASP MVC API控制器合并的分类结果

来自分类Dev

来自R中不同分类器的整体结果

来自分类Dev

批次大小较小的线性分类器,结果更好/更快

来自分类Dev

来自R中不同分类器的整体结果

来自分类Dev

分类报告结果

来自分类Dev

分类带来奇怪的结果

来自分类Dev

了解分类结果

来自分类Dev

nltk NaiveBayesClassifier情绪分析培训

来自分类Dev

随机森林的多重分类-如何衡量结果的“稳定性”

来自分类Dev

如何从Weka文本分类输出结果文档

来自分类Dev

如何根据日期范围对查询结果进行分类

来自分类Dev

如何对stanford-core nlp的结果进行分类

来自分类Dev

Python:如何在用于多标签类的SVM文本分类器算法中查找准确性结果

来自分类Dev

如何使Unity的Dash保存结果过滤?

来自分类Dev

如何使Unity的Dash保存结果过滤?

来自分类Dev

网页抓取后如何保存结果文本