news 2026/6/10 19:42:50

人工智能之核心基础 机器学习 第七章 监督学习总结

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
人工智能之核心基础 机器学习 第七章 监督学习总结

人工智能之核心基础 机器学习

第七章 监督学习总结


文章目录

  • 人工智能之核心基础 机器学习
    • 一、监督学习核心任务回顾
    • 二、六大主流监督学习算法详解对比
      • 1. **线性回归 & 逻辑回归**
      • 2. **决策树(Decision Tree)**
      • 3. **随机森林(Random Forest)**
      • 4. **梯度提升树(XGBoost / LightGBM)**
      • 5. **支持向量机(SVM)**
      • 6. **朴素贝叶斯(Naive Bayes)**
    • 三、算法选择决策树
    • 四、各算法核心优缺点速查表
    • 五、代码实现统一模板(Scikit-learn)
    • 六、总结:没有“最好”,只有“最合适”
  • 资料关注

一、监督学习核心任务回顾

监督学习解决两类问题:

任务类型目标输出形式典型场景
分类预测离散类别标签“是/否”、“猫/狗/鸟”垃圾邮件识别、疾病诊断
回归预测连续数值房价、温度、销售额房价预测、销量预测

✅ 所有以下算法均可用于分类或回归(部分需变体),但各有侧重。


二、六大主流监督学习算法详解对比

1.线性回归 & 逻辑回归

特性线性回归逻辑回归
任务类型回归分类(主要是二分类)
核心思想拟合一条直线(超平面)用Sigmoid将线性输出转为概率
损失函数平方误差(MSE)交叉熵损失
输出解释预测值(如300万元)属于正类的概率(如85%)
可解释性⭐⭐⭐⭐⭐(权重=特征重要性)⭐⭐⭐⭐(系数符号表示影响方向)
是否需要特征缩放否(但推荐)是(尤其用梯度下降时)
典型应用房价、销量预测疾病风险、用户转化预测

💡关键区别

  • 线性回归 → 预测“多少”
  • 逻辑回归 → 预测“是不是”

2.决策树(Decision Tree)

特性说明
任务类型分类 & 回归
核心思想if-else规则链,分而治之
特征选择信息增益、Gini不纯度
可解释性⭐⭐⭐⭐⭐(可视化规则)
是否需要特征缩放❌ 不需要
处理非线性✅ 天然支持
缺点容易过拟合(需剪枝)
典型应用业务规则提取、客户分群

🌳优势:像人一样思考,业务人员能看懂!


3.随机森林(Random Forest)

特性说明
本质决策树的集成(Bagging)
核心机制多棵树投票(分类)/平均(回归)
随机性来源样本随机(Bootstrap)+ 特征随机
可解释性⭐⭐(黑盒,但可输出特征重要性)
抗过拟合✅ 强(比单棵树好得多)
训练速度中等(可并行)
典型应用通用分类/回归、特征重要性分析

🎯一句话:把多个“不太准”的树组合成一个“很准”的模型。


4.梯度提升树(XGBoost / LightGBM)

特性说明
本质决策树的集成(Boosting)
核心机制串行训练,每棵树纠正前一棵的错误
优化目标最小化损失函数的梯度
精度⭐⭐⭐⭐⭐(Kaggle常胜将军)
可解释性⭐⭐(提供SHAP值可解释)
调参难度较高(需调 learning_rate, n_estimators 等)
典型应用竞赛、高精度工业模型

XGBoost vs LightGBM

  • XGBoost:精度高,功能全
  • LightGBM:更快、更省内存,适合大数据

5.支持向量机(SVM)

特性说明
任务类型主要用于分类(回归可用SVR)
核心思想找最大间隔的分隔超平面
处理非线性✅ 通过核函数(RBF最常用)
可解释性⭐(黑盒,仅支持向量有意义)
是否需要特征缩放✅ 必须!(尤其RBF核)
数据规模适应性❌ 不适合大数据(>10万样本慢)
典型应用文本分类、中小规模高维数据

🔑关键参数C(正则强度)、gamma(RBF核影响范围)


6.朴素贝叶斯(Naive Bayes)

特性说明
任务类型分类(不用于回归)
核心假设特征条件独立(“朴素”之处)
训练速度⭐⭐⭐⭐⭐(极快)
内存占用极小
可解释性⭐⭐(可看特征对类别的贡献)
典型变体高斯NB(连续)、多项式NB(文本)、伯努利NB(二值)
最佳场景✅ 文本分类(垃圾邮件、情感分析)

📧行业事实:尽管简单,仍是文本分类首选baseline


三、算法选择决策树


四、各算法核心优缺点速查表

算法优点缺点适用场景
线性/逻辑回归可解释强、训练快、理论清晰只能学线性关系基线模型、可解释需求
决策树可视化、无需预处理、处理非线性易过拟合、不稳定规则提取、快速原型
随机森林稳定、抗过拟合、自动特征重要性黑盒、内存大通用任务、特征筛选
XGBoost/LightGBM精度高、支持多种目标调参复杂、训练慢竞赛、高精度需求
SVM高维有效、泛化好大数据慢、难调参文本、中小规模数据
朴素贝叶斯极快、小样本有效、文本王者独立假设强、概率不准垃圾邮件、情感分析

