机器学习算法分类
根据数据集组成不同,可以把机器学习算法分为:
- 监督学习
- 无监督学习
- 半监督学习
- 强化学习
一、监督学习
定义: 输入数据是由输入特征值和目标值所组成。
- 函数的输出可以是一个连续的值(称为回归),
- 或是输出有限个离散值(称作分类)。
举例:
- 小时候父母告诉我们某个动物是猫、是狗或是猪,然后在我们的大脑里就会形成或猫或狗或猪的印象(相当于模型构建),然后面前来了一条“新”小狗,如果你能叫出来“这是一只小狗”,那么恭喜你,标签分类成功!但如果你回答说“这是一头小猪”。这时你的监护人就会纠正你的偏差,“乖,不对,这是一只小狗”,这样一来二去地进行训练,不断更新你大脑的认知体系,聪明如你,下次再遇到这类新的“猫、狗、猪”等,你就会天才般地给出正确的“预测”分类
1.1 回归问题
例如:预测房价,根据样本集拟合出一条连续曲线。
1.2 分类问题
用数据挖掘领域韩家炜教授的观点来说:
所有的监督学习(Supervised Learning),基本上都是“分类(Classification)”的代名词。
例如:根据肿瘤特征判断良性还是恶性,得到的是结果是“良性”或者“恶性”,是离散的。
事实上,整个机器学习的过程就是在干一件事,即通过训练,学习得到某个模型,然后期望这个模型也能很好地适用于“新样本”(即预测)。这种模型适用于新样本的能力,也称为“泛化能力”,它是机器学习算法非常重要的性质。
二、无监督学习
与监督学习相反的是,非监督学习(Unsupervised Learning)所处的学习环境,都是非标签的数据。韩家炜教授接着说[1],
“非监督学习,本质上就是‘聚类(Cluster)’的近义词。”
话说聚类的思想起源非常早,在中国,可追溯到《周易·系辞上》中的“方以类聚,物以群分,吉凶生矣”。
但真正意义上的聚类算法,却是20世纪50年代前后才被提出的。
为何会如此滞后呢?原因在于,聚类算法的成功与否,高度依赖于数据。数据量小了,聚类意义不大。数据量大了,人脑就不灵光了,只能交由计算机解决,而计算机1946年才开始出现。
定义: 输入数据是由输入特征值组成,没有目标值
- 输入数据没有被标记,也没有确定的结果。样本数据类别未知;
- 需要根据样本间的相似性对样本集进行类别划分。
有监督,无监督算法对比:
- 如果说分类是指,根据数据的特征或属性,划分到已有的类别当中。
- 那么,聚类一开始并不知道数据会分为几类,而是通过聚类分析将数据聚成几个群。
- 展开来说,给定N个对象,将其分成K个子集,使得每个子集内的对象相似,不同子集之间的对象不相似。
三、半监督学习
定义: 训练集同时包含有标记样本数据和未标记样本数据。
半监督学习(Semi-supervised Learning)的方式,既用到了标签数据,又用到了非标签数据。有一句骂人的话,说某个人“有妈生,没妈教”,抛开这句话骂人的含义,其实它说的是“无监督学习”。
但我们绝大多数人,不仅“有妈生,有妈教”,还有小学教、有中学教、有大学教,“有人教”的意思是,有人告诉我们事物的对与错(即对事物打了标签),然后我们可据此改善自己的性情,慢慢把自己调教得更有教养,这自然就属于“监督学习”。
但总有那么一天,我们会长大。而长大的标志之一,就是自立。何谓自立呢?就是远离父母、走出校园后,没有人告诉你对与错,一切都要基于自己早期已获取的知识,从社会中学习,扩大并更新自己的认知体系,然后当遇到新事物时,我们能泰然自若地处理,而非六神无主。
从这个角度来看,现代人类成长学习的最佳方式当属“半监督学习”!它既不是纯粹的“监督学习”(因为如果完全是这样,就会扼杀我们的创造力和认知体系,也就永远不可能超越我们的父辈和师辈),也不属于完全的“非监督学习”,因为如果完全这样,我们会如无根之浮萍,会花很多时间重造轮子。前人的思考,我们的阶梯。
对比:
- 监督学习
- 无监督学习
- 半监督学习
四、强化学习
定义: 实质是make decisions 问题,即自动进行决策,并且可以做连续决策。
举例:
小孩想要走路,但在这之前,他需要先站起来,站起来之后还要保持平衡,接下来还要先迈出一条腿,是左腿还是右腿,迈出一步后还要迈出下一步。
小孩就是 agent,他试图通过采取行动(即行走)来操纵环境(行走的表面),并且从一个状态转变到另一个状态(即他走的每一步),当他完成任务的子任务(即走了几步)时,孩子得到奖励(给巧克力吃),并且当他不能走路时,就不会给巧克力。
主要包含五个元素:agent, action, reward, environment, observation;
强化学习的目标就是获得最多的累计奖励。
监督学习和强化学习的对比:
监督学习 | 强化学习 | |
---|---|---|
反馈映射 | 输出的是之间的关系,可以告诉算法什么样的输入对应着什么样的输出。 | 输出的是给机器的反馈 reward function,即用来判断这个行为是好是坏。 |
反馈时间 | 做了比较坏的选择会立刻反馈给算法。 | 结果反馈有延时,有时候可能需要走了很多步以后才知道以前的某一步的选择是好还是坏。 |
输入特征 | 输入是独立同分布的。 | 面对的输入总是在变化,每当算法做出一个行为,它影响下一次决策的输入。 |
Alphago进化史
总结:
In | Out | 目的 | 案例 | |
---|---|---|---|---|
监督学习 (supervised learning) | 有标签 | 有反馈 | 预测结果 | 猫狗分类 房价预测 |
无监督学习 (unsupervised learning) | 无标签 | 无反馈 | 发现潜在结构 | “物以类聚,人以群分” |
半监督学习 (Semi-Supervised Learning) | 部分有标签,部分无标签 | 有反馈 | 降低数据标记的难度 | 人类成长学习的最佳方式当属“半监督学习” |
强化学习 (reinforcement learning) | 决策流程及激励系统 | 一系列行动 | 长期利益最大化 | 学下棋 |