保存和加载测试以另一种方法对 NLTK 中的朴素贝叶斯分类器进行分类

2023-11-29

我已经尝试过这里的代码:将朴素贝叶斯训练分类器保存在 NLTK 中。 我想将推文分为正类或负类。 这是我的代码:

#learning.py
def main_learning():
   .......
   classifier = nltk.NaiveBayesClassifier.train(feature_set)
   save_classifier(classifier)

   classifier2 = load_classifier()
   print classifier2.classify(get_features("My tweet is bad".split())

def save_classifier(classifier):
   f = open('my_classifier.pickle', 'wb')
   pickle.dump(classifier, f)
   f.close()

def load_classifier():
   f = with open('my_classifier.pickle')
   classifier = pickle.load(f)
   f.close
   return classifier

然后输出:negative

但是,当我尝试save_classifier and load_classifier在不同的方法中,输出总是成为正类。

这是代码:

#learning.py
def main_learning():
   .......
   classifier = nltk.NaiveBayesClassifier.train(feature_set)
   save_classifier(classifier)

def test_classify():
   classifier = load_classifier()
   print classifier.classify(get_features("My tweet is bad".split())

the def save_classifier and load_classifier() are same with the first ones.

第二个输出是:positive。 应该是静止的negative class.

我的代码会发生什么? 谢谢

Edit:

根据 @Cassio 的回答,然后我编辑我的代码:

def save_classifier(classifier):
       f = open('my_classifier.pickle', 'wb')
       pickle.dump(classifier, f)
       f.close()

def load_classifier():
   f = with open('my_classifier.pickle', 'rb')
   classifier = pickle.load(f)
   f.close
   return classifier

实际上它有效。


我没有环境设置来测试您的代码,但我感觉它在保存/加载泡菜的部分不正确。

参考存储标签NLTK 书的部分,我会更改您的代码并执行以下操作:

def save_classifier(classifier):
   f = open('my_classifier.pickle', 'wb')
   pickle.dump(classifier, f, -1)
   f.close()

def load_classifier():
   f = open('my_classifier.pickle', 'rb')
   classifier = pickle.load(f)
   f.close()
   return classifier

希望能帮助到你。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

保存和加载测试以另一种方法对 NLTK 中的朴素贝叶斯分类器进行分类 的相关文章

  • 使用 MongoDB 作为我们的主数据库,我应该使用单独的图数据库来实现实体之间的关系吗?

    我们目前正在为一家专业公司内部实施类似 CRM 的解决方案 由于存储信息的性质以及信息的不同值和键 我们决定使用文档存储数据库 因为它完全适合目的 在本例中我们选择 MongoDB 作为此 CRM 解决方案的一部分 我们希望存储实体之间的关
  • 计算另一个字符串中多个字符串的出现次数

    在 Python 2 7 中 给定以下字符串 Spot是一只棕色的狗 斑点有棕色的头发 斑点的头发是棕色的 查找字符串中 Spot brown 和 hair 总数的最佳方法是什么 在示例中 它将返回 8 我正在寻找类似的东西string c
  • 为什么 dataclasses.astuple 返回类属性的深层副本?

    在下面的代码中astuple函数正在执行数据类的类属性的深层复制 为什么它不能产生与函数相同的结果my tuple import copy import dataclasses dataclasses dataclass class Dem
  • VSCode Settings.json 丢失

    我正在遵循教程 并尝试将 vscode 指向我为 Scrapy 设置的虚拟工作区 但是当我在 VSCode 中打开设置时 工作区设置 选项卡不在 用户设置 选项卡旁边 我还尝试通过以下方式手动转到文件 APPDATA Code User s
  • Tensorboard SyntaxError:语法无效

    当我尝试制作张量板时 出现语法错误 尽管开源代码我还是无法理解 我尝试搜索张量板的代码 但不清楚 即使我不擅长Python 我这样写路径C Users jh902 Documents logs因为我正在使用 Windows 10 但我不确定
  • 打印数字时添加千位分隔符[重复]

    这个问题在这里已经有答案了 我真的不知道这个问题的 名称 所以它可能是一个不正确的标题 但问题很简单 如果我有一个数字 例如 number 23543 second 68471243 我想要它使print 像这样 23 54368 471
  • GUI(输入和输出矩阵)?

    我需要创建一个 GUI 将数据输入到矩阵或表格中并读取此表单数据 完美的解决方案是限制输入表单仅允许float 例如 A 1 02 0 25 0 30 0 515 0 41 1 13 0 15 1 555 0 25 0 14 1 21 2
  • Python 内置的 super() 是否违反了 DRY?

    显然这是有原因的 但我没有足够的经验来认识到这一点 这是Python中给出的例子docs http docs python org 2 library functions html super class C B def method se
  • Java 和 Python 可以在同一个应用程序中共存吗?

    我需要一个 Java 实例直接从 Python 实例数据存储中获取数据 我不知道这是否可能 数据存储是否透明 唯一 或者每个实例 如果它们确实可以共存 都有其单独的数据存储 总结一下 Java 应用程序如何从 Python 应用程序的数据存
  • 导入错误:没有名为flask.ext.login的模块

    我的flask login 模块有问题 我已经成功安装了flask login模块 另外 从命令提示符我可以轻松运行此脚本 不会出现错误 Python 2 7 r27 82525 Jul 4 2010 07 43 08 MSC v 1500
  • python的shutil.move()在linux上是原子的吗?

    我想知道python的shutil move在linux上是否是原子的 如果源文件和目标文件位于两个不同的分区上 行为是否不同 或者与它们存在于同一分区上时的行为相同吗 我更关心的是如果源文件和目标文件位于同一分区上 shutil move
  • 通过Python连接到Bigquery:ProjectId和DatasetId必须非空

    我编写了以下脚本来通过 SDK 将 Big Query 连接到 Python 如下所示 from google cloud import bigquery client bigquery Client project My First Pr
  • 当字段是数字时怎么说...在 mongodb 中匹配?

    所以我的结果中有一个名为 城市 的字段 结果已损坏 有时它是一个实际名称 有时它是一个数字 以下代码显示所有记录 db zips aggregate project city substr city 0 1 sort city 1 我需要修
  • Django 视图中的“请求”是什么

    在 Django 第一个应用程序的 Django 教程中 我们有 from django http import HttpResponse def index request return HttpResponse Hello world
  • 如何将 GAE 中一种 Kind 中的所有实体复制到另一种 Kind 中,而无需显式调用每个属性

    我们如何使用function clone entity 如中所述在 Python 中复制 Google App Engine 数据存储中的实体 而无需在 编译 时知道属性名称 https stackoverflow com question
  • Protobuf 如何编码 oneof 消息结构

    对于这个 python 程序 在编码时运行 protobuf 编码会给出以下输出 0a 10 08 7f8a 0104 08 02 10 0392 0104 08 02 10 03 18 01 我不明白的是为什么8a后面有一个01 为什么9
  • Python:Goslate 翻译请求返回“503:服务不可用”[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我们不允许提出寻求书籍 工具 软件库等推荐的问题 您可以编辑问题 以便用事实和引文来回答 这个问题似乎不是关于主要由程序员使用的特定编程问
  • Firebase Firestore:获取文档的生成 ID (Python)

    我可以创建一个新文档 带有自动生成的 ID 并存储对其的引用 如下所示 my data key value doc ref db collection u campaigns add my data 我可以像这样访问数据本身 print d
  • 在virtualenv中下载sqlite3

    我正在尝试使用命令创建应用程序python3 manage py startapp webapp但我收到一条错误消息 django core exceptions ImproperlyConfigured 加载时出错 pysqlite2 或
  • NLTK:查找单词大小为 2k 的上下文

    我有一个语料库 我有一个词 对于语料库中该单词的每次出现 我想获取一个包含该单词之前的 k 个单词和该单词之后的 k 个单词的列表 我在算法上做得很好 见下文 但我想知道 NLTK 是否提供了一些我错过的功能来满足我的需求 def size

随机推荐

  • Magento Catalog_category_flat_store_1 不存在

    我有一个运行 Magento CE 1 7 的现有商店 突然从今天早上开始 没有任何代码更新 我收到以下错误 a 5 i 0 s 111 SQLSTATE 42S02 未找到基表或视图 1146 表 XXXXXX catalog categ
  • 如何应用TextBox控件模板?

    我正在尝试简化一些代码并提高可维护性 我最初正在寻找一种使文本框向左对齐的方法 它可以收缩和扩展到最大值 而无需在达到最大值后在网格单元内居中 所以我开始编写一些这样的代码
  • preload.php 文件在哪里?它是如何生成的?

    对于 Symfony 5 1 和 PHP 7 4 我想添加preload php在opcache中 Symfony 文档 在容器编译期间 例如 运行cache clear命令时 Symfony 在 config 目录中生成一个名为 prel
  • 如何将表列(通过 SQL 查询返回)作为 CheckedListBox 中的项目列出?

    如果我有下表 canAssign 1 有没有办法添加列标题文本 例如 canAssign等 到CheckedListBox作为用户可以检查的标签 我找到的所有答案都列出了value作为标签 像这样 1 而不是这个 canAssign 仅作为
  • 如何将 MKV 字节读取为视频?

    我正在接收 MKV 视频片段 以字节为单位 我需要获取它的第一帧以供以后处理 而不将视频保存在磁盘中 对于类似的图像问题 我使用 OpenCV 或 PIL 一切正常 但是 我无法对视频数据执行相同的操作 有什么技巧可以帮助我将视频从字节读取
  • Python 的 subprocess shell=True 属性在 Java 中的等价物是什么?

    我已经使用Python很长时间了 python 的系统和子进程方法可以采用 shell True 属性来生成设置环境变量的中间进程 在命令运行之前 我一直在使用 Java 来回使用 Runtime exec 来执行 shell 命令 Run
  • MSAL UserAgentApplication:本地存储不工作

    UserAgentApplication localCache localStorage 不起作用 重现步骤 var client new Msal UserAgentApplication config aadClientId confi
  • 在 Swift 中使用 Regex 进行简单搜索时,如何避免由于搜索字符串中的特殊字符而导致的错误?

    我正在使用正则表达式在文本视图中搜索单词 我实现了一个文本字段和两个开关作为选项 全字和匹配大小写 当您在搜索字段中输入普通单词时 一切正常 但当我输入 或 等特殊字符时 我会收到错误 我得到的错误是这样的 Error Domain NSC
  • 游戏中心邀请立即失败

    我们在发送邀请时遇到问题GKGameCenterViewController 视图控制器打开得很好 但是当我们尝试向某人发送邀请时 它立即失败 两个帐户都启用了游戏中心邀请并通过GKGameViewController工作正常 这是我们用来
  • 使用 VBA 将 JSON 解析为 Excel

    我在 VBA 中解析 JSON 数据时遇到一些问题 我已经尝试了网上的所有示例 但仍然无法解决问题 我设法做的是使用另一个从另一个网站提取数据的 VBA 代码将 JSON 数据以原始格式提取到 Excel 中 我粘贴了下面有效的代码 它不是
  • 如果 diff'ing 不在存储库中,则没有选项可以忽略文件模式吗?

    我在一些自动化测试中使用 git 作为一种在 Linux 和 Windows 上使用相同语法的 diff 命令的简单方法 它工作正常 但由于我正在比较的文件位于共享驱动器上 我一直在偶然发现文件模式的差异被 不必要地 报告为更改 我环顾四周
  • WPF 选取框文本动画

    我可以滚动文本TranslateTransform但是当动画接近完成时我希望它再次开始 像蛇一样 这就是我所拥有的
  • 如何在SSIS中创建异步脚本组件?

    我可能是瞎子 但我不知道如何创建脚本组件 我不是问为什么要进行异步 如何使用它等等 我只是想知道如何将其添加到我的包中 或者如何将现有组件转换为异步组件 我正在使用 VS2008 和 MSSQL 2008 R2 我发现如何 进入脚本转换编辑
  • Windows Phone 8 推送通知推送通道始终创建新通道 uri

    我想检查我的推送通知实现是否正确 每次我打开我的应用程序 事实上 我只在特定页面上注册推送通道 因此每次我从该页面来回切换时 都会创建一个新的推送通道 URI 我将其存储在我的移动服务数据库中以发送将通知推送至 这对我来说似乎不正确 因为每
  • 矩阵转置和总体计数

    我有一个大小为 N 的方形布尔矩阵 M 按行存储 我想计算每列设置为 1 的位数 例如 对于 n 4 1101 0101 0001 1001 M stored as 1 1 0 1 0 1 0 1 0 0 0 1 1 0 0 1 resul
  • Dictionary 具有不同类型的委托:更清晰的非字符串方法名称?

    必须有一种更清洁的方法 目前我有 Constructor parseDictionary new Dictionary
  • 如果我在 index.php 之后输入参数,CSS 样式就会消失

    如果我在登陆页面 index php 后输入任何参数 我的 CSS 样式将停止工作 我正在运行 xampp 的开发本地主机服务器上添加 测试新代码 使用 php javascript html css 进行编码 编辑 我的开发服务器是 Wi
  • Vue 组件之间传递变量

    我刚刚开始学习 Vue js 需要帮助 我有两个组件 第一个组件不是第二个组件的父组件 我需要将变量从一个组件传输到另一个组件 我尝试过使用 props 坏主意 也许有人知道如何避免这种 家长 限制 首先请确保您已阅读并理解有关组件的 Vu
  • 将图像放置在 DIV 顶部并将其居中

    我有两个容器 一个灰色 一个白色 我想将图像 这将是一个向下的三角形 放置在白色背景的最顶部 并将其水平居中 我怎样才能做到这一点 我已尝试以下方法 但不起作用 See https jsfiddle net 63s86hf9 HTML se
  • 保存和加载测试以另一种方法对 NLTK 中的朴素贝叶斯分类器进行分类

    我已经尝试过这里的代码 将朴素贝叶斯训练分类器保存在 NLTK 中 我想将推文分为正类或负类 这是我的代码 learning py def main learning classifier nltk NaiveBayesClassifier