侧边栏壁纸
博主头像
乌拉队长博主等级

你只管努力,其余的交给命运

  • 累计撰写 122 篇文章
  • 累计创建 34 个标签
  • 累计收到 31 条评论

目 录CONTENT

文章目录

机器学习知识总结

乌拉队长
2021-07-15 / 0 评论 / 0 点赞 / 1,048 阅读 / 3,005 字

机器学习知识总结(持续更新)

数学概念、定义和定理部分

大数定律和中心极限定理

大数定律

  • 在试验不变的条件下,重复试验多次,随机事件的频率近似于它的概率

例如,在重复投掷一枚硬币的随机试验中,观测投掷了n次硬币中出现正面的次数。不同的n次试验,出现正面的频率(出现正面次数与n之比)可能不同,但当试验的次数n越来越大时,出现正面的频率将大体上逐渐接近于1/2。又如称量某一物体的重量,假如衡器不存在系统偏差,由于衡器的精度等各种因素的影响,对同一物体重复称量多次,可能得到多个不同的重量数值,但它们的算术平均值一般来说将随称量次数的增加而逐渐接近于物体的真实重量。

中心极限定理

  • 任何一个样本的平均值将会约等于其所在总体的平均值。

  • 不管总体是什么分布,任意一个总体的样本平均值都会围绕在总体的平均值周围,并且呈正态分布。

从下图可以看出:

image.png

这里第1行是3种不同分布类型的总体,用于比较不同类型下的样本平均值分布。第2行每个样本大小是2,然后对每个样本求平均值,横轴表示每个样本的平均值,纵轴表示该平均值出现了多少次,最后平均值分布很不规则第3行每个样本大小是5,然后对每个样本求平均值,最后平均值分布有点接近于正态分布,但是总体3对应的第3行却不是正态分布。第4行每个样本大小是30,然后对每个样本求平均值,最后平均值分布是正态分布。这也验证了中心极限定律,不管总体是什么分布,任意一个总体的样本平均值都会围绕在总体的平均值周围,并且呈正态分布。

具体解释可以看知乎 猴子 大佬的解释,点此查看完整解释

欧几里得距离、曼哈顿距离、切比雪夫距离

  • 欧几里得距离:两个点之间的距离,在3维空间中计算公式为:

$$ d = \sqrt{(x_1 - x_2)2 + (y_1 - y_2)2 + (z_1 - z_2)^2 } $$

  • 曼哈顿距离:两个点在标准坐标系上的绝对轴距总和,在2维空间中的计算公式为:

$$ d = |x_1 - x_2| + |y_1 - y_2| $$

  • 切比雪夫距离:各坐标数值差的最大值,在2维空间中的计算公式为:

$$ d = max(|x_1 - x_2|, |y_1 - y_2|) $$

分层抽样的适用范围

分层抽样利用事先掌握的信息,充分考虑了保持样本结构和总体结构的一致性,当总体由差异明显的几部分组成的时候,适合用分层抽样。

算法模型、方法部分

逻辑回归和线性回归的区别

  • 线性回归用来做预测,逻辑回归用来做分类。
  • 线性回归是来拟合函数,LR是来预测函数。
  • 线性回归用最小二乘法来计算参数,逻辑回归用最大似然估计来计算参数。
  • 逻辑回归本质上是线性回归,只是在特征到结果的映射中加入了一层逻辑函数(激励函数)g(z),即先把特征线性求和,然后使用g(z)作为假设函数来预测。g(z)可以将连续的值映射到0和1之间。用于分类问题g(z)为sigmod函数。
  • 线性回归更容易受到异常值的影响,而逻辑回归对异常值有较好的稳定性。

LR和SVM的区别

  • LR是参数模型,SVM是非参数模型。
  • 从目标函数来看,区别在于逻辑回归采用的是logistical loss,SVM采用的是hinge loss.这两个损失函数的目的都是增加对分类影响较大的数据点的权重,减少与分类关系较小的数据点的权重。
  • SVM的处理方法是只考虑support vectors,也就是和分类最相关的少数点,去学习分类器。而逻辑回归通过非线性映射,大大减小了离分类平面较远的点的权重,相对提升了与分类最相关的数据点的权重。
  • 逻辑回归相对来说模型更简单,好理解,特别是大规模线性分类时比较方便。而SVM的理解和优化相对来说复杂一些, SVM转化为对偶问题后分类只需要计算与少数几个支持向量的距离,这个在进行复杂核函数计算时优势很明显,能够大大简化模型和计算。
  • logic 能做的svm能做,但可能在准确率.上有问题,svm能做的logic有的做不了。

