python - 机器学习 Joblib 预测
问题描述
我从这个 repo github repo中得到了一些保存的模型,我正在尝试从模型中进行预测,我是机器学习的新手。这就是我所拥有的。
这是我正在使用的笔记本
import joblib
from sklearn.feature_extraction.text import CountVectorizer
import numpy as np
from sklearn.preprocessing import OneHotEncoder
import pandas as pd
model_mnb = joblib.load("/content/decision_tree.joblib")
model_dec = joblib.load("/content/gradient_boost.joblib")
model_gra = joblib.load("/content/mnb.joblib")
model_forest = joblib.load("/content/random_forest.joblib")
print(model_mnb, model_dec, model_gra, model_forest)
sample = ["I have Fever", "I have headache", "I have sore limbs"]
encoder = OneHotEncoder(sparse=False)
test_data = encoder.fit_transform(sample)
model_mnb.predict(test_data)
我正进入(状态:
ERROR: Expected 2D array, got 1D array instead:
解决方案
这很可能是因为您的样本变量是一个样本。如果要预测多个样本,则需要一个嵌套列表,这可能是 predict() 函数所期望的。尝试在您的 test_data 变量周围添加一对方括号,或者在示例变量的前面添加一个方括号。
推荐阅读
- python - 当 sizer 项目隐藏时,GridBagSizer 可以拉伸吗?
- java - 如何在 Android 中通信两个服务?
- java - 扩展gridview时,为什么需要在构造函数中调用super?
- c# - 将具有 in 运算符的 sql 查询转换为 linq
- angular - 当 SRC 具有无效的 XSS 时,Angular IMG OnError 在 Firefox 上不起作用
- python - 零维数组不能串联,但我的数组不是零维的
- abap - CL_GUI_TIMER 的“范围”是什么?
- python - 为什么在 Transformer 模型中嵌入向量乘以常数?
- c# - 如何使用 linq 将嵌套集合作为数组返回
- php - 试图获取非对象的属性“num_rows”