机器学习通常包括监督学习、非监督学习、半监督学习和强化学习四种训练方式。

1、自监督学习(Self-supervised Learning)

监督学习是使用已知正确的答案的示例来训练网络。由于网络在学习的过程中不仅有训练数据,还有训练结果(标签),因此训练的效果通常不错。

学习技术:分类(classification)和回归(regression)

2、无监督学习(Unsupervised Learning)

无监督学习是指只给网络训练数据,不给标签,因此网络无法准确知道哪些数据具有哪些标签,只能凭借强大的计算能力分析数据的特征,从而得到一定的成果,通常是得到一些集合,集合内的数据在某些特征上相同或相似。

学习技术:自编码(Autoencoding)、主成分分析(Principal components analysis, PCA)、随机森林(Random forests)和K均值聚类(K-means clustering)

3、半监督学习(Semi-supervised Learning)

半监督学习在训练阶段结合了大量的未标记的数据和少量有标签的数据。其基本规律是:数据的分布必然不是完全随机的,通过一些有标签数据的局部特征,以及更多的没标签数据的整体分布,就可以得到可以接受甚至是非常好的分类结果。

4、强化学习(Reinforcement Learning)

强化学习本质是解决决策(decision making)问题,即自动进行决策,并且可以做连续决策。

它主要包含四个元素:代理(Agent)、环境状态(Environment)、行动(Action)、奖励(reward),强化学习的目标就是获得最多的累计奖励。

具体流程:Agent观察Environment,做出Action,这个Action会对Environment造成一定影响和改变,继而Agent会从新的环境中获得Reward。循环上述步骤。Agent学习的目标就是使得期望的回报(reward)最大化。

难点:Reward是比较难以获得的,而Agent就是依靠Reward来进行学习,进行自身策略的调整。

注:State指的是Agent观察到的Environment的状态,不是指machine本身的状态。

举例:机器人把水杯打翻了,人类说“不能这么做”,机器人获得人类的这个负向反馈,然后机器人观察到水杯打翻的状态,采取了拖地的行为,获得了人类“谢谢”的正向反馈。

5、区别

强化学习和监督学习的区别:

监督学术好比在你学习的时候,有一个导师在旁边指点,他知道怎么做是对的,怎么做事错的。但是在实际问题中,不可能有一个导师知道所有可能的结果。

强化学习会在没有任何标签的情况下,通过先尝试做出一些行为得到一个结果,通过这个结果是对还是错的反馈,调整之前的行为,这样不断地调整,算法能够学习到在什么情况下选择什么样的行为可以得到最好的结果。

  • 两种学习方式都会学习出输入到输出的一个映射,监督学习得到是之间的关系,可以告诉算法什么样的输入对应着什么样的输出;强化学习得到的是给机器的 反馈(reward function),即用来判断这个行为的对错。

  • 强化学习面对的输入总是在变化,每当算法做出一个行为,它影响下一次决策的输入,而监督学习的输入是独立同分布的。

  • 探索(exploration)会尝试很多不同的事情,看他们是否比以前尝试过得更好;

    开发(exploitation)会尝试过去经验中最有效的行为。

    通过强化学习,一个Agent可以在探索与开发之前作出权衡,并且选择一个最大的回报;而一般监督学习就只是开发。

强化学习与无监督学习的区别:

无监督学习不是学习输入到输出的映射,而是模式。例如在向用户推荐新闻文章的任务中,无监督学习会找到用户先前已经阅读过的类似的文章并向他们推荐其一;而强化学习将通过向用户先推荐少量的新闻,并不断获得来自用户的反馈,最后构建用户可能会喜欢的文章的“知识图”。

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