台湾大学林轩田机器学习基石课程学习笔记3 -- Types of Learning

上节课我们主要介绍了解决线性分类问题的一个简单的方法:PLA。PLA能够在平面中选择一条直线将样本数据完全正确分类。而对于线性不可分的情况,可以使用Pocket Algorithm来处理。本节课将主要介绍一下机器学习有哪些种类,并进行归纳。

一、Learning with Different Output Space Y

我们在上节课引入的银行根据用户个人情况判断是否给他发信用卡的例子,这是一个典型的二元分类(binary classification)问题。也就是说输出只有两个,一般y={-1, +1},-1代表不发信用卡(负类),+1代表发信用卡(正类)。

二元分类的问题很常见,包括信用卡发放、垃圾邮件判别、患者疾病诊断、答案正确性估计等等。二元分类是机器学习领域非常核心和基本的问题。二元分类有线性模型也有非线性模型,根据实际问题情况,选择不同的模型。

除了二元分类,也有多元分类(Multiclass Classification)问题。顾名思义,多元分类的输出多于两个,y={1, 2, … , K}, K>2. 一般多元分类的应用有数字识别、图片内容识别等等。

二元分类和多元分类都属于分类问题,它们的输出都是离散值。二对于另外一种情况,比如训练模型,预测房屋价格、股票收益多少等,这类问题的输出y=R,即范围在整个实数空间,是连续的。这类问题,我们把它叫做回归(Regression)。最简单的线性回归是一种典型的回归模型。

除了分类和回归问题,在自然语言处理等领域中,还会用到一种机器学习问题:结构化学习(Structured Learning)。结构化学习的输出空间包含了某种结构在里面,它的一些解法通常是从多分类问题延伸而来的,比较复杂。本系列课程不会详细介绍Structured Learning,有兴趣的读者可以自行对它进行更深入的研究。

简单总结一下,机器学习按照输出空间划分的话,包括二元分类、多元分类、回归、结构化学习等不同的类型。其中二元分类和回归是最基础、最核心的两个类型,也是我们课程主要介绍的部分。

二、Learning with Different Data Label yn

如果我们拿到的训练样本D既有输入特征x,也有输出yn,那么我们把这种类型的学习称为监督式学习(Supervised Learning)。监督式学习可以是二元分类、多元分类或者是回归,最重要的是知道输出标签yn。与监督式学习相对立的另一种类型是非监督式学习(Unsupervised learning)。非监督式学习是没有输出标签yn的,典型的非监督式学习包括:聚类(clustering)问题,比如对网页上新闻的自动分类;密度估计,比如交通路况分析;异常检测,比如用户网络流量监测。通常情况下,非监督式学习更复杂一些,而且非监督的问题很多都可以使用监督式学习的一些算法思想来实现。

介于监督式和非监督式学习之间的叫做半监督式学习(Semi-supervised Learning)。顾名思义,半监督式学习就是说一部分数据有输出标签yn,而另一部分数据没有输出标签yn。在实际应用中,半监督式学习有时候是必须的,比如医药公司对某些药物进行检测,考虑到成本和实验人群限制等问题,只有一部分数据有输出标签yn。

监督式、非监督式、半监督式学习是机器学习领域三个主要类型。除此之外,还有一种非常重要的类型:增强学习(Reinforcement Learning)。增强学习中,我们给模型或系统一些输入,但是给不了我们希望的真实的输出y,根据模型的输出反馈,如果反馈结果良好,更接近真实输出,就给其正向激励,如果反馈结果不好,偏离真实输出,就给其反向激励。不断通过“反馈-修正”这种形式,一步一步让模型学习的更好,这就是增强学习的核心所在。增强学习可以类比成训练宠物的过程,比如我们要训练狗狗坐下,但是狗狗无法直接听懂我们的指令“sit down”。在训练过程中,我们给狗狗示意,如果它表现得好,我们就给他奖励,如果它做跟sit down完全无关的动作,我们就给它小小的惩罚。这样不断修正狗狗的动作,最终能让它按照我们的指令来行动。实际生活中,增强学习的例子也很多,比如根据用户点击、选择而不断改进的广告系统

简单总结一下,机器学习按照数据输出标签yn划分的话,包括监督式学习、非监督式学习、半监督式学习和增强学习等。其中,监督式学习应用最为广泛。

三、Learning with Different Protocol f(xn,yn)

按照不同的协议,机器学习可以分为三种类型:

  • Batch Learning
  • Online
  • Active Learning

batch learning是一种常见的类型。batch learning获得的训练数据D是一批的,即一次性拿到整个D,对其进行学习建模,得到我们最终的机器学习模型。batch learning在实际应用中最为广泛。

online是一种在线学习模型,数据是实时更新的,根据数据一个个进来,同步更新我们的算法。比如在线邮件过滤系统,根据一封一封邮件的内容,根据当前算法判断是否为垃圾邮件,再根据用户反馈,及时更新当前算法。这是一个动态的过程。之前我们介绍的PLA和增强学习都可以使用online模型。

