机器学习中的朴素贝叶斯 📅 2026/8/5 22:35:02 一、贝叶斯定理 朴素假设朴素贝叶斯是一种基于概率统计的监督学习算法核心源于贝叶斯定理P(y∣X)P(y)⋅P(X∣y)P(X)P(y∣X)P(X)P(y)⋅P(X∣y)P(y∣X)在特征 X条件下属于类别 y的概率。P(y)类别为y的概率。P(X∣y)即在类别y下特征X出现的概率。朴素贝叶斯就是一个基于贝叶斯公式、假设特征独立的概率分类器。二、代码模型的训练1. 数据加载代码为pd.read_csv(iris.csv)作用为读取特征和标签。2. 特征工程代码为MinMaxScaler*100astype(int)作用为将连续特征转为非负整数满足MultinomialNB的输入要求。3.划分数据集代码为train_test_split(test_size0.2, random_state100)作用为80%训练20%测试固定随机种子保证可复现。4.模型训练代码为MultinomialNB(alpha1).fit(X_train, y_train)作用为让模型“吃透”训练数据计算出朴素贝叶斯公式所需的所有关键概率参数生成一个训练好的分类器对象。算出各类别的基本盘 P(y)并且算出各类别下各特征值的分布规律 P(xi∣y)。5.模型评估代码为classification_reportconfusion_matrix作用为输出精确率、召回率、F1值并绘制混淆矩阵可视化。6. 准确率输出代码为classifier.score(X_test, y_test)作用为直接输出模型在测试集上的整体精度。三、朴素贝叶斯的优缺点1.优点训练极快只需计算概率表没有迭代优化过程。对小数据集友好Iris仅150条样本NB依然表现稳定。多分类天然支持Iris有3种花NB能直接输出各类别概率。2.缺点强独立性假设鸢尾花的4个特征其实有相关性理论上用决策树或KNN可能更好。对数据预处理敏感若不做整数转换MultinomialNB会直接报错。概率校准可能不准确输出概率常偏向极端0或1。