吹爆!周志华大佬亲授《机器学习》(西瓜书)!讲的通俗易懂,小白也能轻松理解!49





奥卡姆剃刀:若非必要,勿增实体。(多个模型都能很好的表现时,用最简单的)






没有完美的解决方案解决过拟合问题

性能度量:不同的方案需要不同的性能度量方法,
例如: 在欺诈案件中,一万次中又一次时欺诈
如果按普通方式评估,一万次都没有欺诈,虽然准确率是99.999,但是却检测不出来欺诈





留一法:将测试集每个样本为子集,每次的测试集为一个样本,训练集为m-1,进行m次训练。

缺点:训练数据发生变化

验证集:训练集中专门流出的部分用来调节参数的
注意:调节参数的部分需要来源于训练数据集中










最小二乘法:

最小二乘法,让偏导=0的原因是,线性回归中偏导等于0时只会出现最小值的情况,因为误差距离不会存在最大值时的偏导=0.(不存在无穷远)








似然函数的思路就是:
求 最大值 Max( p(真是+)p(预测为+)+p(真是-)p(预测为-) )



过采样: 在已经有的小样本中间插值,不使用复制(如果对错误样本进行复制,可能会增加噪声)
SMOTE: (nitech chawla) 插值法

欠采样:丢掉一些大类中的样本。,通常采用的方法是,多次随机抽取同小类数量一样多的数据,多次顺利得出模型 (问题,可能会丢掉重要的样本,让模型不正确)





信息增益:直接以信息熵为基础,计算当前划分对信息熵所造成的变化






从上图中看到,各种属性的信息增益中,纹理的信息增益最大,所以该节点选择使用纹理属性作为分类标准

信息增益偏好了分支多的属性,所以会出现不利的情况,需要改进ID3算法。
C45

增益率:表示的是让信息增益Gain(D,a)越大越好,Iv(a)分支数量越少越好,取折中
但是分支不能只用Gain_ration()的值来判断,因为当Iv(a)值很小(分支很少)增益率也很小,但是增益率却很大的情况也会有,所以使用启发式=》

增益率实际上起到了一个规范化(normolization)的作用。把原来不可比较的东西变得可以比较。
归一化:把数值改到(0,1)之间
CART决策树:

以二分类为例,思想是: 从D中随机抽取两个样本,pk为抽取到k的概率pk的平方为两次都抽取到同一个类型的概率, 1- pk2 就是不同类的概率,让1-pk2值越小样本就越纯。

剪枝(pruning): 将有些分支丢弃不要
剪枝方法对决策树泛化性能的影响更为显著




缺失值的划分思虑: 样本赋权,权重划分

上图 - 的都是缺失值,如果都丢弃,则样本数就很少
解决办法:将样本增加权重






支持向量机:





求解办法:







高维向量的内积计算量大,所以采用一种方法代替向量x的内积计算,所以设计了一个核函数
核函数作用:低维空间的计算结果,等于高维空间中的内积

核函数本质是找到高位空间中点的距离矩阵



使用SVM做回归问题:

让点在红色之间的值不计算损失,红色区块以外的点计算损失,计算最小损失。




f : 激活函数 Activation function

f(x) =sigmoid 函数,
则有: f'(x)=f(x) (1- f(x)) //表示为正负几率的乘积










P(Cj | x) : 样本中产生Cj的概率
贝叶斯判定准则,就是选择最小的损失。
:问题所以,P(Cj | x) 是整体样本的概率,事先无法得到


判别式网络: 就是判定类别的, 给个点将它们分开P(c | x)
频率主义: 通常做的是一个点估计,假设样本是符合某个概率分布,然后估计出概率公式中参数的值,(点估计)
比如: 假设样本输入高斯分布 ,-》需要做的是找出高斯分布中均值和方差的值
贝叶斯主义: 思想是,样本的高斯分布中的参数也是属于一种分布,而不是固定的某个值,要做的是找高斯分布中参数的分布,(分布估计)
贝叶斯分类器: 条件只要是一种生成式模型,并且使用贝叶斯公式
贝叶斯学习: 是一种分布估计


极大似然估计: 就是利用训练集D, 找到参数值,,
目的是找出一个参数值,使得它分布中得出的x的样本与训练集中D样本最一直,即,概率最大化
极大似然法是找出参数的值,是频率注意中的点估计


:上面:< Dc,xi> =》假如 Dc 表示好瓜的样本集合,Xi 就是每个样本中的第i个特征,比如西瓜的颜色




好的集成,需要多个模型结合,并且单一的模型的准确度也不能太低,而且单一模型之间的要有差异性



data set2的数据集是data set1的采用,重点选取Learner1中判断错误的样本放在data set 2 中, 然后让learner2学习data set2中的样本集,以此往后推,得到T个模型,然后对T个模型进行加权求和,每个模型都有一个权重( 这是一个序列化集成方法,因为越到后面,解决的问题越难,所以需要为模型增加权重)

bagging是并行化方法,
使用boostrap sampling获取多个数据集,然后将多个模型得到的结果进行求平均
bagging 的改进版本就是随机森林。





原型聚类:只能找出椭圆型的聚类