active learning是近些年来新出现的一种机器学习类型,即让机器具备主动问问题的能力,例如手写数字识别,机器自己生成一个数字或者对它不确定的手写字主动提问。active learning优势之一是在获取样本label比较困难的时候,可以节约时间和成本,只对一些重要的label提出需求。

简单总结一下,按照不同的协议,机器学习可以分为batch, online, active。这三种学习类型分别可以类比为:填鸭式,老师教学以及主动问问题。

四、Learning with Different Input Space X

上面几部分介绍的机器学习分类都是根据输出来分类的,比如根据输出空间进行分类,根据输出y的标记进行分类,根据取得数据和标记的方法进行分类。这部分,我们将谈谈输入X有哪些类型。

输入X的第一种类型就是concrete features。比如说硬币分类问题中硬币的尺寸、重量等;比如疾病诊断中的病人信息等具体特征。concrete features对机器学习来说最容易理解和使用。

第二种类型是raw features。比如说手写数字识别中每个数字所在图片的mxn维像素值;比如语音信号的频谱等。raw features一般比较抽象,经常需要人或者机器来转换为其对应的concrete features,这个转换的过程就是Feature Transform。

第三种类型是abstract features。比如某购物网站做购买预测时,提供给参赛者的是抽象加密过的资料编号或者ID,这些特征X完全是抽象的,没有实际的物理含义。所以对于机器学习来说是比较困难的,需要对特征进行更多的转换和提取。

简单总结一下,根据输入X类型不同,可以分为concetet, raw, abstract。将一些抽象的特征转换为具体的特征,是机器学习过程中非常重要的一个环节。在《机器学习技法》课程中,我们再详细介绍。

五、总结:

本节课主要介绍了机器学习的类型,包括Out Space、Data Label、Protocol、Input Space四种类型。

注明:

文章中所有的图片均来自台湾大学林轩田《机器学习基石》课程。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏新智元

机器学习模型出错的四大原因及如何纠错

【新智元导读】本文介绍了机器学习模型出错的常见原因, 讨论了如何用偏差和方差、精确率和召回率这些指标来评测模型的问题,并基于 Andrew Ng 在斯坦福机器学...

3378
来自专栏新智元

【干货】深度人脸识别的 Caffe 实现(附模型开源地址及论文下载)

【新智元导读】本论文对人脸识别和验证任务提出一种新的损失函数,即中心损失。中心损失和softmax损失联合监督学习的CNN,其对深层学习特征的人脸识别能力大大提...

40310
来自专栏数据科学与人工智能

【陆勤阅读】深度学习、自然语言处理和表征方法

简介 过去几年,深度神经网络在模式识别中占绝对主流。它们在许多计算机视觉任务中完爆之前的顶尖算法。在语音识别上也有这个趋势了。 虽然结果好,我们也必须思考……它...

28710
来自专栏数据派THU

独家 | 一文读懂特征工程

本文结构 1. 概述 机器学习被广泛定义为“利用经验来改善计算机系统的自身性能”。事实上,“经验”在计算机中主要是以数据的形式存在的,因此数据是机器学习的前提...

2478
来自专栏CDA数据分析师

使用 TensorFlow 和 Python 进行深度学习(附视频中字)

TensorFlow是谷歌研发的开源框架。本讲座介绍了如何使用TensorFlow创建深度学习应用程序,以及与其他Python机器学习库进行比较。 我叫Ian ...

1899
来自专栏专知

【AlphaGo Zero 核心技术-深度强化学习教程笔记06】价值函数的近似表示

点击上方“专知”关注获取更多AI知识! 【导读】Google DeepMind在Nature上发表最新论文,介绍了迄今最强最新的版本AlphaGo Zero,不...

2104
来自专栏AI研习社

不是你无法入门自然语言处理(NLP),而是你没找到正确的打开方式

〇、序 之前一段时间,在结合深度学习做 NLP 的时候一直有思考一些问题,其中有一个问题算是最核心一个:究竟深度网络是怎么做到让各种 NLP 任务解决地如何...

3936
来自专栏PPV课数据科学社区

最新机器学习必备十大入门算法!都在这里了

我们向初学者介绍十大机器学习(ML)算法,并附上数字和示例,方便理解。 简介 “哈佛商业评论”的一篇文章(https://hbr.org/2012/10/da...

3246
来自专栏机器学习算法与Python学习

秘籍 | 数据竞赛大杀器之模型融合(stacking & blending)

叠(也称为元组合)是用于组合来自多个预测模型的信息以生成新模型的模型组合技术。通常,堆叠模型(也称为二级模型)因为它的平滑性和突出每个基本模型在其中执行得最好的...

453
来自专栏PPV课数据科学社区

主编推荐 | 学会数据分析背后的挖掘思维,分析就完成了一半!

主编推荐:通过言简意赅的语言把数据挖掘的原理、建模过程、数据分析和数据挖掘关系说的比较清楚,适合入门者了解相关概念。 正文如下: 在数据分析中,模型是非常有用和...

2926

扫码关注云+社区