将分类器投入生产

2024-01-24

我已经使用 joblib 保存了分类器管道:

vec = TfidfVectorizer(sublinear_tf=True, max_df=0.5, ngram_range=(1, 3))
pac_clf = PassiveAggressiveClassifier(C=1)
vec_clf = Pipeline([('vectorizer', vec), ('pac', pac_clf)])
vec_clf.fit(X_train,y_train)
joblib.dump(vec_clf, 'class.pkl', compress=9)

现在我尝试在生产环境中使用它:

def classify(title):

  #load classifier and predict
  classifier = joblib.load('class.pkl')

  #vectorize/transform the new title then predict
  vectorizer = TfidfVectorizer(sublinear_tf=True, max_df=0.5, ngram_range=(1, 3))
  X_test = vectorizer.transform(title)
  predict = classifier.predict(X_test)
  return predict

我收到的错误是: ValueError:词汇未安装或为空! 我想我应该从 joblid 加载词汇表,但我无法让它工作


只需替换:

  #load classifier and predict
  classifier = joblib.load('class.pkl')

  #vectorize/transform the new title then predict
  vectorizer = TfidfVectorizer(sublinear_tf=True, max_df=0.5, ngram_range=(1, 3))
  X_test = vectorizer.transform(title)
  predict = classifier.predict(X_test)
  return predict

by:

  # load the saved pipeline that includes both the vectorizer
  # and the classifier and predict
  classifier = joblib.load('class.pkl')
  predict = classifier.predict(X_test)
  return predict

class.pkl包括完整的管道,无需创建新的矢量化器实例。正如错误消息所示,您需要重用首先训练的向量化器,因为从标记(字符串 ngram)到列索引的特征映射保存在向量化器本身中。这种映射被称为“词汇表”。

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

