【机器学习系列】使用高斯贝叶斯模型进行数据分类的完整流程

目录

一、导入数据

二、选择特征

三、十折交叉验证

四、划分训练集和测试集

五、训练高斯贝叶斯模型

六、预测测试集

七、查看训练集和测试集上的分数

八、查看混合矩阵

九、输出评估指标

一、导入数据

复制代码
# 根据商户数据预测其是否续约案例
import pandas
#读取数据到 data 变量中
data = pandas.read_csv('高斯贝叶斯.csv', encoding='ansi')

二、选择特征

复制代码
features = [ '注册时长', '营收收入', '成本']
x=data[features]
y=data['是否续约']

三、十折交叉验证

复制代码
#高斯贝叶斯
from sklearn.naive_bayes import GaussianNB
gaussianNB = GaussianNB()

from sklearn.model_selection import cross_val_score
#进行K折交叉验证
cvs = cross_val_score(gaussianNB, x, y, cv=10)
cvs.mean()

分数如下:

四、划分训练集和测试集

复制代码
from sklearn.model_selection import train_test_split
 
#把数据集分为训练集和测试集
x_train, x_test, y_train, y_test = train_test_split(
    x, y, test_size=0.3)

五、训练高斯贝叶斯模型

复制代码
gaussianNB = gaussianNB.fit(x_train, y_train)

六、预测测试集

复制代码
predict=gaussianNB.predict(x_test)

七、查看训练集和测试集上的分数

复制代码
gaussianNB.score(x_train, y_train)

gaussianNB.score(x_test, y_test)

八、查看混合矩阵

复制代码
gaussianNB = GaussianNB()
#使用所有数据训练模型
gaussianNB.fit(x, y)
#对所有的数据进行预测
data['预测是否续约'] = gaussianNB.predict(data[features])
from sklearn.metrics import confusion_matrix
#计算混淆矩阵,labels参数,可由 gaussianNB.classes_ 得到
confusion_matrix(
    data['是否续约'], 
    data['预测是否续约'], 
    labels=['不续约', '续约']
)

九、输出评估指标

复制代码
from sklearn.metrics import classification_report
# 输出评估指标
print(classification_report(y_test, predict))
相关推荐
极客BIM工作室12 小时前
Gemini 3 技术细节公布:架构、能力与未公开信息汇总
人工智能·机器学习
掘金一周12 小时前
后台太多记不住?我做了一个统一门户把所有系统全串起来了| 掘金一周 12.4
人工智能·openai
shayudiandian13 小时前
AI图像修复(Image Inpainting)实战案例
人工智能
普美瑞生物前沿13 小时前
创新药物发现:基于机器学习的虚拟筛选发现新型CYP19A1抑制剂
人工智能·机器学习·虚拟筛选
All The Way North-13 小时前
一文系统性理清PyTorch多分类任务交叉熵损失:从 Softmax 到 CrossEntropyLoss
人工智能·pytorch·深度学习·机器学习·交叉熵损失·多分类损失
Lau_way13 小时前
AVadCLIP: Audio-Visual Collaboration for Robust Video Anomaly Detection
人工智能·深度学习
zhaodiandiandian13 小时前
生成式 AI:从技术狂欢到产业重构的价值革命
人工智能·重构
云雾J视界13 小时前
敏捷实践组合破解芯片低功耗困局:迭代开发中如何精准控制功耗指标
人工智能·低功耗·敏捷实践·tdd·持续集成·软硬件协同·iot芯片
Light6013 小时前
星火链智:领码SPARK融合平台与湖北数据知识产权综合服务平台全栈对接技术白皮书
大数据·零信任安全·领码spark·数据知识产权·ipaas集成·ai数据治理
围炉聊科技13 小时前
手机端侧智能助手:从被动工具到主动助手的进化之路
人工智能·智能手机