逻辑回归如何实现多分类

  • 修改逻辑回归的损失函数,使用softmax函数构造模型解决多分类问题,softmax分类模型会有相同于类别数的输出,输出的值为对于样本属于各个类别的概率,最后对于样本进行预测的类型为概率值最高的那个类别。
  • 根据每个类别都建立一个二分类器,本类别的样本标签定义为0,其它分类样本标签定义为1,则有多少个类别就构造多少个逻辑回归分类器

生成模型和判别模型的区别

生成式:朴素贝叶斯、HMM、Gaussians、马尔科夫随机场
判别式:LR,SVM,神经网络,CRF,Boosting

image.png

对于判别式模型来说求得 P(Y|X) ,对未见示例X,根据P(Y|X)可以求得标记Y,即可以直接判别出来,如上图的左边所示,实际是就是直接得到了判别边界,所以传统的、耳熟能详的机器学习算法如线性回归模型、支持向量机SVM等都是判别式模型,这些模型的特点都是输入属性X可以直接得到Y(对于二分类任务来说,实际得到一个score,当score大于threshold时则为正类,否则为反类)~(根本原因个人认为是对于某示例X_1,对正例和反例的标记的条件概率之和等于1,即 P(Y_1|X_1)+P(Y_2|X_1)=1

而生成式模型求得P(Y,X),对于未见示例X,你要求出X与不同标记之间的联合概率分布,然后大的获胜,如上图右边所示,并没有什么边界存在,对于未见示例(红三角),求两个联合概率分布(有两个类),比较一下,取那个大的。机器学习中朴素贝叶斯模型、隐马尔可夫模型HMM等都是生成式模型,熟悉Naive Bayes的都知道,对于输入X,需要求出好几个联合概率,然后较大的那个就是预测结果~(根本原因个人认为是对于某示例X_1,对正例和反例的标记的联合概率不等于1,即P(Y_1,X_1)+P(Y_2,X_1)<1,要遍历所有的X和Y的联合概率求和,即sum(P(X,Y))=1,具体可参见楼上woodyhui提到的维基百科Generative model里的例子)

博文机器学习之判别式模型和生成式模型 - nolonely - 博客园 举了一个例子:

判别式模型举例:要确定一个羊是山羊还是绵羊,用判别模型的方法是从历史数据中学习到模型,然后通过提取这只羊的特征来预测出这只羊是山羊的概率,是绵羊的概率。

生成式模型举例:利用生成模型是根据山羊的特征首先学习出一个山羊的模型,然后根据绵羊的特征学习出一个绵羊的模型,然后从这只羊中提取特征,放到山羊模型中看概率是多少,在放到绵羊模型中看概率是多少,哪个大就是哪个。

细细品味上面的例子,判别式模型是根据一只羊的特征可以直接给出这只羊的概率(比如logistic regression,这概率大于0.5时则为正例,否则为反例),而生成式模型是要都试一试,最大的概率的那个就是最后结果~

在机器学习中任务是从属性X预测标记Y,判别模型求的是P(Y|X),即后验概率;而生成模型最后求的是P(X,Y),即联合概率。从本质上来说:判别模型之所以称为“判别”模型,是因为其根据X“判别”Y;而生成模型之所以称为“生成”模型,是因为其预测的根据是联合概率P(X,Y),而联合概率可以理解为“生成”(X,Y)样本的概率分布(或称为 依据);具体来说,机器学习已知X,从Y的候选集合中选出一个来,可能的样本有(X,Y_1), (X,Y_2), (X,Y_3),……,(X,Y_n),实际数据是如何“生成”的依赖于P(X,Y),那么最后的预测结果选哪一个Y呢?那就选“生成”概率最大的那个吧~

原文见 politer 知乎回答

0

评论区