系列文章目录
第1章 专家系统
第2章 决策树
第3章 神经元和感知机
识别手写数字——感知机
前言
感知机等早期人工智能模型采取仿生学的方法模拟生物智能机制,人们在开展这些早期研究的时候,并没有从统计学角度去深究它们的数学本质。与此同时,甚至在更早时候,统计学家已经在使用一些函数拟合或者参数估计的方法,来描述观测数据的概率分布,或者定量描述不同观测量之间的函数关系。人们假设数据符合某种分布,或者数据之间存在某种定量函数关系,通过观察数据推测概率分布或者函数关系的参数。这些方法与人工智能中的很多方法有着密切的联系,它们背后的数学原理是一致的。其后发展起来的统计学习理论帮助我们更加系统地认识统计学方法在人工智能中的应用。下面我们从最基本的线性回归开始,看如何用统计学的方法解决问题。
一、线性回归概述
学者法兰西斯·高尔顿(Francis Galton)最早在19世纪提出了回归的概念,用来描述人群的遗传特征“回归”到平均值这一规律。现代统计学意义上的回归分析已经发展成为完全不同的概念。
现代意义的回归分析是一种构建预测模型的方法,研究如何定量描述自变量和因变量之间的关系 -。我们可以将其理解为函数拟合。假设自变量和因变量之间存在某种函数关系,当我们用定量的数学形式去描述这种关系时,有一些参数是未知的。根据实际数据选取合适的参数,使得自变量和因变量之间的函数关系贴近真实观察值,这就是回归分析。
当自变量和因变量之间的关系为线性函数时,这种回归分析称为线性回归。完成回归分析后,我们可以利用得到的定量函数关系,根据给定的自变量计算出对应的因变量。而对于没有观察过的自变量取值,回归分析可以预测因变量的值。
二、最小二乘法
解决线性回归问题的方法叫作最小二乘(least square)法。这个方法的名称说明了它的目标,也就是最小化误差的平方和。
首先来看只有一个自变量(或者说自变量只有一维)的简单情况。设自变量为 x x x,因变量为 y y y,数据是若干对 ( x ( i ) , y ( i ) ) (x_{(i)},y_{(i)}) (x(i),y(i)))(我们用带括号的下标表示样本或者数据条目的编号,把普通下标留到后面处理多特征样本或者多维度数据时,作为特征或者维度的编号)。我们希望得出线性关系 y = w x + b y=wx+b y=wx+b。显然,无法使得每一个样本都精确满足 x ( i ) = ω x ( i ) + b x_{(i)}=\omega x_{(i)}+b x(i)=ωx(i)+b,只能使误差尽量小。假设有N个样本,那么总的误差E表示如下(1/2是为了方便求导数)。
E = 1 2 ∑ i = 1 N ( ω x ( i ) + b − y ( i ) ) 2 E = \frac{1}{2}\sum_{i=1}^{N}(\omega x_{(i)}+b-y_{(i)})^{2} E=21i=1∑N(ωx(i)+b−y(i))2
我们发现误差是 ω \omega ω和 b b b的二次函数,而二次函数的极值点是导数为0的位置。因此,可以设导数为0,然后求解方程。
∂ E ∂ ω = ∑ i = 1 N x ( i ) ( ω x ( i ) + b − y ( i ) ) = 0 ∂ E ∂ b = ∑ i = 1 N ( ω x ( i ) + b − y ( i ) ) = 0 \frac{\partial E}{\partial \omega} =\sum_{i=1}^{N} x_{(i)}(\omega x_{(i)}+b-y_{(i)})=0 \\ \frac{\partial E}{\partial b} =\sum_{i=1}^{N} (\omega x_{(i)}+b-y_{(i)})=0 ∂ω∂E=i=1∑Nx(i)(ωx(i)+b−y