You need to enable JavaScript to run this app. 如何查看经过Bernoulli分类器处理后各数据点的分类结果
优惠活动
大模型
产品
解决方案
定价
更多

如何查看经过Bernoulli分类器处理后各数据点的分类结果

解决方案

你代码中已经计算得到的y_pred_n变量就是测试集所有数据点的分类结果,每个位置的取值和docs_test_n、y_test_n的位置一一对应,你可以通过以下方式把样本原始内容、真实标签、预测结果对应查看:

1. 生成测试集分类结果对照表

通过pandas将相关信息拼接为表格,方便查看和导出:

import pandas as pd

# 拼接测试集各维度信息
test_result = pd.DataFrame({
    "样本文本": docs_test_n,
    "真实类别": y_test_n,
    "预测类别": y_pred_n,
    "预测为正类的概率": y_pred_prob_n
})

# 打印前10条结果查看
print(test_result.head(10))

# 如需导出到本地文件可执行下面的代码
# test_result.to_csv("伯努利分类器测试集结果.csv", index=False, encoding="utf-8-sig")

如果需要单独查看分类错误的样本,可通过条件筛选实现:

# 筛选所有预测和真实标签不一致的样本
wrong_preds = test_result[test_result["真实类别"] != test_result["预测类别"]]
print(wrong_preds)

2. 查看训练集的分类结果

如果需要查看模型在训练集上的每个样本分类结果,可直接对训练集特征调用预测方法:

# 计算训练集预测结果
y_pred_train = clf_n.predict(dtm_train_n)
y_pred_train_prob = clf_n.predict_proba(dtm_train_n)[:, 1]

# 生成训练集结果对照表
train_result = pd.DataFrame({
    "样本文本": docs_train_n,
    "真实类别": y_train_n,
    "预测类别": y_pred_train,
    "预测为正类的概率": y_pred_train_prob
})
print(train_result.head(10))

补充说明

  • 预测结果数组的长度和对应数据集的样本数完全一致,数组第i个值就对应第i个样本的分类结果
  • 如果你需要对新的未标注样本做分类,只需先对新文本做和训练流程一致的TF-IDF转换,再调用clf_n.predict(转换后的特征)即可得到分类结果

内容的提问来源于stack exchange,提问作者Alokin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 08:45:03