从零啃透机器学习:用“挑西瓜”讲透机器学习第三章 《机器学习》第3章·通俗解读 | 线性模型简单又强大的“直线思维”这一章的主角是线性模型。别被名字吓到它的核心思想非常朴素用一条直线或一个平面来预测结果。它简单、好懂、有解释性而且很多复杂模型都是它的“升级版”。1. 线性模型长什么样回忆一下初中的一元一次方程y kx bx是输入比如西瓜的色泽y是输出比如好瓜的程度k是斜率权重b是截距偏置如果西瓜有多个特征色泽、根蒂、敲声就变成y w1×色泽 w2×根蒂 w3×敲声 bw1, w2, w3叫权重表示每个特征的重要性。权重越大说明这个特征对结果影响越大。一个例子学到的模型可能是好瓜分数 0.2×色泽 0.5×根蒂 0.3×敲声 1 根蒂最重要敲声次之色泽影响最小。2. 线性回归预测一个数值最简单的任务给你一个西瓜的特征预测它的含糖量一个具体的数字。输入密度、色泽、根蒂……输出0.3、0.5、0.7 这样的数值怎么做找一条直线或超平面让所有训练样本到这条直线的距离之和最短。这种方法叫最小二乘法。通俗理解你画一条线然后把每个真实数据点垂直拉到线上把所有拉线的长度平方加起来让这个总和最小。3. 对数几率回归虽然叫“回归”其实是分类如果你要判断“是不是好瓜”是/否就不能直接输出数值了。这时候需要一个“开关函数”把任意实数映射成 0 或 1。理想的开关阶跃函数小于0就是坏瓜大于0就是好瓜。但它不光滑不好训练。于是用一个平滑的S形曲线代替这就是Sigmoid函数。这个函数的输出介于 0 和 1 之间可以理解为“是好瓜的概率”。比如模型输出 0.9意思是“90%可能是好瓜”。最后定一个阈值通常是0.5大于0.5判为好瓜否则坏瓜。为什么叫“对数几率回归”“几率” 好瓜概率 / 坏瓜概率取对数后正好是线性模型的结果。所以它本质是用线性模型来逼近概率的对数。4. 线性判别分析LDA找一条线把两类分开LDA 的思路非常直观把数据点投影到一条直线上希望同一类点尽可能靠近类内方差小不同类的中心点尽可能远离类间距离大就像你把红色豆子和绿色豆子往一条线上扔希望红的一堆、绿的一堆而且两堆离得远远的。LDA 不仅能分类还能降维如果原来有100个特征投影后可能只需几个维度的组合。5. 多分类学习一次分多个类别现实任务往往不止“好瓜/坏瓜”可能还有“合格瓜”“优秀瓜”等等。怎么用二分类器解决多分类主要有三种策略方法做法例子一对一每两个类别之间训练一个分类器好瓜 vs 坏瓜、好瓜 vs 合格、坏瓜 vs 合格一对其余每次把一个类当正例其余当反例好瓜 vs 其他、坏瓜 vs 其他、合格 vs 其他纠错输出码用一组“编码”来表示每个类别每个分类器负责一位编码的预测类似用多个判断题来定位正确答案一对一训练的分类器多N(N-1)/2个但每个只用两类数据训练快一对其余只训练 N 个但每个分类器要用全部数据训练慢。实际中两者效果差不多。6. 类别不平衡正例太少怎么办假如训练集里 998 个坏瓜只有 2 个好瓜。模型随便猜“全是坏瓜”准确率也有 99.8%但它根本学不会找好瓜。怎么解决过采样把好瓜复制几份或者“插值”生成新样本欠采样从坏瓜里随机丢弃一些让两类数量接近阈值移动不改变数据而是调整判断阈值比如原来0.5现在改成0.1插值 在两个真实样本中间“猜”一个新样本让少数类的样本更丰富、更多样模型学得更好。一个技巧训练集里好瓜:坏瓜 1:10那么你判断时只有模型觉得“是好瓜的概率 1/(110) ≈ 0.09”就判为好瓜而不是 0.5。 第三章总结背下这5句就够了线性模型 给每个特征配一个权重加权求和加偏置线性回归预测数值如含糖量用最小二乘法找最佳直线对数几率回归逻辑回归是分类模型输出概率用S形曲线把任意值映射到0~1线性判别分析LDA找一条线让同类近、异类远还能降维类别不均衡时可以通过过采样、欠采样、调阈值来补救 下章预告第四章讲决策树——一种像“流程图”一样的模型每一步都在问一个问题如“根蒂蜷缩吗”一路走到叶子节点得出答案。非常直观、非常好懂用“挑西瓜”讲透《机器学习》-- 决策树-CSDN博客