机器什么时候能够学习?

本文介绍了机器学习的基本概念,包括定义、组成部分,并与其他领域如数据挖掘、人工智能、统计学进行对比。重点讲解了感知机模型,包括PLA算法的工作原理和线性可分条件。最后,探讨了机器学习的分类方式,涉及监督、无监督、半监督和强化学习等。
摘要由CSDN通过智能技术生成


本系列是台湾大学资讯工程系林軒田(Hsuan-Tien Lin)教授开设的《 机器学习基石》课程的梳理。重在梳理,而非详细的笔记,因此可能会略去一些细节。

该课程共16讲,分为4个部分:

  1. 机器什么时候能够学习?(When Can Machines Learn?)
  2. 机器为什么能够学习?(Why Can Machines Learn?)
  3. 机器怎样学习?(How Can Machines Learn?)
  4. 机器怎样可以学得更好?(How Can Machines Learn Better?)

本文是第1部分,对应原课程中的1-3讲。虽然第4讲在原课程中也放入了第1部分,但我认为它与后面第2部分的连贯性更强,因此移到后面。

本部分的主要内容:

  • 介绍机器学习的概念与流程,并将它和其他几个相似的领域进行比较;
  • 介绍感知机模型,说明普通的感知机学习算法PLA在什么条件下可以停下,如果不满足条件该怎么办;
  • 列举机器学习的类别。

1 机器学习的概念

1.1 定义

机器学习的定义:improving some performance measure with experience computed from data

什么时候可以用机器学习?有几个关键的地方:

  • 确实存在一些需要学习的“潜在模式”,如预测下一次丢骰子的点数,就不能用机器学习;
  • 没有简单的可编程的定义,如判断一张图像中是否包含了圆,就可以直接通过编程解决,不需要使用机器学习;
  • 有一些关于要学习的模式的数据,如预测未来核能的滥用是否会导致地球毁灭,就不能用机器学习,因为没有历史数据。

1.2 组成部分

机器学习的实用定义如下图(灰字是以信用卡审批为例):

可以看到,机器学习有以下几个要素:

  • 未知的目标函数 f : X → Y f: \mathcal X\rightarrow\mathcal{Y} f:XY,在例中为理想的信用卡审批规则;
  • 训练样本 D \mathcal{D} D,在例中为银行中信用卡审批的历史记录;
  • 假设集 H \mathcal{H} H,在例中为一系列的候选规则;
  • 学习算法 A \mathcal{A} A
  • 最终挑选出的假设 g g g,满足 g ≈ f g\approx f gf,在例中为最终“学习”出的规则。

机器学习的实用定义:使用数据计算出最接近于目标函数 f f f假设 g g g

1.3 和其他领域的关系

1.3.1 数据挖掘(DM)

数据挖掘:用(大)数据寻找感兴趣的性质。

  • 如果这里所说的“感兴趣的性质”就是“接近目标函数的假设”,那么机器学习就等同于数据挖掘;
  • 如果“感兴趣的性质”与“接近目标函数的假设”是相关的,那么数据挖掘可用来帮助机器学习,反之亦然;
  • 传统的数据挖掘还关注在大数据库中的有效计算。

在现实中,很难区分ML和DM。

1.3.2 人工智能(AI)

人工智能:计算一些的有智能行为的东西。

如果 g ≈ f g\approx f gf就是那个有智能行为的东西,那么ML可用于实现AI。

如下棋,传统AI的做法是做博弈树,而ML的做法是从大量数据中进行学习。因此,机器学习是实现人工智能的一种途径。

1.3.3 统计学(Statistics)

统计学:使用数据对未知过程进行推断。

  • 如果推断的结果就是 g g g f f f是未知的,那么统计学就可以就用来实现机器学习;
  • 传统的统计学聚焦于在数学假设下可证明的结果,而不太关注计算。

统计学为机器学习提供了很多有用的工具。

2 分类学习之感知机模型

2.1 PLA

这里介绍一个简单的分类模型:感知机(Perceptron)。

回顾上一节,在假设集 H \mathcal{H} H中,我们可以使用哪些假设?

在分类问题中,要预测的变量是正/负,或表示成 + 1 +1 +1/ − 1 -1 1。我们可以对自变量做线性加权求和,然后设定一个阈值,若高于阈值,则分类为正,若低于阈值,则分类为负。若将“阈值”也看作在自变量中补入的常数项( w \mathbb{w} w中补入对应的常数1),则这个模型可以写作 h ( x ) = sign ( w T x ) h(x)=\text{sign}(\mathbf{w}^T\mathbf{x}) h(x)=sign(wTx)

每一个 w \mathbb{w} w,都对应了一个假设。

那么,要如何从假设集 H \mathcal{H} H中找出最接近于目标函数的 g g g呢?也就是如何找出最好的 w \mathbb{w} w

可以这样做,先任意设一个初始的 w 0 \mathbf{w}_0 w0(比如 0 \mathbf{0} 0),然后:

  1. 从该点开始,寻找错误分类的样本点,即找到满足 sign ( w t T x n ( t ) ) ≠ y n ( t ) \text{sign}(\mathbf{w}^T_t \mathbf{x}_{n(t)})\ne y_{n(t)} sign(wtTxn(t))=yn(t)的点 ( x n ( t ) , y n ( t ) ) (\mathbf{x}_{n(t)}, y_{n(t)}) (xn(t),yn(t))
  2. 利用找到的错误分类点对 w \mathbf{w} w进行更新,更新规则是: w t + 1 ← w t + y n ( t ) x n ( t ) \mathbf{w}_{t+1}\leftarrow\mathbf{w}_t +y_{n(t)}\mathbf{x}_{n(t)} wt+1wt+yn(t)xn(t)
  3. 不断重复上述过程,直到找不出错误分类的点为止,最终得到要找的 w P L A \mathbf{w}_{PLA} wPLA,把它作为 g g g

这就是感知机学习算法PLA(Perceptron Learning Algorithm)。更新规则的图示如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值