版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章机器学习基础课程目录01机器学习概述•机器学习的定义与核心应用场景
•从诞生到深度学习的发展简史
•监督、无监督与强化学习的本质区别02Python编程基础•Anaconda环境搭建与PyCharm配置
•NumPy科学计算与Pandas数据清洗
•Matplotlib绘图与Scikit-learn库初探03核心数学知识回顾•微积分:梯度下降与链式法则详解
•线性代数:矩阵运算与向量空间基础
•概率论:贝叶斯公式与常见分布模型从理论基础到实战工具,全方位构建机器学习的知识体系与工程能力01.机器学习概述:什么是机器学习?机器学习是一门融合概率论、统计学、计算机科学的交叉学科,核心目标是让计算机系统通过数据而非显式编程来自我演进。它模仿人类的学习行为,从海量数据中挖掘规律、优化模型,从而实现对未知场景的预测与决策,是实现人工智能的核心技术基石。核心一:纯粹的数据驱动范式摒弃传统人工制定规则的方式,完全依靠数据样本与经验反馈,让算法自动发现特征、优化参数,实现从数据输入到智能输出的自主迭代。核心二:隐性规则的自动构建无需为每个任务编写具体的逻辑代码,模型通过自主学习数据中的复杂模式,构建出适用于预测、分类或决策的隐性模型,解决传统编程难以覆盖的复杂问题。技术演进的四个关键阶段01符号学习(50s)基于逻辑推理与人工规则,AI起步期的基础探索。02统计学习(90s)引入概率论与统计学,建立现代机器学习理论框架。03深度学习(00s)深层神经网络突破算力瓶颈,引爆感知智能革命。04大模型时代(18+)大规模预训练模型涌现,迈向通用人工智能新纪元。机器学习的三种学习方式01监督学习核心机制:基于带标签的训练数据,如同老师指导学生学习。
典型应用:通过输入与输出的映射关系,解决分类(如疾病诊断)和回归(如股价预测)问题。02无监督学习核心机制:数据无标签,模型自主探索数据的内在结构与模式。
典型应用:发现数据的自然分组(如用户画像聚类)、简化数据维度(如特征降维)等。03强化学习核心机制:智能体通过与环境交互,以“奖励/惩罚”机制优化决策策略。
典型应用:通过试错学习最优路径,广泛用于游戏AI(如AlphaGo)、机器人自主控制等领域。关键术语:数据集划分与过拟合01数据集划分训练集(TrainingSet)·占比60%~80%用于模型的核心训练,学习输入与输出的映射关系,是模型获取知识的基础数据来源,决定了模型的基本能力。验证集(ValidationSet)·占比10%~20%用于调整模型超参数(如学习率、网络深度),评估模型在未知数据上的初步表现,是防止过拟合的重要环节。测试集(TestingSet)·占比10%~20%完全独立于训练流程,用于最终评估模型的泛化能力,其结果反映了模型在真实应用场景中的预期表现。02过拟合与解决方案什么是过拟合?
模型过度学习了训练数据中的细节和噪声,导致在训练集上表现近乎完美,但在未见过的新数据(测试集)上表现急剧下降,丧失了对新样本的适应能力。增加训练数据
扩充样本多样性,引入更多场景数据,让模型学习更通用的特征规律而非局部噪声。简化模型结构
减少网络层数、参数数量或降低模型复杂度,从根本上限制模型的“记忆能力”。引入正则化
在损失函数中加入惩罚项(如L1/L2),限制模型参数的过大值,避免模型过于复杂。验证集监控调参
利用验证集监控模型表现,配合早停策略,在模型开始过拟合前及时停止训练。02.Python机器学习编程基础Anaconda发行版:数据科学的环境基石预装NumPy、Pandas、Matplotlib等核心库,提供便捷的环境管理与包管理功能,有效解决版本依赖冲突,是机器学习入门与开发的首选环境。PyCharm:专业开发IDE功能强大的集成开发环境,支持智能代码补全、断点调试、单元测试与版本控制。专为专业开发者设计,是构建大型、工程化机器学习项目的最佳选择。💡适用场景:复杂项目开发、代码调试与重构JupyterNotebook:交互式探索支持代码、富文本、数学公式与可视化图表的实时混排。轻量化且交互性强,是进行数据探索、算法原型验证、模型实验与结果分享的理想工具。🚀适用场景:数据分析、模型实验与教学演示NumPy基础:数值计算的核心01核心数据结构:ndarrayNumPy的基础是n维数组对象(ndarray),它是固定大小、元素类型均一的容器。与Python原生列表不同,ndarray支持向量化运算,可对整个数组进行批量操作,避免了Python级别的循环,计算效率提升百倍以上,是数值计算的性能引擎。02智能广播机制(Broadcasting)一种让不同形状数组直接运算的核心机制。它会自动“扩展”较小数组的维度(无需复制数据),使其与较大数组维度兼容。这不仅简化了代码的编写,消除了手动扩展数组的繁琐,还通过底层优化保证了运算的高效性。为何选择NumPy?极致性能:基于C语言实现,运算速度远超原生Python生态基石:是Pandas、Matplotlib等库的底层依赖简洁表达:以数学公式般的语法实现复杂数值操作pandas基础:数据分析的利器图示:DataFrame多维数据结构
清晰展示了行索引与列索引的层级关系01核心数据结构Series:一维带标签的数组,可存储整数、字符串、浮点数等任意数据类型,是构建DataFrame的基础单元。DataFrame:二维表格型数据结构,拥有行索引(Index)和列索引(Columns),类似于电子表格或SQL表。02高效数据选取与筛选.iloc[]:基于“整数位置”的索引,通过行号和列号进行数据定位,如.iloc[0:5,1]。.loc[]:基于“标签”的索引,支持行列名及布尔条件筛选,如df.loc[df['A']>20,['B','C']]。Matplotlib基础:数据可视化Matplotlib是Python生态中最基础且功能强大的二维绘图库,广泛应用于数据分析、科学计算与学术可视化领域。它能将抽象的数字转化为直观的图表,帮助我们快速洞察数据规律、验证模型假设并高效呈现分析结果。趋势洞察:通用绘图函数使用plt.plot()绘制,完美展示数据随时间或连续变量的动态变化趋势,是时间序列分析与趋势预测的首选图表类型。关系探索:散点图利用plt.scatter()呈现两个变量间的相关性,直观展示数据点的分布密度与聚集特征,常用于特征关联分析。多元图表支持除基础图表外,还支持柱状图、直方图、饼图等,覆盖各类统计与对比分析需求。精细化配置支持自定义标题、坐标轴标签、图例说明及颜色样式,让图表兼具专业性与美观度。灵活展示与导出plt.show()即时渲染,支持导出为PNG、SVG等高清格式,无缝嵌入报告与文档。全场景适配从数据探索、模型评估到学术论文配图,是Python数据科学领域的标准可视化工具。scikit-learn简介:机器学习算法库scikit-learn是基于Python的开源机器学习库,构建于NumPy和SciPy之上。它提供了高效、一致且易用的API,覆盖了从数据预处理、模型构建到评估部署的全流程,是数据科学领域最受欢迎的算法工具库之一。分类算法涵盖SVM、决策树、随机森林等,高效解决图像识别、垃圾邮件过滤等离散标签预测问题。回归算法提供线性回归、SVR等模型,精准预测房价、销量等连续数值型目标,挖掘变量间的趋势关系。聚类算法通过K-Means、DBSCAN等无监督算法,自动发现数据内在结构,实现客户分群与异常检测。降维与预处理利用PCA等技术简化高维数据,去除噪音与冗余特征,显著提升模型训练效率与可视化效果。模型选择与评估提供交叉验证、网格搜索及丰富的评估指标,科学验证模型的泛化能力,辅助算法参数调优。特征提取与转换支持文本向量化、特征缩放与自定义变换,将原始数据转化为算法可理解的输入,挖掘数据价值。03.相关数学知识回顾:高等数学01导数(Derivative)定义:函数在某一点的瞬时变化率,其几何意义是函数图像在该点处切线的斜率,刻画了函数在局部的变化趋势。机器学习核心应用梯度下降:利用导数判断函数增减性,沿负导数方向迭代以寻找损失函数的极小值点。反向传播:通过链式法则计算损失函数对模型参数的偏导数,为权重更新提供数学依据。02梯度(Gradient)定义:由多元函数对各个自变量的偏导数构成的向量。它不仅描述了函数变化的速率,更指明了函数值变化最快的方向。机器学习核心应用方向指引:梯度方向是函数值上升最快的方向,其相反方向(负梯度)则是下降最快的方向。参数优化:在神经网络训练中,沿负梯度方向更新参数,可高效降低预测误差,实现模型收敛。相关数学知识回顾:线性代数01矩阵运算基础加法与数乘
矩阵间对应元素直接相加,或整体与常数相乘。运算满足交换律与结合律,是构建复杂矩阵操作的基础。矩阵乘法规则
遵循“前行乘后列”原则,即第一个矩阵的行与第二个矩阵的列对应元素相乘求和。结果矩阵的维度由原矩阵行列数决定。矩阵转置操作
将矩阵的行与列位置互换(记为Aᵀ),转置后行变为列,常用于对称矩阵分析及协方差矩阵的构建。02特征值与特征向量核心定义解析
对于n阶方阵A,若存在数λ和非零向量x满足Ax=λx,则λ为特征值,x为特征向量。它描述了矩阵对向量的“缩放变换”效应。应用:PCA主成分分析
求解数据协方差矩阵的特征值与特征向量,筛选方差最大的主成分,实现高维数据的降维与信息提取。几何意义:线性变换的不变轴
特征向量代表线性变换中方向保持不变的向量,仅发生长度缩放,是理解矩阵几何本质的关键。相关数学知识回顾:概率论01条件概率(ConditionalProbability)定义:事件A在事件B已经发生的条件下发生的概率,描述了事件之间的依赖关系。公式:P(A|B)=P(A∩B)/P(B)02贝叶斯公式(Bayes'Theorem)核心逻辑:一种“执果索因”的概率思维,通过观察到的结果(证据)来修正对原因(假设)发生可能性的判断。公式本质:后验概率=(似然度×先验概率)/边缘似然在机器学习中的经典应用朴素贝叶斯分类基于特征独立性假设的简单高效分类器,是垃圾邮件过滤、文档分类等领域的经典算法。概率图模型用图结构直观表达变量间的概率依赖关系,广泛应用于复杂系统的不确定性推理与预测。相关数学知识回顾:优化算法图示:从随机初始值出发,沿着负梯度方向逐步迭代,最终逼近损失函数的最小值点。梯度下降法(GradientDescent)核心思想是从随机初始点开始,沿着目标函数值下降最快的方向(负梯度方向)迭代更新,直至收敛到最小值。它是训练各类机器学习模型的基石,负责最小化损失函数以找到最优参数。学习率(LearningRate)决定每一步迭代的步长。设置过大可能导致参数在最小值附近震荡甚至无法收敛;过小则会大幅降低收敛速度,增加训练时间。合理的学习率调度(如衰减、自适应)是模型训练成功的关键。总结:机器学习基础回顾01核心概念定义:让计算机从数据中学习规律,实现对未知场景的自主预测与决策。三大范式:监督学习(预测)、无监督学习(发现)、强化学习(决策)。关键术语:训练集/测试集划分、过拟合与欠拟合的权衡。02核心工具栈首选语言:Python(语法简洁,拥有最完善的AI生态库)。数据与计算:NumPy(数值基础)、Pandas(数据清洗与分析)。算法与可视化:Scikit-learn(经典算法库)、Matplotlib(绘图呈现)。03底层数学支撑高等数学:导数与梯度(理解模型优化方向)、链式法则(反向传播基础)。线性代数:矩阵运算(处理大规模数据)、特征值分解。概率与优化:贝叶斯公式(概率推断)、梯度下降(求解最优解)。💡总结:掌握这些基础理论与工具,是深入探索深度学习与AI应用的必经之路。谢谢!第2章k近邻算法(kNN)课程目录01kNN算法原理•基本思想:基于“物以类聚”的直观假设,属于惰性学习模型•核心三要素:距离度量方式、k值的选取、以及分类决策规则02kNN算法实现•流程解析:掌握从数据预处理到模型评估的机器学习全流程•实战演练:从零手写kNN分类器,并对比Sklearn库的高效实现03总结与拓展•深度总结:剖析kNN算法在不同场景下的优缺点与适用边界•知识延伸:探索kNN在回归任务中的应用原理与参数调整技巧01.kNN算法原理:基本思想图示:通过邻近样本的类别投票判定未知样本核心思想:物以类聚,人以群分kNN是一种基于实例的监督学习算法,其逻辑非常直观:一个样本的类别由其周围k个最近邻样本的类别决定。算法通过计算距离找到最近的邻居,以“少数服从多数”的投票机制确定样本归属。应用案例:电影类型智能判别已知样本特征:
•爱情片:低打斗,高亲吻镜头
•动作片:高打斗,低亲吻镜头待分类电影:
•《初恋这件小事》(18,90)
•判定结果:爱情片(近邻投票)算法步骤:计算未知样本与所有已知样本的“距离”→选取最近的k个邻居→统计邻居类别并投票。序号电影名称打斗镜头次数亲吻镜头次数电影类型电影1泰坦尼克号3104爱情片电影2魂断蓝桥2100爱情片电影3花木兰995动作片电影4战狼2982动作片电影5初恋这件小事1890未知?核心三要素之一:距离度量距离度量用于衡量样本之间的相似度,是kNN算法的基础,它直接决定了如何定义样本间的“远近”关系,对算法效果至关重要。01欧氏距离(EuclideanDistance)
两点间的直线距离,是最直观的几何距离。适用于特征尺度统一、数据分布近似圆形的场景。公式:$d=\sqrt{\sum_{i=1}^{n}(p_i-q_i)^2}$02曼哈顿距离(ManhattanDistance)
各坐标轴上距离的绝对总和,又称“街区距离”。适用于特征尺度不一致、路径受网格限制(如城市道路)或离散数据的场景。公式:$d=\sum_{i=1}^{n}|p_i-q_i|$03余弦相似度(CosineSimilarity)
衡量两个向量夹角的余弦值,关注方向而非绝对长度。常用于文本分类、推荐系统及高维稀疏数据的相似度计算。核心三要素之二:k值选择k值过小(如k=1):模型易“过拟合”优点是能捕捉局部细微特征,近似误差小;但对噪声数据极度敏感,估计误差大,容易导致模型过于复杂,泛化能力下降。k值过大(如k=20):模型易“欠拟合”优点是抗干扰能力强,估计误差小;但模型会过度平滑,忽略局部细节,近似误差增大,无法学习到数据的复杂模式。策略:交叉验证+经验法则通过交叉验证在验证集上测试不同k值的性能来确定最优解;遵循经验法则,优先选择奇数k值(避免二分类平局),如3、5、7等。核心三要素之三:分类决策规则01多数投票法(MajorityVoting)统计k个邻居中各类别的出现频次,以得票最高的类别作为预测结果。这一规则在数学上等价于最小化0-1损失函数,能有效降低误分类率,是kNN算法最直观、最核心的决策准则。02电影分类实战(k=3)假设未知电影的3个近邻为:2部爱情片(《泰坦尼克号》《魂断蓝桥》)、1部动作片(《花木兰》)。
投票结果:爱情片2票>动作片1票。
最终判定:该未知电影被归类为爱情片。决策本质:“少数服从多数”kNN算法不依赖复杂的数学模型训练,而是完全基于“近邻”的类别信息进行判断。这种“懒惰学习”的特性使其简单易懂,无需预先训练,能快速适应新的分类场景,是监督学习中最经典的实例之一。02.kNN算法实现:机器学习任务一般流程01获取数据从本地文件、数据库或API接口等多源渠道收集原始数据,这是构建模型的基础,直接决定了后续训练的素材质量与覆盖范围。02数据预处理对数据进行清洗去噪、缺失值填补与异常值处理,通过标准化/归一化统一量纲,并利用特征工程提取有效特征,提升数据可用性。03模型选择与训练选定kNN作为核心算法,将数据集划分为训练集与测试集,利用训练数据让模型“记住”样本的特征分布与类别关联,为预测做准备。04模型评估:验证性能表现使用预留的测试集检验模型,通过准确率、精确率、召回率等指标客观评估其泛化能力。若效果不佳,需返回调整特征或算法参数。05模型部署:落地实际应用将模型封装为API或嵌入式模块,部署至生产环境。对接业务系统,实现对未知数据的实时或批量预测,释放算法的业务价值。核心特性:kNN属于典型的“惰性学习(LazyLearning)”算法,无显式训练过程,仅存储数据,直到预测时才计算距离并投票。手动实现kNN分类器01算法核心步骤(伪代码逻辑)01距离度量:计算未知样本与所有训练样本的欧氏距离,量化样本间的相似度,这是算法的基础。02排序筛选:将所有样本按计算出的距离从小到大排序,筛选出距离最近的前k个样本作为“近邻”。03类别统计:统计这k个近邻中各类别的出现频次,频次越高代表该类别对预测结果的影响越大。04投票预测:遵循“少数服从多数”原则,返回出现次数最多的类别,作为未知样本的最终预测结果。02Python工程化实现要点NumPy向量化加速:利用numpy的广播机制替代Python循环,高效计算距离矩阵,避免循环带来的性能损耗,提升处理大数据集的效率。Counter高效投票:借助collections.Counter工具,对k个近邻的类别进行一键计数,并快速提取频次最高的类别,简化代码逻辑。类封装设计:定义KNN类,通过fit()方法存储训练数据,predict()方法执行预测逻辑,符合机器学习库的标准API设计规范。使用sklearn实现kNN分类海伦约会数据集部分数据以经典的“海伦约会数据集”为例,基于飞行里程、游戏时间、冰淇淋消费量三大特征,利用scikit-learn封装的高效API,仅需几行代码即可完成从数据预处理到模型评估的全流程,极大简化了机器学习的落地应用。01数据加载与划分读取文本数据集,按比例(如7:3)随机切分训练集与测试集,保证样本分布均衡。02特征标准化处理通过StandardScaler消除量纲影响,将特征缩放到均值为0、方差为1的标准正态分布。03模型构建与训练初始化KNeighborsClassifier(k=3),调用fit()方法拟合训练数据,快速建立分类模型。04模型预测与推理利用训练好的模型对测试集数据进行分类预测,通过predict()方法输出分类标签。05性能指标评估计算分类准确率(accuracy_score),生成混淆矩阵,直观验证模型对三类吸引力的区分能力。06超参数调优优化通过交叉验证调整k值大小、距离度量方式(如曼哈顿距离),进一步提升模型精度。关键步骤:特征缩放kNN是基于距离度量的算法,特征间的尺度差异会直接影响距离计算的结果。若某特征数值量级过大,将主导整个距离计算,导致其他特征失去判别价值。01为何必须进行缩放?以“海伦约会数据集”为例:飞行里程数(数千量级)远大于游戏时间(0-100)和冰淇淋消费(0-9)。若不处理,距离计算将完全由里程数主导,模型将无法学习到其他特征的模式。02标准化(Standardization)将数据转化为均值为0、标准差为1的分布。公式:x_scaled=(x-μ)/σ。该方法能有效消除量纲影响,使所有特征处于同一尺度,保证了距离计算的公平性。优化前准确率78.5%特征尺度失衡,判别力弱优化后准确率95.0%尺度统一,特征权重均衡03.总结:kNN算法的优缺点核心优势简单直观易上手原理通俗易懂,模型实现门槛极低,无需复杂的数学推导即可快速应用到实际场景中。无显式训练过程典型的“懒惰学习”算法,训练阶段仅需存储数据,无需迭代优化参数,节省训练时间。天然支持多分类无需修改模型结构,通过多数投票机制即可直接处理多类别预测任务,兼容性强。适配非线性边界不假设数据的分布特征,能灵活捕捉特征空间中的复杂非线性关系,边界拟合更自然。主要局限预测计算成本高预测时需计算与所有训练样本的距离,数据量越大,预测延迟越高,效率越低。对数据质量敏感易受噪声、异常值及无关特征干扰,必须进行严格的数据清洗和特征预处理。受k值选择影响大k值过小易导致过拟合,过大则易欠拟合,需通过交叉验证反复调试才能确定。存在维度灾难在高维空间中,样本间的距离趋于一致,导致算法失去区分能力,性能显著下降。拓展:kNN回归01/回归核心原理任务:预测连续数值
不同于分类任务输出离散标签,回归致力于对连续型变量(如价格、温度、销量)进行数值预测。方法:均值聚合策略
找到k个最近邻样本后,不再进行“投票”,而是计算这k个样本目标值的算术平均值(或距离加权平均值)作为预测结果。02/案例与评估指标经典场景:房价估值
输入房屋面积、卧室数量、地理位置等特征,利用kNN回归模型,基于相似房屋的成交价来预测目标房屋的市场价格。均方误差(MSE)
预测值与真实值差的平方均值,数值越小代表模型预测越精准。R²决定系数
衡量模型对数据变异性的解释能力,取值范围[0,1],越接近1拟合效果越好。💡核心洞察:kNN分类是“少数服从多数的投票”,而kNN回归是“求平均值的计算”,二者的核心逻辑均建立在“近朱者赤,近墨者黑”的相似性假设之上。谢谢!第3章决策树本章目录01决策树基础从基础定义出发,解析决策树的树状结构组成,探讨其解决分类与回归问题的核心逻辑与基本要素。02核心算法体系深入剖析ID3、C4.5与CART三大经典构建算法,对比信息熵、信息增益率与基尼系数的原理及应用场景。03模型优化与剪枝详解预剪枝与后剪枝的核心策略,掌握通过限制深度、叶节点数等手段防止模型过拟合的关键方法。04实践应用与总结客观分析决策树的优缺点,结合Sklearn库进行实战演练,完成从理论到代码实现的完整落地与案例分析。会读心术的决策树——《别对我说谎》【例3-1】《别对我说谎》“20个问题”破案
受害人因特殊原因无法指认绑匪,行为学专家卡尔·莱特曼博士通过“20个问题”询问并观察微表情获取答案,最终锁定嫌疑人。博士提出的问题(前3问):
1.Q1:抓走你的人是个禽兽?(微表情答案:是)
2.Q2:是你认识的人吗?(微表情答案:是)
3.Q3:是老师吗?(微表情答案:不是)博士提出的问题(后3问):
4.Q4:与你家有关的人?(是)5.Q5:与你家有工作关系的人?(是)
6.Q6:你的家庭心理医生?(是)决策树的定义与组成定义:决策树是一种监督学习模型,通过递归地将数据集划分为子集来构建树状结构。它模拟人类的决策逻辑,将复杂的判断过程拆解为一系列基于特征的简单测试,最终在叶节点输出明确的类别或回归值。01根节点树的起点,包含全部训练样本,是整个决策逻辑的初始入口,决定了数据的第一次划分。02内部节点又称决策节点,代表对某个特征的测试条件。它将数据按特征属性进一步细分到不同分支。03叶节点树的终点,输出最终的决策结果。在分类任务中代表类别标签,在回归任务中代表预测数值。04分支路径连接父节点与子节点的路径,代表特征测试后的不同结果走向,体现了数据的分流逻辑。典型的决策树层级结构,清晰展示了从根节点到内部节点,再到叶节点的完整决策路径与数据分流过程。决策树的核心问题核心挑战:在构建决策树的每一步,如何选择最优特征作为节点划分依据?划分目标:让划分后的子节点样本尽可能“纯净”(即同质性最高),以此降低后续分类的不确定性。01信息增益(ID3)基于信息熵的减少量来衡量特征价值。它直观反映了特征带来的不确定性降低程度,但倾向于选择取值较多的特征,适合处理标称型数据。02信息增益比(C4.5)引入“分裂信息”对信息增益进行归一化修正。有效解决了信息增益偏好取值较多特征的问题,提升了算法在不同特征类型下的适应性。03基尼系数(CART)衡量随机抽取两个样本类别不同的概率。计算效率更高,且天然支持对连续型特征的处理,是构建分类回归树(CART)的核心指标。💡关键点:选择指标时需权衡数据特性与计算成本,没有绝对最优,只有场景适配。ID3算法:基于信息增益熵(Entropy):衡量样本纯度的指标用于度量样本集合的“混乱程度”,熵值越小代表集合纯度越高。公式为H(D)=-∑pₖlog₂pₖ。例如:全正例熵为0,正反各半熵为1。信息增益:划分带来的纯度提升表示特征A对数据集D划分后熵的减少量,即Gain(D,A)=H(D)-∑(|Dᵥ|/|D|)H(Dᵥ)。增益越大,说明该特征对数据的区分能力越强。ID3算法核心准则在决策树的每个非叶节点上,遍历所有未使用的特征,计算其对当前数据集的信息增益,选择信息增益最大的特征作为当前节点的划分依据,递归生成决策树。特征A对训练数据集D的信息增益g(D,A),定义为集合D的信息熵H(D)与特征A给定条件下D的条件熵H(D|A)之差H(D)为数据集D的信息熵对于数据集D,数据集D包含多个样本。每个样本属于一个或多个类别,K是目标变量的类别,pk是第k类样本在D中所占的比例。H(D|A)为特征A给定条件下D的条件熵。在决策树学习中,这是一个关键概念,用于评估特征A对数据集D分类效果的提升程度。具体来说,H(D|A)衡量了在已知特征A的条件下,数据集D中样本分类的不确定性。C4.5算法:改进信息增益01.ID3的天然缺陷信息增益存在“偏好陷阱”,天然倾向于选择取值类别更多的特征。典型反例:若以“用户ID”为特征,每个取值仅对应一个样本,划分后子集熵为0,信息增益最大,但完全无泛化能力,对预测毫无意义。02.改进方案:信息增益比Gain_ratio(D,A)=Gain(D,A)/IV(A)IV(A)为特征固有值,作为惩罚因子通过引入特征固有值(IV)作为分母,对取值过多的特征进行自动降权,从数学上平衡了信息增益的偏置问题,使特征选择更公平。03.C4.5决策核心不再单纯追求信息增益最大化,而是选择信息增益比最大的特征作为当前节点的划分依据。这一改进解决了ID3的内在偏置,大幅提升了决策树的泛化能力和鲁棒性,是机器学习中最经典的决策树算法之一。总结:C4.5通过“归一化”的信息增益比修正了ID3的特征选择偏差,不仅解决了过拟合风险,更为后续的决策树优化(如剪枝、连续值处理)奠定了坚实基础。CART算法:基于基尼系数基尼系数:衡量样本纯度的标尺公式:$Gini(D)=1-\sum_{k=1}^{K}p_k^2$,其中$p_k$是类别$k$在样本集$D$中的占比。意义:它代表从数据集中随机抽取两个样本,其类别不同的概率。数值越接近0,说明样本集的纯度越高;若为0,则所有样本属于同一类别。CART算法的核心特性与优势●严格二叉树:每次划分仅将数据集切分为两个子集,结构更简单,计算效率更高。●双任务适配:分类树使用基尼系数最小化作为准则,回归树则采用均方误差(MSE)最小化。●普适性强:不仅适用于离散特征,也能高效处理连续特征,是生成决策树的经典算法。三大算法对比ID3基础模型01划分依据:基于信息增益,追求分裂后子集的高纯度,但存在内在的特征偏向性。02结构形态:生成多叉树结构,一个父节点可直接分裂为多个子节点。03局限性:偏向取值较多的特征,且不支持连续值与缺失值的直接处理。04适用场景:仅适用于小规模、特征离散的分类任务。C4.5优化版本01划分依据:引入信息增益比,通过分裂信息进行归一化,有效修正了多值特征的偏向问题。02结构形态:延续多叉树结构,保持了ID3在特征分裂上的直观性。03改进点:支持连续特征的离散化处理,且设计了缺失值的补充处理机制。04适用场景:适用于特征类型丰富、对分类准确性要求较高的场景。CART工业主流01划分依据:分类任务使用基尼系数,回归任务使用均方误差,计算效率更优。02结构形态:严格的二叉树结构,每个节点仅分为左右两个子节点,易于并行处理。03核心优势:无特征偏向,同时支持分类与回归,是随机森林等集成算法的核心基模型。04适用场景:工业界最广泛应用的决策树算法,兼顾效率与效果。决策树的优化:剪枝过度生长的决策树对样本进行了极致划分01.为何需要剪枝?——直面“过拟合”困境什么是过拟合?当决策树无限制生长时,会“死记硬背”训练数据的每一个细节,包括其中的噪声和异常值。它看似在训练集上表现完美,实则失去了对未知数据的泛化能力,就像一个只会背诵答案却不懂原理的学生。典型表现特征训练集准确率极高(接近100%),但在测试集或新数据上的准确率断崖式下跌,模型严重“偏科”。背后核心成因模型结构过于复杂,分支过多;学习了训练数据的随机噪声和个体特例,而非数据背后的普遍规律。剪枝策略:预剪枝与后剪枝01预剪枝:生长途中的“主动刹车”在决策树构建过程中,通过设置阈值(如树深、样本数)提前终止分支生长,从源头避免模型过于复杂。🎛️实施手段限制树的最大深度、设定节点最小样本数、设置信息增益阈值。✅核心优势训练速度极快,计算成本低,能有效降低过拟合风险,防止树过度生长。⚠️潜在局限容易因“一刀切”导致欠拟合,可能过早剪掉对模型有潜在价值的分支。02后剪枝:成材后的“精细雕琢”先让决策树无限制生长至“完美拟合”,再自底向上评估并剪去对泛化能力无贡献的分支。🛠️经典算法REP(错误率降低剪枝)、CCP(成本复杂度剪枝)、EBP(误差减少剪枝)。✨模型表现泛化能力通常优于预剪枝,欠拟合风险极小,对复杂数据的适应性更强。⚡资源消耗计算成本高昂,训练时间长,需要先生成完整的复杂树,再进行剪枝优化。决策树的优缺点01核心优势直观易懂,解释性强
树状结构可视化程度高,逻辑清晰,非专业人士也能轻松理解决策路径。无需复杂的数据预处理
对数据尺度不敏感,无需归一化或标准化,支持直接输入原始数据。灵活处理混合型数据
无缝兼容分类特征(如性别、职业)与数值特征(如年龄、收入)。训练高效,成本可控
采用贪心策略构建模型,训练速度快,对计算资源的消耗相对较低。02潜在局限容易产生过拟合现象
模型对训练数据过度拟合,泛化能力较弱,通常需要通过剪枝来优化。模型结构高度不稳定
训练数据的微小变动或噪声,可能导致生成完全不同的树结构。存在特征偏向性问题
部分算法(如ID3)倾向于选择取值较多的特征,影响模型的公平性。仅保证局部最优解
基于贪心算法构建,每次选择当前最优特征,无法确保全局最优结构。实践:sklearn实现决策树分类01核心实现步骤1.环境配置与数据加载导入DecisionTreeClassifier,加载数据集并使用train_test_split按8:2比例划分训练集与测试集,确保数据分布独立。2.模型定义与训练拟合初始化模型并配置criterion与max_depth等超参数,调用fit(X_train,y_train)方法,让模型学习特征与标签的映射规律。3.性能评估与参数调优通过score()计算测试集准确率,利用网格搜索调整max_depth等参数,平衡模型的偏差与方差,避免过拟合。02关键超参数解析criterion划分准则可选'gini'(基尼不纯度)或'entropy'(信息熵)。基尼计算效率更高,适合大规模数据;熵对纯度变化更敏感,适用于复杂分布。max_depth树的深度限制树的最大层级,是最有效的预剪枝手段。深度过大易导致过拟合,深度过小则欠拟合,需通过交叉验证确定最优值。min_samples_split内部节点分裂所需的最小样本数。数值越大,树的结构越简单,能有效避免模型学习到数据中的随机噪声,提升鲁棒性。min_samples_leaf叶节点必须包含的最小样本数。防止生成只有极少量样本的孤立节点,避免模型对局部数据过度敏感,提升泛化能力。实践:决策树可视化01/代码实现:Graphviz核心流程Step1:导出DOT结构数据fromsklearn.treeimportexport_graphviz
dot_data=export_graphviz(model,out_file=None,
filled=True,rounded=True,max_depth=3)Step2:渲染并生成可视化图importgraphviz
graph=graphviz.Source(dot_data)
graph.render("iris_tree")#保存为PDF
graph.view()#直接弹出预览窗口02/为什么要做可视化?直观理解决策逻辑清晰呈现特征的重要性、分支的划分阈值以及样本在各节点的分布情况,不再是“黑盒”模型。辅助模型诊断与调优通过观察树的深度和枝叶繁茂程度,快速判断模型是否过拟合或欠拟合,为剪枝提供依据。高效的沟通与汇报将复杂的算法逻辑转化为直观的树状图,让非技术背景的业务人员也能轻松理解模型的决策过程。本章总结与思考01核心概念回顾树状层级结构:以根节点为起点发起决策,经内部节点的特征判断层层分支,最终由叶节点输出分类结果,构成具有强可解释性的模型骨架。经典生成算法:ID3以信息增益为划分准则;C4.5引入增益比修正特征偏向;CART基于基尼系数实现二叉划分,不同准则适配各异的数据分布。过拟合治理剪枝:预剪枝通过限制深度或样本量提前终止生长,后剪枝从完整树自底向上裁剪冗余分支,二者是提升模型泛化能力的关键手段。02深度思考与探索偏差溯源:为何信息增益会天然偏好取值较多的特征?信息增益比通过何种数学修正,实现了对这一固有偏差的有效抑制?策略权衡:预剪枝的训练效率与欠拟合风险如何平衡?后剪枝的效果优势如何应对高计算成本?结合金融风控或医疗诊断场景,谈谈你的选型逻辑。模型边界:对比逻辑回归、随机森林或SVM,从可解释性、训练效率及非线性拟合能力三个维度,分析决策树的独特优势与应用局限。“思考是连接理论与实践的桥梁,尝试结合实际案例寻找答案,能让你对模型原理有更深刻的理解。”谢谢!朴素贝叶斯法与EM算法现代机器学习:方法与实践·第4章课程目录朴素贝叶斯法与EM算法——从理论基础到Python实战的完整学习路径。01贝叶斯决策论基础02朴素贝叶斯法原理与参数估计03Python实战:文档分类与情感分析04EM算法:期望最大化方法贝叶斯决策论基础从条件风险到贝叶斯最优分类器,建立概率决策的完整框架贝叶斯决策论核心框架贝叶斯决策论在信息不完全时,基于先验概率与新观测数据通过贝叶斯定理更新后验概率,选择使条件风险最小的类别作为决策。R(cᵢ|x)条件风险衡量将样本x分类为cᵢ的期望损失,是所有误分类损失按后验概率的加权和核心:最小化每个样本的期望损失计算:Σⱼλᵢⱼ·P(cⱼ|x)R(h)总体风险条件风险关于输入分布的期望,反映分类器在整个输入空间上的综合表现本质:全局期望损失的积分度量计算:∫R(h(x)|x)·p(x)dxh*最优分类器对每个样本选择使条件风险最小的类别,实现全局最优决策策略:h*(x)=argminᵢR(cᵢ|x)特性:贝叶斯决策准则的核心1−R(h*)贝叶斯风险该设定下的最小误分类率,代表分类器性能的理论上限意义:任何分类器的性能天花板目标:实际分类器逼近该极限BAYESIANCLASSIFICATION后验概率求解与模型分类最小化误分类率时,贝叶斯最优分类器等价于选择后验概率最大的类别。后验概率通过贝叶斯定理求解,需要对联合分布建模(生成模型),而朴素贝叶斯通过特征条件独立假设大幅降低计算复杂度。010-1损失下条件风险简化为误分类概率,最优分类器选择后验概率P(Y|x)最大的类别02后验概率P(Y=c|x)=P(x|Y=c)·P(Y=c)/P(x),需要对条件概率和先验概率分别建模03生成模型关注数据生成过程并对联合分布P(x,Y)建模,朴素贝叶斯是典型代表04判别模型直接建模条件概率P(Y|x)或学习映射函数,如决策树、逻辑回归、支持向量机朴素贝叶斯法原理与参数估计特征条件独立假设、极大似然估计与拉普拉斯平滑朴素贝叶斯法核心原理朴素贝叶斯法假设特征在给定类别下条件独立,将复杂的联合条件概率分解为各特征条件概率的乘积,大幅降低计算复杂度。条件独立假设给定类别标签时,一个特征是否出现不影响另一个特征的出现概率。这一"朴素"假设极大简化了模型结构。概率分解P(X|Y=ci)=P(x1|ci)·P(x2|ci)·…·P(xn|ci),联合概率变为各特征概率乘积,计算复杂度从指数级降为线性级。分类决策计算样本属于每个类别的后验概率,将样本分到概率最大的类别。采用最大后验概率(MAP)准则进行最优决策。实用性优势对数据噪声和冗余特征不敏感,特别适合文本分类、垃圾邮件识别等高维稀疏场景,训练速度快且效果稳定。ParameterEstimation参数估计:极大似然估计极大似然估计通过训练数据中的频率来估计先验概率和条件概率,方法简洁直观,但在数据稀疏时可能产生零概率问题。先验概率估计直接统计训练集中各类别ck出现的频率作为P(Y=ck)的估计值,即类别样本数除以总样本数N。P(Y=ck)离散特征条件概率统计特征xj取值ajl与类别ck共同出现的频率,除以类别ck的样本总数,用经验频率近似条件概率分布。P(X|Y)连续特征条件概率假设连续特征在给定类别下服从高斯分布,用训练数据估计均值μ和方差σ²,代入高斯密度函数计算概率。N(μ,σ²)BAYESIANESTIMATION参数估计:贝叶斯估计与拉普拉斯平滑极大似然估计在训练数据中未出现某特征取值时会产生零概率,导致后续概率乘积全部为零。贝叶斯估计通过引入平滑参数λ(通常取1,即拉普拉斯平滑),确保每个概率都大于零。ZEROPROBABILITY训练集中某特征取值未出现时,条件概率为0,后验概率乘积全部归零导致分类器失效LAPLACESMOOTHING分子加1、分母加取值数Sj,确保每个条件概率都严格大于零P=(count+1)/(N+Sj)PARAMETERλλ=1为拉普拉斯平滑,λ=0退化为极大似然估计λ越大平滑效果越强PRIORPROBABILITY分子加λ、分母加λ×类别数K,避免样本为零的极端情况先验与似然的加权融合拉普拉斯平滑前后对比(以某特征为例)场景极大似然估计拉普拉斯平滑效果特征已出现3/10=0.3004/12≈0.333差异小,平滑影响可忽略特征未出现0/10=0.0001/12≈0.083避免零概率,保留分类可能性拉普拉斯平滑在数据充足时几乎不影响结果,在数据稀疏时有效避免零概率问题CHAPTER03Python实战:文档分类与情感分析从文本预处理到模型评估,完整走通朴素贝叶斯分类流程TEXTREPRESENTATION文本预处理与特征表示文本分类的第一步是将自然语言转换为数值向量。文本经过切分、去标点、统一大小写等预处理后,可通过词集模型或词袋模型转换为特征向量,但两种方法都面临高维稀疏的"维度灾难"挑战。文本预处理流程文本分词处理编程场景英文用split()或正则表达式切分,中文需用jieba分词库将连续汉字序列切分为有意义的词语单元预处理包括统一小写、去除标点符号和非单词字符,减小特征空间并增强模型稳健性特征向量化方法对比01词集模型(SoW):忽略语法和词序,仅记录词汇是否出现(0/1),适合快速构建基线模型SET-OF-WORDS02词袋模型(BoW):在词集基础上记录词频,捕捉词汇重要性差异,是文本分类的标准特征表示BAG-OF-WORDS03维度灾难:词汇表可达数万维,导致特征空间极度稀疏,可通过TF-IDF或特征选择缓解DIMENSIONALITY例4-1:互联网在线社区的文本留言通常需要进行管理,识别并屏蔽侮辱性留言,从而不影响社区发展。请使用朴素贝叶斯实现文本留言的分类,即:侮辱性和正常言论。【例4-2】中文餐厅美食评论情感分析:本例基于手动构建的小型中文餐厅美食评论数据集开展朴素贝叶斯文本情感二分类任务。为便于教学演示与算法验证,人工编写了356条真实感强、语言自然的餐厅美食评论。数据集按用途划分为训练集(包含290条评论)和测试集(包含66条评论)。FeatureEngineering&ClassificationTF-IDF特征加权与朴素贝叶斯变体TF-IDF通过词频与逆文档频率的乘积为词汇分配权重,有效抑制常见词的干扰并突出关键词。sklearn提供三种朴素贝叶斯变体:高斯NB适用于连续特征,多项式NB适用于词频等离散计数数据,伯努利NB适用于二值化特征,文本分类首选多项式NB。TF-IDF特征加权TF·词频词在文档中出现次数÷文档总词数,衡量词在当前文档中的重要性。词频越高,该词在文档中的代表性越强。IDF·逆文档频率log(总文档数÷包含该词的文档数+1),衡量词的全局稀有程度。罕见词获得更高权重,有效降低常见词的干扰。TF-IDF·加权乘积TF×IDF,综合局部重要性与全局区分度。值越大表示该词区分力越强,是信息检索与文本分类的核心特征表示方法。三种朴素贝叶斯变体GAUSSIAN·高斯NB假设特征服从正态分布,适用于温度、身高等连续型特征。通过计算每个特征在各类别下的均值与方差进行概率估计。MULTINOMIAL·多项式NB适用于词频等离散计数数据,是文本分类场景的首选变体。基于多项分布假设,直接建模词的出现次数概率。BERNOULLI·伯努利NB适用于0/1二值特征,关注词是否出现而非出现次数。在短文本或稀疏特征场景下可能优于多项式NB,对文档长度不敏感。NaiveBayesTraining模型训练关键技术:平滑与对数似然朴素贝叶斯分类器的工程实现需要解决两个核心问题:通过拉普拉斯平滑避免零概率导致的分类失效,通过对数似然将概率乘积转换为对数求和以消除浮点数下溢出。这两项技术保证了模型在实际应用中的数值稳定性和分类准确性。LAPLACESMOOTHING拉普拉斯平滑实现01条件概率分子加1、分母加词汇表大小N,确保未出现词汇的条件概率不为零02测试时遇到训练集未出现的新词,按平滑规则赋予非零概率,避免"一票否决"整个分类LOG-LIKELIHOOD对数似然防下溢出01大量小概率值连乘会导致浮点数下溢出(underflow),计算机无法表示极小值而归零02利用对数性质ln(a×b)=ln(a)+ln(b),将概率乘积转化为对数求和,保持数值稳定性03对数函数单调递增,不改变概率大小排序,因此最终分类结果完全不受影响PIPELINE中文情感分析实战:端到端流程基于356条中文餐厅美食评论数据集,完整走通从数据加载、jieba中文分词、CountVectorizer特征向量化、MultinomialNB模型训练到性能评估的全流程,验证朴素贝叶斯法在中文文本分类任务中的有效性。中文情感分析完整流程步骤工具/方法关键操作1.数据导入pandas读取TSV文件,转换为DataFrame2.中文分词jieba连续汉字序列切分为词语单元3.特征向量化CountVectorizer词频矩阵,限制5000维特征4.模型训练MultinomialNB拉普拉斯平滑处理稀疏性5.预测评估accuracy_score测试集准确率约84.8%端到端流程清晰完整,从原始文本到分类结果仅需5步数据加载:pandas读取TSV格式数据,标签'1'为正面评论、'0'为负面评论,训练集290条/测试集66条290训练样本中文分词:jieba将连续汉字序列切分为有意义词语,如"服务态度好"→"服务/态度/好",无需词形还原服务/态度/好特征向量化:CountVectorizer构建词频矩阵,设置max_features=5000、min_df=5控制维度并过滤低频词5,000维特征模型训练与评估:创建并训练多项式朴素贝叶斯模型MultinomialNB,alpha为拉普拉斯平滑参数;并在测试集上进行预测;EM算法:期望最大化方法处理隐变量问题的迭代优化框架,从推导到收敛性证明Expectation–MaximizationEM算法的动机与核心思想当概率模型中存在隐变量时,直接对联合分布求偏导以极大化似然函数变得不可行,因为需要对隐变量的所有可能值进行积分或求和。EM算法通过交替执行E步(估计隐变量)和M步(优化参数)的方式迭代逼近极大似然估计,是处理缺失数据或隐变量问题的核心方法。01隐变量问题—模型中存在无法直接观测的变量z,边缘概率P(x|θ)需要对z积分或求和,计算通常不可行02交替优化策略—E步固定参数θ估计隐变量z的后验分布,M步固定z的分布更新参数θ使似然增大03单调递增保证—每次迭代都保证对数似然函数不减小,算法最终收敛到局部极大值或稳定点04广泛应用场景—高斯混合模型(GMM)、隐马尔可夫模型(HMM)、缺失数据处理等含隐变量的概率模型EMDerivationEM算法推导:证据下界与Jensen不等式EM算法通过引入隐变量分布Q(z),利用Jensen不等式构建对数似然函数的下界(ELBO)。当Q(z)等于隐变量后验分布P(z|x,θ)时,Jensen不等式取等号,ELBO与真实对数似然相等,达到"最紧"下界。E步的目标就是找到这个最紧的下界。引入Q(z)分布将难以直接优化的对数似然转化为关于Q(z)的期望形式,利用Jensen不等式构建下界。E[lnP(x|θ)]Jensen不等式对数函数是凹函数,ln(E(y))≥E(ln(y)),等号成立当且仅当y为常数。ConcaveBound证据下界ELBO对数似然的加权平均下界,ELBO=ΣQ(z)·ln[P(x,z|θ)/Q(z)]。ELBO最紧条件当Q(z)=P(z|x,θ)时ELBO与对数似然相等,E步通过设定Q为后验分布实现最紧锚定。Q=P(z|x,θ)OPTIMIZATIONEM算法流程与坐标上升法直觉EM算法交替执行E步与M步,可视为在Q-θ联合空间中的坐标上升法,每步保证ELBO不减,最终收敛到局部极大值。01E步(Expectation)固定当前θ,计算Q(z)=P(z|x,θ),使证据下界与对数似然相等(最紧锚定)02M步(Maximization)固定Q(z),最大化ELBO以更新θ,相当于在参数方向上进行一次上升03坐标上升直觉在Q-θ联合空间中交替沿两个坐标轴方向优化,逐步逼近局部极大值点04收敛性保证对数似然单调递增且有上界,必定收敛;但不能保证全局最优,需合理初始化参数EM算法流程:输入:观察数据x={x(1),x(2),···x(m)},联合分布P(x,z|θ),条件分布P(z|x,θ),最大迭代次数T。随机初始化模型参数θt的初始值θ0,迭代执行以下步骤直至收敛:E步:以当前参数θt,根据公式(4.31)计算每个样本对用的隐变量后验分布。M步:使用E步获得的隐变量后验分布,构建并极大化对数似然的下界,根据公式(4.32)得到θt+1.重复E步、M步,直到θ收敛输出:模型参数θ。CHAPTERSUMMARY本章知识体系总结本章构建了从贝叶斯决策论到朴素贝叶斯法再到EM算法的完整概率学习框架,三者层层递进、互为补充。贝叶斯决策论条件风险最小化是分类决策的核心准则,贝叶斯最优分类器代表理论性能上限后验概率通过贝叶斯定理求解,生成模型与判别模型是两种根本不同的建模范式条件风险最小化朴素贝叶斯法特征条件独立假设将联合概率分解为各特征概率乘积,大幅降低计算复杂度拉普拉斯平滑解决零概率问题,对数似然防止浮点数下溢出,是工程实现两大关键技术条件独立假设EM算法E步估计隐变量后验分布、M步最大化证据下界,交替迭代逼近极大似然估计坐标上升法提供几何直觉,收敛性有保证但仅为局部最优,初始化策略至关重要E步·M步迭代小结课后行动:用Python实现朴素贝叶斯分类器,跑通文档分类与情感分析完整流程线性模型现代机器学习:方法与实践·第5章Contents课程目录线性模型——从回归到分类的完整方法论01用于回归的线性模型02正则化与偏差-方差权衡03用于分类的线性模型04非均衡分类问题用于回归的线性模型从线性回归到岭回归、Lasso回归与多项式回归的完整学习路径LINEARMODEL线性回归基本形式线性回归通过输入特征的线性组合进行预测,核心是学习权重向量w和偏置b。为简化计算,偏置项可通过添加常数属性x₀=1统一为向量形式f(x)=w^T·x,使模型表达更简洁。01给定数据集D={(x₁,y₁),...,(xₘ,yₘ)},每个样本xᵢ由d个属性描述,预测函数为02为处理方便,人为添加xᵢ₀=1及对应权重w₀,使偏置项b变为w₀xᵢ₀,公式统一为向量形式f(x)=w^T·x03线性回归通过最小化预测值与实际值的误差来找到最佳线性模型,最常用的方法是最小化均方误差(最小二乘法)线性模型·核心方法均方误差与最小二乘法均方误差MSE衡量预测精度,几何上对应数据点到拟合超平面的垂直距离平方和。最小二乘法通过矩阵运算求解最优回归系数,闭式解w*=(X^T·X)⁻¹·X^T·y要求矩阵可逆,不可逆时可用伪逆。01均方误差MSE=(1/m)·Σ(yᵢ−wT·xᵢ)²,平方运算放大较大误差,使模型更关注远离实际值的预测点02最小二乘法闭式解w*=(XT·X)⁻¹·XT·y,需要对矩阵XT·X求逆,要求该方阵行列式不为零(满秩)03当矩阵不可逆时,可使用Moore-Penrose伪逆求解,伪逆总是存在且满足Penrose条件,保证解的有效性线性回归拟合效果:数据散点与最优拟合直线LINEARMODEL线性回归Python实践与评估sklearn提供LinearRegression类实现线性回归,R²分数是核心评估指标,反映模型解释目标变量变异的比例。模型实现模拟数据生成使用make_regression()生成模拟数据,可控制样本数、特征数、噪声等参数make_regression模型实现统一API流程LinearRegression类通过fit()训练、predict()预测,API简洁统一fit→predict评估指标R²决定系数R²=1-SSE/SST,表示模型解释的变异占总变异的比例,越接近1越好→1.0评估指标回归系数解读coef_返回回归系数(斜率),反映自变量对因变量影响的方向和强度coef_RidgeRegression多重共线性与岭回归多重共线性导致XT·X矩阵接近奇异,使普通最小二乘法失效。岭回归通过引入L2正则化项λI,保证矩阵可逆性,有效控制模型复杂度,是处理共线性问题的经典方法。共线性困境多重共线性指自变量间存在高度线性相关,导致XT·X行列式接近0,矩阵不可逆,正规方程无法直接求解。XT·X≈0L2正则化岭回归目标函数:min||y−Xw||²+λ||w||²,在XT·X基础上加λI(单位矩阵),保证矩阵一定可逆。+λI解析求解岭回归解析解w*=(XT·X+λI)⁻¹·XT·y,λ为正则化强度,需通过交叉验证选择最优值。交叉验证RIDGEREGRESSION·CASESTUDY岭回归实例:正则化参数选择岭回归性能随alpha呈U形曲线变化,存在最优值平衡模型复杂度与泛化能力。GridSearchCV结合交叉验证可自动搜索最优alpha,是工程实践中的标准做法。U形曲线规律加利福尼亚房价数据集实验显示:随alpha增大,MSE先降后升呈U形曲线,存在最优正则化强度。MSE数据标准化特征尺度差异会影响正则化效果,需用StandardScaler预处理,是保证正则化生效的必要步骤。StandardScaler自动网格搜索GridSearchCV可自动执行网格搜索与5折交叉验证,找出使MSE最小的最优alpha值。5折交叉验证LINEARMODELS·09Lasso回归与特征选择Lasso回归使用L1范数正则化,能将不重要特征系数缩减至0,实现自动特征选择。这一稀疏性特性使其在高维数据和需要可解释性的场景中具有重要价值。Lasso目标函数min||y-Xw||²+λΣ|wᵢ|,L1范数约束使部分系数被迫缩减为0L1范数稀疏解优势与岭回归L2范数不同,L1产生稀疏解,自动筛选对预测最有用的特征L1vsL2LassoCV交叉验证LassoCV类自动进行交叉验证找最佳alpha,比GridSearchCV更便捷最优Alpha高维适用性在高维稀疏场景下,Lasso能显著提高模型可解释性和泛化能力可解释性SUMMARY正则化方法总结正则化通过惩罚项控制模型复杂度,是结构风险最小化的核心实现。L1产生稀疏解用于特征选择,L2提升稳定性,ElasticNet结合两者优势,符合奥卡姆剃刀原则。三种正则化方法对比方法惩罚项效果适用场景L1正则化权重绝对值之和部分权重变0,实现特征选择高维稀疏数据、需要可解释性L2正则化权重平方和权重整体缩小,提升稳定性多重共线性、防止过拟合ElasticNetL1+L2组合兼顾特征选择与权重平滑高维且特征相关三种正则化方法各有侧重,选择时需根据数据特点和任务需求权衡正则化与偏差-方差权衡理解模型泛化的核心理论框架LINEARMODELS·CONCEPTANALYSIS偏差与方差概念解析偏差反映模型系统误差,高偏差导致欠拟合;方差反映模型对训练数据的敏感度,高方差导致过拟合。理想模型应同时具有低偏差和低方差,但这往往难以兼得。BIAS偏差(Bias)模型预测值与真实值的差距,反映系统误差高偏差意味着模型过于简单,无法捕捉数据复杂模式,导致欠拟合VARIANCE方差(Variance)模型对训练集小变化的敏感度,反映稳定性高方差意味着模型过于复杂,过度适应训练噪声,导致过拟合BIAS-VARIANCETRADEOFF偏差-方差分解与权衡预测误差=偏差²+方差+不可约误差。偏差-方差权衡是机器学习核心困境,需通过交叉验证、正则化等手段寻找平衡点,使模型既不过拟合也不欠拟合。误差分解公式Error=Bias²+Variance+IrreducibleError,不可约误差来自数据固有噪声,无法通过模型优化消除。偏差反映模型预测期望与真实值的偏离程度。Bias²+Var偏差-方差困境降低偏差往往增加方差,降低方差往往增加偏差,形成此消彼长的权衡关系。需通过交叉验证、集成学习等手段寻找最优平衡点,使模型泛化能力最大化。最优平衡正则化路径差异岭回归(L2)产生所有非零参数,通过收缩系数减小方差但不降低模型复杂度;Lasso(L1)可将部分参数置零,实现特征选择降复杂度但可能增大偏差。L1/L2LinearModels·FeatureEngineering多项式回归与特征扩展通过引入交互特征和多项式特征,线性模型可以捕捉非线性关系。但阶数过高会导致过拟合,需通过交叉验证确定最优阶数,或结合正则化控制复杂度。交互特征01两个或多个特征的乘积,捕捉特征间的协同作用02PolynomialFeatures(interaction_only=True)仅生成交互项,不引入幂次项x₁·x₂特征协同多项式特征01原始特征的幂次组合(x²、x³等),增强非线性拟合能力02例5-4.2显示8阶多项式在房价预测上最优,10阶以上出现过拟合8阶最优拟合阶数Scikit-Learn·ModelEngineeringPipeline流水线集成Pipeline将数据预处理、特征工程和模型训练串联为统一流程,确保一致性和可重复性,避免数据泄露。结合GridSearchCV可实现端到端的超参数优化。Steps流程定义通过steps参数按序组合预处理器、特征工程与模型,构建统一数据流水线,实现模块化流程管理STEPS自动调用机制训练时依次执行fit_transform(),预测时自动调用transform()与predict(),用户只需调用fit和predict两步操作FIT&PREDICT超参数优化结合GridSearchCV对整个Pipeline进行端到端超参数搜索,同时覆盖多项式阶数与正则化强度等参数GridSearchCV用于分类的线性模型逻辑回归:从二分类到多分类的完整解析LogisticRegression逻辑回归分类思想逻辑回归通过Sigmoid函数将线性输出映射为概率,解决了阶跃函数不可导的问题。输出P(y=1|x)∈(0,1)可直接解释为样本属于正类的概率,是概率估计与分类决策的统一。01线性决策边界wT·x+b=0,通过Sigmoid函数σ(z)=1/(1+e−z)将输出映射到(0,1)区间σ(z)∈(0,1)02阶跃函数在x=0处不连续不可导,无法用于梯度优化;Sigmoid是其平滑版本,单调可微C∞Smooth03逻辑回归逼近后验概率的对数几率logit(P)=ln[P/(1−P)]=wT·x,本质是概率估计模型logit(P)=wTxSigmoid函数σ(z)=1/(1+e⁻ᶻ)将实数域映射至(0,1)概率区间ParameterOptimization梯度上升法优化参数逻辑回归使用极大似然估计构建目标函数,通过梯度上升法迭代优化。参数更新公式w:=w+α·∇l(w),其中α为学习率控制步长,梯度∇l(w)=(y-h(x))·x指示优化方向。对数似然函数l(w)=Σ[y⁽ⁱ⁾ln(h(x⁽ⁱ⁾))+(1−y⁽ⁱ⁾)ln(1−h(x⁽ⁱ⁾))]对数似然函数衡量模型参数的好坏程度,值越大表示当前参数对观测数据的解释能力越强。通过最大化似然函数,我们寻找最可能产生观测数据的参数配置。l(w)最大化梯度方向∇l(w)=Σ(y⁽ⁱ⁾−h(x⁽ⁱ⁾))·x⁽ⁱ⁾梯度指示函数增长最快的方向,参数沿此方向更新可最快逼近最优解。残差项(y−h)反映预测误差,误差越大梯度信号越强,引导参数向减小误差的方向调整。∇l(w)方向参数更新w:=w+α·∇l(w)梯度上升最大化似然函数,等价于梯度下降最小化交叉熵损失,α控制每步更新幅度。学习率过大可能震荡不收敛,过小则收敛缓慢,需权衡选择。α学习率LOGISTICREGRESSION·PRACTICE病马数据集实践:逻辑回归实现病马死亡预测实例完整展示了逻辑回归工程流程:缺失值处理、数据标准化、偏置项添加、梯度上升优化。数据标准化使特征尺度统一,加速收敛并提升数值稳定性。数据预处理01缺失值用0填充:梯度贡献为0,不引入先验偏好,保持原始数据分布特性02先标准化再添加偏置项,避免偏置被错误缩放,确保模型训练稳定性模型训练01梯度上升迭代:weights+=alpha*gradient,沿似然函数梯度方向更新参数02学习率alpha=0.01时收敛速度最优,平衡收敛效率与数值稳定性完整工程流程从缺失值处理到梯度上升优化的端到端实践,涵盖数据清洗、特征工程、模型训练与评估全链路端到端闭环数据标准化统一特征尺度消除量纲差异,加速收敛并提升数值稳定性,防止梯度爆炸或消失加速收敛StochasticGradientAscent随机梯度上升与学习率选择随机梯度上升每次用单样本更新,效率更高且支持在线学习。学习率选择至关重要:太大震荡不收敛,太小收敛缓慢。通过损失函数曲线可直观判断并动态调整。单样本更新每次随机选取一个样本更新参数,支持流式数据和在线学习,计算效率显著优于批量梯度上升在线学习学习率调优过大导致损失函数剧烈震荡,过小导致收敛缓慢;理想状态是平稳下降并趋于稳定平稳收敛衰减策略alpha=alpha_init/(1+iter×decay_rate),随迭代次数逐步减小学习率,兼顾速度与稳定性动态衰减MulticlassExtension多分类扩展策略逻辑回归扩展到多分类有两种策略:一对多(OvR)训练k个独立二分类模型,简单可并行;多对多用Softmax构建统一模型,直接输出概率分布,能捕捉类别间关系。一对多(OvR)训练k个独立二分类模型,每个将一个类别视为正类,其余归为负类。预测时选概率最大的类别,结构简单且易于并行计算。k个独立模型Softmax多分类统一模型直接输出所有类别概率分布,概率之和恒为1。能捕捉类别间竞争关系,是深度学习的标准输出组件。统一概率分布非均衡分类问题数据不均衡场景下的解决方案与评估指标线性模型·非均衡数据处理非均衡问题解决方案非均衡问题可通过预处理级(过采样、欠采样、混合采样)和算法级(代价敏感学习)解决。SMOTE通过插值合成少数类样本,代价敏感学习通过代价矩阵引导模型关注高代价错误。预处理级方法Preprocessing过采样:SMOTE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 腹股沟疝日间手术规范化流程与标准中国专家指南2026版
- 先天性食管裂孔疝护理查房
- 腹股沟疝的护理查房图文
- 2026年蚌埠市淮上区网格员考试试题及答案
- 《教师职业素养与能力提升》课件第七章教学技能提升
- 运动生物力学多媒体教学第二章
- 《可爱的校园》课件
- 金属在冲击载荷下的力学性能
- QC成果降低4ABB分析仪设备故障频次
- 海南大学MBA教育中心章节程教案
- 2026年数据中心基础设施运维岗高频面试题包含详细解答
- 创新当下粮安未来-2026年世界粮食日主题班会
- 八省八校(T8)2026-2027学年度第一学期高三检测语文试卷(含答案)
- 2025年国家能源集团工作人员招聘考试笔试试题(含答案)
- 2026招商银行校园招聘模拟笔试真题(含详细答案解析)
- 2026年秋季学期少先队大队委竞选面试答辩题库100题
- 通风空调工程质量管理计划
- 2026年河南高职单招职业适应性测试全真试卷(含详细答案解析)
- 城市绿道配套给排水方案
- 交管12123学法减分题库500题(含标准答案+解析2026全国完整版)
- 通用电子嘉宾礼薄
评论
0/150
提交评论