将分类器投入生产 的相关文章

  • 在Python子目录中创建文件?

    在我的 Python 脚本中 我需要在子目录中创建一个新文件而不更改目录 并且需要从当前目录不断编辑该文件 My code os mkdir datetime dst for ip in open list txt with open ip
  • SQLAlchemy 闭包表关系定义

    我最近开始使用 SQL Alchemy 开展一个涉及攀岩区域和路线的项目 区域是分层的 因为单个区域可以包含多个区域 而多个区域又可以包含其他区域 路线直接与单个区域关联 但也与该区域的父区域关联 等等 为了实现这一点 我选择使用Bill
  • Python - 重写 print()

    我正在使用 mod wsgi 想知道是否可以覆盖 print 命令 因为它没用 这样做是行不通的 print myPrintFunction 因为这是一个语法错误 Print 不是 Python 2 x 中的函数 因此这不能直接实现 但是
  • Pytorch“展开”等价于 Tensorflow [重复]

    这个问题在这里已经有答案了 假设我有大小为 50 50 的灰度图像 在本例中批量大小为 2 并且我使用 Pytorch Unfold 函数 如下所示 import numpy as np from torch import nn from
  • 如何从numpy数组中获取两个最小值

    我想从数组中取出两个最小值x 但是当我使用np where A B np where x x min 0 1 我收到此错误 ValueError 需要超过 1 个值才能解压 我该如何修复这个错误 我需要在数组中按升序排列数字吗 您可以使用n
  • Keras 中的 Tensorflow 自定义损失函数 - 张量循环

    我正在尝试在 Keras 中编写自定义损失函数 如下所示 Keras 中的自定义损失函数 https stackoverflow com questions 43818584 custom loss function in keras 我的
  • 登录 python + mod_wsgi 应用程序

    我在 apache 服务器上部署了一个 python Flask 应用程序 这是我的abc conf file WSGIDaemonProcess voting app threads 5 WSGIScriptAlias election
  • 在 matplotlib 中查看然后自动关闭图形?

    我必须检查我的参数设置是否正确 因此我需要绘制许多图 为了绘制这些图 我选择使用 matplotlib 每次检查后 我需要单击左上角的关闭按钮 这很微不足道 那么有没有什么方法可以让剧情在3 5秒左右显示并且无需点击就自动关闭呢 我知道关于
  • 向 list.extend() 传递不可迭代对象

    我正在创建一个公共方法来允许调用者将值写入设备 例如将其称为 write vals 由于这些值将实时输入 因此我希望通过允许用户输入列表或单个值来简化用户的生活 具体取决于他们需要写入的值的数量 例如 write to device 1 2
  • 无法写入文本文件

    我正在运行一些测试并需要写入文件 当我运行测试时open file r 不写入文件 测试脚本如下 class GetDetailsIP TestGet def runTest self self category PTZ try This
  • 如何开始使用“scipy”

    我之前安装过 Python 3 4 2 和 3 5 2 在这两种情况下 我都可以在 Idle 中涉足编写和测试代码 这给了我两个窗口 一个用于代码的 运行 窗口 一个用于交互和测试的 Shell 窗口 输出 抱歉 不确定术语是否正确 现在我
  • 当有效的 django 表单保存在数据库中时如何触发自定义 python 代码

    Django 新手 我创建了一个简单的表单如下this https www youtube com watch v 3XOS UpJirU教程 我的表单正确地将数据保存在我的 Postgres 连接的本地数据库中 我想知道 每当将有效表单保
  • 如何在这个可嵌套的 For 循环中实现 Robot Framework 风格的变量?

    我在 Robot Framework 中见过很多 嵌套 For 循环 主要是创建一个内部带有 For 循环的关键字 然后在另一个 For 循环中调用该关键字 我使用 Python 2 7 13 制作了一个可嵌套的 For 循环 但因为它主要
  • Python:从字符串访问变量[重复]

    这个问题在这里已经有答案了 这可能是非常基本和简单的事情 我可能只是在谷歌上搜索错误的术语 但希望这里有人可以帮助我 我仍然是编程的初学者 这从这个问题中可能是显而易见的 我正在寻找一种从字符串访问变量的方法 像这样 A1 B1 C1 my
  • 是否可以将 SpaCy 安装到 Raspberry Pi 4 Raspbian Buster

    我一整天都在安装 SpaCy sudo pip install U spacy Looking in indexes https pypi org simple https www piwheels org simple Collectin
  • matplotlib 轴标签偏移量的因素和变化

    在 matplotlib 中的轴刻度标签上 有两种可能的偏移量 factors and shifts 在右下角 1e 8 是一个 因子 1 441249698e1 是一个 移位 这里有很多答案展示了如何操纵两个都 matplotlib 将轴
  • 第 100 次避免循环导入

    Summary 我继续有一个ImportError在一个复杂的项目中 我已经将其蒸馏到仍然会出现错误的最低限度 Example 巫师有装有绿色和棕色药水的容器 这些可以添加在一起 产生同样是绿色或棕色的新药水 我们有一个PotionABC
  • 在 python 中将数组作为参数传递

    我是Python新手 现在我需要声明大小为 20 的数组并将该数组传递给函数 需要数组的函数如下 function args The args是一个输入function 谁能帮我 如何在 python 中传递数组 当你说 数组 时 我假设你
  • Python 中的延迟求值/惰性求值

    我想延迟对类实例的成员函数的调用的评估 直到该实例实际存在 最小工作示例 class TestClass def init self variable 0 self variable 0 variable 0 def get variabl
  • 使用 PyODBC 选择表中的列名

    我正在编写一个 Python 程序 该程序使用 PyODBC 从 Microsoft Access mdb 文件中选择一些数据 我需要发现几个不同表的列名 在 SQL Server 中 这可以通过使用类似的查询来完成 SELECT c na

