gpt4 book ai didi

python - Scikit 学习错误消息 'Precision and F-score are ill-defined and being set to 0.0 in labels'

转载 作者:太空狗 更新时间:2023-10-29 21:39:18 29 4
gpt4 key购买 nike

我正在研究二元分类模型,分类器是朴素贝叶斯。我有一个几乎平衡的数据集,但是我在预测时收到以下错误消息:

UndefinedMetricWarning: Precision and F-score are ill-defined and being set to 0.0 in labels with no predicted samples.
'precision', 'predicted', average, warn_for)

我在 CV k-fold 10 中使用网格搜索。测试集和预测包含这两个类,所以我不理解消息。我正在为其他 6 个模型处理相同的数据集、训练/测试拆分、cv 和随机种子,这些模型工作得很好。数据从外部摄取到数据帧中,随机化并且种子是固定的。然后朴素贝叶斯分类模型对该代码段之前开头的文件进行分类。

X_train, X_test, y_train, y_test, len_train, len_test = \
train_test_split(data['X'], data['y'], data['len'], test_size=0.4)
pipeline = Pipeline([
('classifier', MultinomialNB())
])

cv=StratifiedKFold(len_train, n_folds=10)

len_train = len_train.reshape(-1,1)
len_test = len_test.reshape(-1,1)

params = [
{'classifier__alpha': [0, 0.0001, 0.001, 0.01]}

]

grid = GridSearchCV(
pipeline,
param_grid=params,
refit=True,
n_jobs=-1,
scoring='accuracy',
cv=cv,
)

nb_fit = grid.fit(len_train, y_train)

preds = nb_fit.predict(len_test)

print(confusion_matrix(y_test, preds, labels=['1','0']))
print(classification_report(y_test, preds))

我被 python“强制”改变了系列的形状,也许这就是罪魁祸首?

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com