1. 什么是感知机?
(1)感知机的定义是什么?
感知机(perceptron)是二类分类的线性分类模型,其输入为实例的特征向量,输出为实例的类别。感知机预测是用学习得到的感知机模型对新的输入实例进行分类,是神经网络与支持向量机的基础。
(2)感知机的取值是多少?
取+1和-1二值。
(3)感知机对应于输入空间(特征空间)中的什么?
感知机对应于输入空间中将实例划分为正负两类的分离的超平面,属于判别模型。
(4)感知机学习的目的是什么?
感知机学习旨在求出将训练数据进行线性划分的分离超平面,为此,导入基于误分类的损失函数,利用梯度下降法对损失函数进行极小化,求得感知机模型。
(5)感知机学习算法有什么特点?
感知机学习算法具有简单,并且易于实现的特点,分为原始形式和对偶形式。
(6)什么是感知机预测?
感知机预测是用学习得到的感知机模型对新输入实例进行分类。它是神经网络与支持向量机的基础。
2. 感知机学习策略
2.1 数据集的线性可分
给定数据集 𝑇={(𝑥1,𝑦1),(𝑥2,𝑦2),⋯,(𝑥𝑁,𝑦𝑁)}T={(x1,y1),(x2,y2),⋯,(xN,yN)},其中𝑥𝑖∈=𝐑𝑛 xi∈X=Rn, 𝑦𝑖∈Y={+1,−1} yi∈Y={+1,−1},𝑖=1,2,⋯,𝑁i=1,2,⋯,N,如果存在某个超平面 𝑆S 满足: 𝑤⋅𝑥+𝑏=0。能将数据集的正实例点和负实例点完全正确地划分到超平面的两侧,即对所有 𝑦𝑖=+1yi=+1 的实例 𝑥𝑖xi,有 𝑤⋅𝑥𝑖+𝑏>0w⋅xi+b>0;对所有 𝑦𝑖=−1yi=−1 的实例 𝑥𝑖xi,有 𝑤⋅𝑥𝑖+𝑏<0w⋅xi+b<0,则称数据集T为线性可分数据集 ;否则称数据集 T 线性不可分。
在学习感知机模型中,需要确保数据集线性可分,才能够找到一个完全将正实例点和负实例点正确分开的分离超平面,即才能够确定感知机模型参数 𝑤,𝑏w,b。
2.2 感知机学习策略
在我们知道感知机模型之后,机器学习方法三要素中的模型已经确定好,下面就需要制定我们的学习策略,即定义经验损失函数将其最小化。所以下一步需要找到感知机模型的损失函数。
2.2.1基于误分类点数量的策略
首先损失函数容易想到采用误分类点的数量作为损失函数,因为误分类点数量在不断优化下会越来越少,我们只需要通过算法将其数目优化到00自然就得到了最优模型。
但是这样的损失函数并不是 𝑤,𝑏w,b 连续可导(根本无法用函数形式来表达出误分类点的个数),所以无法进行优化。因此采取误分类点到平面的总距离作为损失函数,直观上来看,总距离越小越好。
2.2.2 基于误分类点总距离的策略
首先,输入空间中任意一点到超平面的距离公式为:(类比于点到直线的距离)1‖𝑤‖|𝑤⋅𝑥0+𝑏|1‖w‖|w⋅x0+b|
这里, ‖𝑤‖‖w‖ 为 𝑤w 的 L2范数。而我们知道每一个误分类点都满足:−𝑦𝑖(𝑤⋅𝑥𝑖+𝑏)>0−yi(w⋅xi+b)>0 因为当数据点正确值为+1的时候,误分类了,那么判断为-1,则有 (𝑤⋅𝑥𝑖+𝑏)<0(w⋅xi+b)<0,所以满足 −𝑦𝑖(𝑤⋅𝑥𝑖+𝑏)>0−yi(w⋅xi+b)>0,当数据点是正确值为 −1的时候,误分类了,那么判断为 +1,则有(𝑤⋅𝑥𝑖+𝑏)>0(w⋅xi+b)>0,所以满足 −𝑦𝑖(𝑤⋅𝑥𝑖+𝑏)>0−yi(w⋅xi+b)>0。