机器学习之学习分类

  此篇是《机器学习的数学》专栏的第三篇,继简单的介绍为什么要有机器学习和机器学习能够做什么、以及学习回归之后,来总结一下机器学习之学习分类方面的知识。

1.设置模型

为了方便问题的描述,以图像的大小分为横向和纵向两类,所以这是一个二分类的问题。

1.1 数据

这里将7个图像作为训练数据,如下表格。

形状
80 150 纵向
60 110 纵向
35 130 纵向
160 50 横向
160 20 横向
125 30 横向

2.1 图形描述

将上述7个数据在二维坐标系中展示,如下图。
数据图形
Q1:如何分类?
A1:我们的目标是找出一条直线,该直线能够把已有的横向和纵向的数据分成两部分,由上图易知,使用一条直线即可将两类数据分成两部分。假设是如下图中的直线。
数据图形2
Q2:如何求出这条直线呢?
A2:在回归部分求直线的方法是求该直线的斜率和截距(具体内容可参考机器学习之回归),但在分类这部分不同,我们使用向量,这里引入权重向量 w w w,目标进一步具体,现在的目标是找出将权重向量作为法向量的直线

Q3:什么是权重向量?
A3:权重向量就是我们要求的参数,与回归时要求的参数 θ \theta θ一样。知道权重向量就知道分类的直线了,因此我们需要求解出最适合的参数向量 w w w

Q4:权重向量与所要求的分类直线存在怎样的数学关系?
A4: w ⋅ x = 0 w·x=0 wx=0,即直线上的所有向量与权重向量垂直。权重向量在图中的展示如下。
权重向量

2.内积

接下来主要围绕以机器学习为背景的 w ⋅ x = 0 w·x=0 wx=0的计算展开。

  1. w ⋅ x = ∑ i = 0 n w i ⋅ x i = 0 w·x=\sum_{i=0}^{n}w_i·x_i=0 wx=i=0nwixi=0。联系本题背景,由于只考虑图像的高和宽,是二维问题,因此这里可表达为 w ⋅ x = w 1 ⋅ x 1 + w 2 ⋅ x 2 = 0 w·x=w_1·x_1+w_2·x_2=0 wx=w1x1+w2x2=0

    假设这里求出的 w 1 = 1 w_1=1 w1=1, w 2 = 1 w_2=1 w2=1,则表达式为 x 1 + x 2 = 0 x_1+x_2=0 x1+x2=0 x 1 = − x 2 x_1=-x_2 x1=x2。因此只要知道了权重向量即找到了分类的直线。将求得的直线与权重向量用图形表示如下:
    权重向量3
    由于与 w w w垂直的向量很多,就连成了直线。这就是找到 使权重向量成为法向量的直线 的含义。

  2. w ⋅ x = ∣ w ∣ ⋅ ∣ x ∣ ⋅ c o s θ = 0 w·x=|w|·|x|·cos\theta=0 wx=wxcosθ=0,这里由于 ∣ w ∣ |w| w ∣ x ∣ |x| x是非负数,如果结果=0,则 θ = 9 0 。 \theta=90^。 θ=90,如果结果为负,则 9 0 。 < θ < 27 0 。 90^。<\theta<270^。 90<θ<270,若结果为正,则 0 。 < θ < 9 0 。 或 27 0 。 < θ < 36 0 。 0^。<\theta<90^。或270^。<\theta<360^。 0<θ<90270<θ<360

3.感知机

Q5:什么是感知机?
A5:感知机为接收多个输入变量并输出各个变量与各自的权重的乘积之和的模型。其图形表示如下:
感知机
   以上的感知机模型也称为简单感知机单层感知机

Q6:感知机的优缺点是什么?
A6:优点就是原理简单,是深度学习和神经网络的模型基础。但缺点也很明显,即只能用于解决线性可分(详见第四部分)的问题,从表达式角度考虑就是 x x x只能是一次方,而现实中的大多数问题都是多维且是线性不可分的,因此很少在实际问题中使用。

Q7:为什么引入感知机?
A7:由于感知机就是将计算多个变量与其权重的积输出其和,与分类算法的目标(由权重向量求出分类直线)一致。

这里使用感知机模型求目标直线。在此之前,需准备好训练数据。

3.1 准备训练数据

   分类是使用带标签的数据(带标签的数据可以理解为知道模型的输入和输出)进行训练以对未知的数据进行分类的方法。这里将图像的宽设定为 x 1 x_1 x1,高设定为 x 2 x_2 x2,横向图像的标签定为1,纵向为-1。则训练数据如下:

图像大小 形状 x 1 x_1 x1 x 2 x_2 x2 y y y
80x150 纵向 80 150 -1
60x110 纵向 60 110 -1
35x130 纵向 35 130 -1
160x50 横向 160 50 1
160x20 横向 160 20 1
125x30 横向 125 30 1

   接下来是根据参数向量判断图像是横向还是纵向。像这样判断数据的函数称为判别函数
   我们先从图形角度理解。下图中在直线的左上方是纵向图像,因此在此范围内的数据 ( x 1 , x 2 ) (x_1,x_2) (x1,x2)与权重向量的夹角<90,也即 w ⋅ x ( i ) ≥ 0 w·x^{(i)}\ge 0 wx(i)0,如下图所示。
判别函数
  同理横向图像在直线的下方,与权重向量的夹角大于90且小于270,即 w ⋅ x ( i ) < 0 w·x^{(i)}< 0 wx(i)<0。可得到判别函数表达式如下:
f w x ( i ) = { 1 w ⋅ x ( i ) ≥ 0 − 1 w ⋅ x ( i ) < 0 f_{w}x^{(i)}=\left\{ \begin{aligned} 1&&&& w·x^{(i)}\ge 0 \\ -1&&&&w·x^{(i)}<0 \end{aligned} \right. fwx(i)={ 11wx(i)0wx(i)<0

3.2权重向量的更新表达式

  有了判别函数之后,我们便可根据判别函数所得的值与真实的值来更新参数 w w w以找到可以将数据很好的分类的值。先给出结论。以下是权重向量的更新表达式: w : = { w +

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值