五、代码实现统一模板(Scikit-learn)

fromsklearn.model_selectionimporttrain_test_splitfromsklearn.preprocessingimportStandardScalerfromsklearn.metricsimportaccuracy_score,mean_squared_error# 1. 数据准备X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.2)# 2. 特征缩放(仅SVM、逻辑回归等需要)ifmodel_needs_scaling:scaler=StandardScaler()X_train=scaler.fit_transform(X_train)X_test=scaler.transform(X_test)# 3. 模型训练model.fit(X_train,y_train)# 4. 预测与评估y_pred=model.predict(X_test)ifclassification:print("准确率:",accuracy_score(y_test,y_pred))else:print("RMSE:",mean_squared_error(y_test,y_pred,squared=False))

Scikit-learn统一接口.fit(),.predict(),.score()
除XGBoost/LightGBM需单独安装,其余均内置!


六、总结:没有“最好”,只有“最合适”

需求推荐算法
快速出结果朴素贝叶斯、逻辑回归
业务可解释决策树、线性模型
高精度竞赛XGBoost、LightGBM
文本分类朴素贝叶斯 > SVM(线性) > 随机森林
中小规模通用随机森林(首选)、SVM
大数据回归LightGBM、随机森林

🎯黄金建议
先跑一个简单模型(如逻辑回归或朴素贝叶斯)作为baseline
再逐步尝试复杂模型。很多时候,简单模型已经足够好!


资料关注

公众号:咚咚王
gitee:https://gitee.com/wy18585051844/ai_learning

《Python编程:从入门到实践》
《利用Python进行数据分析》
《算法导论中文第三版》
《概率论与数理统计(第四版) (盛骤) 》
《程序员的数学》
《线性代数应该这样学第3版》
《微积分和数学分析引论》
《(西瓜书)周志华-机器学习》
《TensorFlow机器学习实战指南》
《Sklearn与TensorFlow机器学习实用指南》
《模式识别(第四版)》
《深度学习 deep learning》伊恩·古德费洛著 花书
《Python深度学习第二版(中文版)【纯文本】 (登封大数据 (Francois Choliet)) (Z-Library)》
《深入浅出神经网络与深度学习+(迈克尔·尼尔森(Michael+Nielsen)》
《自然语言处理综论 第2版》
《Natural-Language-Processing-with-PyTorch》
《计算机视觉-算法与应用(中文版)》
《Learning OpenCV 4》
《AIGC:智能创作时代》杜雨+&+张孜铭
《AIGC原理与实践:零基础学大语言模型、扩散模型和多模态模型》
《从零构建大语言模型(中文版)》
《实战AI大模型》
《AI 3.0》

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 18:20:28

绿色AI理念践行:优化Fun-ASR能耗比减少碳足迹

绿色AI理念践行:优化Fun-ASR能耗比减少碳足迹 在人工智能加速落地的今天,语音识别已悄然渗透进会议记录、远程办公、无障碍交互等日常场景。然而,当人们享受“说话即文字”的便捷时,很少有人意识到每一次语音转写背后都可能伴随着…

作者头像 李华
网站建设 2026/6/10 10:26:06

JavaScript 函数调用

JavaScript 函数调用 引言 JavaScript 作为一种广泛使用的编程语言,其核心特性之一就是函数。函数是组织代码、提高代码复用性和模块化的重要手段。在 JavaScript 中,函数的调用方式多样,且理解函数调用的机制对于编写高效、可维护的代码至关重要。本文将深入探讨 JavaScr…

作者头像 李华
网站建设 2026/6/10 0:57:52

Kotlin 使用命令行编译

Kotlin 使用命令行编译 引言 Kotlin 是一种现代化的编程语言,它旨在提高开发效率,同时保持 Java 语言的兼容性。在开发过程中,使用命令行编译 Kotlin 代码是一种常见且高效的方式。本文将详细介绍如何在命令行中编译 Kotlin 代码,包括必要的准备工作、编译命令的使用以及…

作者头像 李华
网站建设 2026/6/10 18:16:05

日志分级输出:DEBUG/INFO/WARNING/ERROR级别控制

日志分级输出:DEBUG/INFO/WARNING/ERROR级别控制 在构建像 Fun-ASR 这样的复杂语音识别系统时,开发者很快就会面临一个现实问题:当系统模块越来越多、运行路径越来越深,如何快速判断“它到底有没有正常工作”? 尤其是…

作者头像 李华
网站建设 2026/6/10 11:40:01

声学模型与语言模型融合:Fun-ASR背后的算法逻辑解读

声学模型与语言模型融合:Fun-ASR背后的算法逻辑解读 在智能会议系统、课堂记录工具和远程协作平台日益普及的今天,用户不再满足于“能听清”的语音识别,而是期待系统能够真正“听懂”——把口语中的数字、时间、专有名词准确还原成规范文本。…

作者头像 李华
网站建设 2026/6/10 11:37:41

开源许可证说明:Apache 2.0允许商业使用

开源许可证说明:Apache 2.0允许商业使用 在语音识别技术加速落地的今天,越来越多企业希望将ASR(自动语音识别)能力嵌入客服系统、会议记录工具或本地化办公平台。然而,商用闭源方案成本高昂,而多数开源模型…

作者头像 李华