随机推荐

  • 防止用户生成的内容破坏布局?

    我有一个包含一些用户生成的内容的网站 我希望能够将布局的标记以及用户生成的内容的标记分开 这样 u g 内容就不会破坏网站布局 用户生成的内容是可信的 因为它来自我网络上的已知用户组 但尽管如此 只允许一小部分 html 标签 p ul o
  • 使用 TypeScript 编写 React 高阶组件

    我正在写一个反应高阶组件 HOC https facebook github io react docs higher order components html使用 TypeScript HOC 应该比包装组件多接受一个 prop 所以我
  • 将变量传递到新页面

    我试图从一个页面传递一个变量 加载另一个页面并输入该信息 像这样的东西 当127 0 0 1 test html ID 1234时 location href 127 0 0 1 newpage html if location href
  • Swift - uiDelegate 必须是 UIViewController 或实现 signIn:presentViewController: & signIn:dismissViewController: 方法

    来自Crashlytics 我们在 Google 登录过程中收到大量崩溃报告 崩溃报告如下 Fatal Exception NSInvalidArgumentException uiDelegate must either be a UIV
  • require_once被忽略

    Windows 上的 php 出现奇怪的问题 我的应用程序加载一个 核心 文件 该文件加载设置文件 注册自动加载 进行初始化等 在核心文件的顶部我有 include once config php 这对于当前目录中的任何内容都适用 如果我包
  • TableViewController 或具有用于解析 API 查询的表视图的视图控制器

    我想显示一个姓名列表和列表下的按钮 但不知道该怎么做 创建一个空白视图控制器 然后将带有表视图单元格和按钮的表视图拖到其中是否正确 该按钮将导航至添加名称功能 或者可以直接使用表视图控制器吗 如果我使用空白视图控制器执行此操作 我必须为拖动
  • 在 MonoDroid 上实现 IJavaObject

    我目前正在尝试在类上实现 ILocationListener 以便接收 GPS 更新 这不是在 Activity 上 而是在普通的 C 类上 作为 ILocationListener 合约的一部分 我需要支持 I JavaObject pu
  • Blackberry BrowserField白色空页问题

    你好 我想在 BrowserField 中显示 html 内容 我使用代码 blove 来执行此操作 但我只看到白色的空白页面 BrowserField demo new BrowserField String res p demo p d
  • 异步和等待 - 控制台、Windows 窗体和 ASP.NET 之间的区别

    我一直在学习异步 等待的使用 我想我理解了底层的概念 然而 大多数关于 async await 的 Channel 9 教程 MSDN 文章和 Stack Overflow 答案都使用基于 GUI 的应用程序 Windows 窗体应用程序
  • JDBC 和 MySql 安装和配置

    我必须使用 JDBC 和 MySql 做一个项目 有人可以指导我尝试安装和运行这些该死的东西吗 我不知道该怎么做以及做什么 我一生中从未使用过数据库 所以我不知道 我需要安装 配置什么等 有人可以提供一些有用的链接供我开始吗 Vogella
  • UIButton的addtarget:触摸后未调用!

    我有以下代码 当我按下 UIButton 时 不会调用任何内容 并且不会崩溃 calloutButton UIView alloc initWithFrame CGRectMake left width2 2 3 5 230 230 UIB
  • 使用 Hibernate 登录并存储记录的用户名

    我正在开发一个简单的项目云 其中注册用户登录后可以下载和上传文件 我正在使用 Eclipse Java EE JSF 和 Hibernate 进行开发 在我的项目中 我可以登录用户 如果数据正确 我会打开用户菜单 但无法弄清楚在哪里存储有关
  • 使用 UIAppearance 更改标签高度

    有没有办法使用 UIAppearance 更改 UINavigationBar 内标签的高度 这是代码和正在发生的情况的图像 以便您可以了解问题所在 UINavigationBar appearance setTitleVerticalPo
  • iPhone - UIView addSubview 顶部间隙

    我有一个加载到 MainWindow xib 中的视图 它只是一个带有 uiimageview 的视图 在整个屏幕 320 X 480 上显示图像 当应用程序加载时 我显示此视图 然后执行 self view addSubview tabb
  • WP7应用程序版本

    Windows Phone 7 应用程序似乎有两个带有版本号的位置 一个位于 AssemblyInfo cs 中 通过AssemblyVersion AssemblyFileVersion属性 另一个是 WMAppManifest xml
  • 如何自定义Boost.Log的“TimeStamp”格式

    我想得到年 月 日时 分 秒 分数 2位数字 如果我使用 Y m d H M S f 我几乎得到了什么我想要秒的小数部分 最后一部分 例外 它在我的 Windows XP 上显示 6 位数字 我不知道如何只获取 2 位数字 知道吗 我正在用
  • 创建 Log4j Logger 的开销是多少

    我的应用程序中有一些 Web 服务 我想根据 Web 服务名称将它们记录到不同的文件中 为此 我正在创建记录器 myLogger Logger getLogger logKey 我想知道是否应该缓存这些记录器以避免为每次调用创建它们 或者我
  • python 如何在“for”循环中处理对象实例化

    我有一个非常复杂的课程 class C pass 我有这个测试代码 for j in range 10 c C print c 这使 lt main C instance at 0x7f7336a6cb00 gt lt main C ins
  • Gradle Eclipse WTP:War 文件包含在另一个 war 文件中

    我有两个网络 战争 项目 A 和 B B 取决于 A 当我构建 B 时 A 按预期作为 A jar 包含在 B 的 WEB INF 中 我还使用 Gradle 的 eclipse 和 eclipseWtp 插件来生成 Eclipse 项目
  • 将分类器投入生产

    我已经使用 joblib 保存了分类器管道 vec TfidfVectorizer sublinear tf True max df 0 5 ngram range 1 3 pac clf PassiveAggressiveClassifi