机器学习算法分类

转载请注明出处:http://blog.csdn.net/gamer_gyt
博主微博:http://weibo.com/234654758
Github:https://github.com/thinkgamer
公众号:搜索与推荐Wiki

个人网站:http://thinkgamer.github.io


机器学习算法可以按照不同的标准进行分类。比如按函数f(X)的不同,机器学习算法可以分为线性模型和非线性模型;按照学习准则的不同,机器学习算法也可以分为统计方法和非统计方法。

但一般而言,会按照训练样本提供的信息以及反馈方式不同,将机器学习算法分为以下几类,下面将一一细说。

  • 监督学习
  • 无监督学习
  • 强化学习

监督学习

如果机器学习的目标是通过建模样本的特征x和标签y之间的关系:
y = f ( x , θ ) y=f(x,\theta ) y=f(x,θ)

p ( y ∣ x , θ ) p(y|x,\theta) p(yx,θ)
并且训练集中的每个样本都有标签,那么这类学习称之为监督学习(Supervised Learning)。根据标签类型的不同,监督学习又可以分为回归和分类两种。

回归(Regression)

回归问题中的标签y是连续值(实数或者连续整数)
y = f ( x , θ ) y=f(x,\theta ) y=f(x,θ)
的输出也是连续值。

分类(Classification)

分类问题中的标签y是离散的类别,在分类问题中,学习到的模型也成为分类器(Classifier)。分类问题根据其类别的数量又可以分为二分类(Binary Clssification)和多分类(Mutil-class Classification)。

机构化学习(Structured Learning)

结构化学习的输出对象是结构化的对象,比如序列、树、图等,由于结构化学习的输出空间比较大,因此我们一般定义一个联合特征空间,将x,y映射为该空间中的联合特征向量(x,y),预测模型可以写为:
y ^ = a r g m a x f ( ϕ ( x , y ) , θ ) y ∈ G e n ( x ) \hat{y}=\underset{y \in Gen(x)}{arg max f(\phi (x,y),\theta )} y^=yGen(x)argmaxf(ϕ(x,y),θ)
其中gen(x)表示x所有可能的输出目标集合。计算arg max的过程也称为解码(decoding)过程,一般通过动态规划的方法来计算。

无监督学习

无监督学习(Unsupervised Learning)是指从不包含目标标签的训练样本中自动学习到一些有价值的信息。典型的无监督学习问题有聚类、密度估计、特征学习、降维等。

强化学习

强化学习(Reinforcement Learning)是一类通过交互来学习的机器学习算法。在强化学习中,智能体根据环境的状态作出一个动作,并得到即时或延时的奖励。智能体在和环境的交互中不断学习并调整策略,以取得最大化的期望总回报。

下表给出了三种机器学习类型

机器学习算法分类_第1张图片
监督学习需要每个样本都有标签,而无监督学习则不需要标签。一般而言,监督学习通常大量的有标签数据集,这些数据集是一般都需要由人工进行标注,成本很高。因此,也出现了很多弱监督学习(Weak Supervised Learning)和半监督学习(Semi-Supervised Learning)的方法,希望从大规模的无标注数据中充分挖掘有用的信息,降低对标注样本数量的要求。强化学习和监督学习的不同在于强化学习不需要显式地以“输入/输出对”的方式给出训练样本,是一种在线的学习机制。


机器学习算法分类_第2张图片
打开微信扫一扫,关注微信公众号【搜索与推荐Wiki】

你可能感兴趣的:(机器学习(Python),机器学习)