23

监督学习算法

 4 years ago
source link: http://www.cnblogs.com/renyuzhuo/p/12637912.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
  • 本文首发自公众号: RAIS ,点击直接关注。

前言

本系列文章为 《Deep Learning》 读书笔记,可以参看原书一起阅读,效果更佳。由于各平台 Markdown 解析差异,有些公式显示效果不好,请到我 个人维护网站 查看。

监督学习算法

监督学习算法的定义是,给定一组输入 x 和输出 y,学习如何将其关联起来,现在的大部分情况都是监督学习算法的范畴。

逻辑回归

很多的监督学习算法是基于估计概率分 布P(y|x) 的,假设参数服从高斯分布,我们可以使用最大似然估计找到对于有参分布族 P(y|x;θ) 最好的参数向量 θ,即用最大似然估计得到目标函数,优化这个目标函数。线性回归对应于高斯分布分布族,通过定义一族不同的概率分布,可将线性回归扩展到分类情况中。

具体的做法就是将线性函数的输出使用 sigmoid 函数(就是前文说的那个样子像 S 型)将其压缩到 (0, 1) 空间内,这就叫做逻辑回归。注意这个逻辑回归不是回归,而是用来解决分类问题。当然,线性回归也可以推广为 Softmax 回归,不是这里的重点。

支持向量机

支持向量机是监督学习中关于分类与回归问题中重要的算法。与逻辑回归类似,这个模型也是基于线性函数的,不过输出有所不同,不输出概率,而是输出类别,为正正类,为负负类。

核技巧,其实这是一个数学上的概念,用来增加维度区分不同数据,如下图,区分下图中左侧的四个点,用的方法是增加一个维度,然后用平面分割,这与用一条曲线去分割没什么本质的区别,来自 视频

uMnUFza.jpg!web

上面这样做也会有一个问题,在数据量大且维数很多的情况下,会导致计算量急剧增大,这不好。核函数就是用来解决这个问题的,核函数只是用来计算映射到高维空间之后的内积的一种简便方法,隐含着也从低纬到高维的映射,但其计算量可控,降低计算的复杂度,甚至把不可能的计算变为可能,可以将低纬空间内线性不可分的两类点变成线性可分的。

机器学习中最常用的核函数是高斯核(也称径向基函数),N(x;μ,∑) 是标准正态分布,能够把原始特征映射到无穷维,能够比较 u 和 v 的相似度,映射到 0 和 1:

\[k(u,v)=N(u-v;0,\sigma^2I) \]

其他监督学习算法

临近回归:前面介绍过最近临近回归,这也是一种非概率监督学习算法。K-最近邻回归是一种可以用于分类或回归的算法,K-最近邻算法就是从训练集(根本就没训练,感觉叫训练集都不太准确,应该叫样本集)中找到与测试输入的点最近的 K 个点,然后采用少数服从多数的思想,谁多就听谁的(分类),或者求平均(回归),但是这在 K 取值不同的时候,得到的结果可能不同,因此 K 的选择是比较重要的。这个方法的特点是训练集可以趋近于无穷大,在比较好的情况下回收敛到贝叶斯错误率。这个方法需要训练集较大,训练集较少的情况下泛化程度不够好;且其由于几乎没有训练的过程,因此也不能学习出特征中哪些是更有识别力的,无法找到关键属性。

决策树:决策树会将输入空间分成不重叠的子区域,叶节点和输出区域一一对应。构建决策树前需要根据信息增益的方法进行特征选择,然后生成决策树,为防止过拟合可能还需要进行剪枝。

总结

本文介绍了几种最常见的监督学习算法。

  • 本文首发自公众号: RAIS ,点击直接关注。

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK