2. 感知机 3. k近邻法 4. 朴素贝叶斯

2. 感知机 3. k近邻法 4. 朴素贝叶斯

2. 感知机

1.感知机是根据输入实例的特征向量 x x x对其进行二类分类的线性分类模型:

输入空间(特征空间)是 X ⊆ R n X\subseteq R^n XRn,输出空间是 y ∈ { + 1 , − 1 } y\in \{+1,-1\} y{+1,1}

输入 x ∈ X x \in X xX 表示实例的特征向量,对应于输入空间(特征空间)的点。

输出 y ∈ Y y \in Y yY表示实例的类别,由输入空间到输出空间的如下函数:
f ( x ) = sign ⁡ ( w ⋅ x + b ) f(x)=\operatorname{sign}(w \cdot x+b) f(x)=sign(wx+b)

感知机模型对应于输入空间(特征空间)中的分离超平面 w ⋅ x + b = 0 w \cdot x+b=0 wx+b=0

其中 w w w是超平面的法向量, b b b是超平面的截距。

数据集的线性可分性:

对所有 y i = + 1 y_i=+1 yi=+1的实例 i i i,有 w ⋅ x i + b > 0 w \cdot x_i + b > 0 wxi+b>0

对所有 y i = − 1 y_i=-1 yi=1的实例 i i i,有 w ⋅ x i + b < 0 w \cdot x_i+b < 0 wxi+b<0

2.感知机学习的策略是极小化损失函数:
min ⁡ w , b L ( w , b ) = − ∑ x i ∈ M y i ( w ⋅ x i + b ) \min _{w, b} L(w, b)=-\sum_{x_{i} \in M} y_{i}\left(w \cdot x_{i}+b\right) w,bminL(w,b)=xiMyi(wxi+b)
损失函数对应于误分类点到分离超平面的总距离。

损失函数是非负的,如果没有误分类点,损失函数值是0。

3.感知机学习算法是基于随机梯度下降法的对损失函数的最优化算法,有原始形式和对偶形式。算法简单且易于实现。原始形式中,首先任意选取一个超平面,然后用梯度下降法不断极小化目标函数。在这个过程中一次随机选取一个误分类点使其梯度下降。

原始形式:

输入:训练数据集 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , … , ( x N , y N ) } T=\{(x_1,y_1),(x_2,y_2),\dots,(x_N,y_N)\} T={(x1,y1),(x2,y2),,(xN,yN)},其中 x i ∈ X = R n x_i \in X = R^n xiX=Rn y i ∈ Y = { − 1 , + 1 } y_i \in Y = \{-1,+1\} yiY={1,+1} i = 1 , 2 , … , N i = 1,2,\dots,N i=1,2,,N,学习率 η ( 0 < η ≤ 1 ) \eta(0 < \eta \le 1) η(0<η1)

输出: w , b w,b w,b。 感知机模型 f ( x ) = s i g n ( w ⋅ x + b ) f(x)=sign(w \cdot x + b) f(x)=sign(wx+b)

① 选取初值 w 0 , b 0 w_0,b_0 w0,b0

②在训练集中选取数据 ( x i , y i ) (x_i,y_i) (xi,yi)

③如果 y i ( w ⋅ x i + b ) ≤ 0 y_i(w \cdot x_i+b) \le 0 yi(wxi+b)0
w → w + η y i x i b → b + η y i w \to w +\eta y_ix_i \\ b \to b + \eta y_i ww+ηyixibb+ηyi
④转至②,直至训练集中没有误分类点

4.当训练数据集线性可分时,感知机学习算法是收敛的。感知机算法在训练数据集上的误分类次数 k k k满足不等式:
k ⩽ ( R γ ) 2 k \leqslant\left(\frac{R}{\gamma}\right)^{2} k(γR)2

当训练数据集线性可分时,感知机学习算法存在无穷多个解,其解由于不同的初值或不同的迭代顺序而可能有所不同。

3. k近邻法

1. k k k近邻法是基本且简单的分类与回归方法。 k k k近邻法的基本做法是:对给定的训练实例点和输入实例点,首先确定输入实例点的 k k k个最近邻训练实例点,然后利用这 k k k个训练实例点的类的多数来预测输入实例点的类。

2. k k k近邻模型对应于基于训练数据集对特征空间的一个划分。 k k k近邻法中,当训练集、距离度量、 k k k值及分类决策规则确定后,其结果唯一确定。

3. k k k近邻法三要素:距离度量、 k k k值的选择和分类决策规则。常用的距离度量是欧氏距离及更一般的pL距离。 k k k值小时, k k k近邻模型更复杂; k k k值大时, k k k近邻模型更简单。 k k k值的选择反映了对近似误差与估计误差之间的权衡,通常由交叉验证选择最优的 k k k

常用的分类决策规则是多数表决,对应于经验风险最小化。

4. k k k近邻法的实现需要考虑如何快速搜索k个最近邻点。kd树是一种便于对k维空间中的数据进行快速检索的数据结构。kd树是二叉树,表示对 k k k维空间的一个划分,其每个结点对应于 k k k维空间划分中的一个超矩形区域。利用kd树可以省去对大部分数据点的搜索, 从而减少搜索的计算量。

距离度量

设特征空间 x x x n n n维实数向量空间 , x i , x j ∈ X x_{i}, x_{j} \in \mathcal{X} xi,xjX, x i = ( x i ( 1 ) , x i ( 2 ) , ⋯   , x i ( n ) ) T x_{i}=\left(x_{i}^{(1)}, x_{i}^{(2)}, \cdots, x_{i}^{(n)}\right)^{\mathrm{T}} xi=(xi(1),xi(2),,xi(n))T, x j = ( x j ( 1 ) , x j ( 2 ) , ⋯   , x j ( n ) ) T x_{j}=\left(x_{j}^{(1)}, x_{j}^{(2)}, \cdots, x_{j}^{(n)}\right)^{\mathrm{T}} xj=(xj(1),xj(2),,xj(n))T,则: x i x_i xi, x j x_j xj L p L_p Lp距离定义为:

L p ( x i , x j ) = ( ∑ i = 1 n ∣ x i ( i ) − x j ( l ) ∣ p ) 1 p L_{p}\left(x_{i}, x_{j}\right)=\left(\sum_{i=1}^{n}\left|x_{i}^{(i)}-x_{j}^{(l)}\right|^{p}\right)^{\frac{1}{p}} Lp(xi,xj)=(i=1nxi(i)xj(l)p)p1

- p = 1 p= 1 p=1 曼哈顿距离

- p = 2 p= 2 p=2 欧氏距离

- p = ∞ p= \infty p= 切比雪夫距离

kd树

kd树是一种对k维空间中的实例点进行存储以便对其进行快速检索的树形数据结构。

kd树是二叉树,表示对 k k k维空间的一个划分(partition)。构造kd树相当于不断地用垂直于坐标轴的超平面将 k k k维空间切分,构成一系列的k维超矩形区域。kd树的每个结点对应于一个 k k k维超矩形区域。

构造kd树的方法如下:

构造根结点,使根结点对应于 k k k维空间中包含所有实例点的超矩形区域;通过下面的递归方法,不断地对 k k k维空间进行切分,生成子结点。在超矩形区域(结点)上选择一个坐标轴和在此坐标轴上的一个切分点,确定一个超平面,这个超平面通过选定的切分点并垂直于选定的坐标轴,将当前超矩形区域切分为左右两个子区域(子结点);这时,实例被分到两个子区域。这个过程直到子区域内没有实例时终止(终止时的结点为叶结点)。在此过程中,将实例保存在相应的结点上。

通常,依次选择坐标轴对空间切分,选择训练实例点在选定坐标轴上的中位数(median)为切分点,这样得到的kd树是平衡的。注意,平衡的kd树搜索时的效率未必是最优的。

构造平衡kd树

输入: k k k维空间数据集 T = { x 1 , x 2 , … , x N } T=\{x_1,x_2,…,x_N\} T{x1x2,,xN},其中 x i = ( x i ( 1 ) , x i ( 2 ) , ⋯   , x i ( k ) ) T x_{i}=\left(x_{i}^{(1)}, x_{i}^{(2)}, \cdots, x_{i}^{(k)}\right)^{\mathrm{T}} xi=(xi(1),xi(2),,xi(k))T i = 1 , 2 , … , N i=1,2,…,N i1,2,,N

输出:kd树。

(1)开始:构造根结点,根结点对应于包含 T T T k k k维空间的超矩形区域。

选择 x ( 1 ) x^{(1)} x(1)为坐标轴,以T中所有实例的 x ( 1 ) x^{(1)} x(1)坐标的中位数为切分点,将根结点对应的超矩形区域切分为两个子区域。切分由通过切分点并与坐标轴 x ( 1 ) x^{(1)} x(1)垂直的超平面实现。

由根结点生成深度为1的左、右子结点:左子结点对应坐标 x ( 1 ) x^{(1)} x(1)小于切分点的子区域, 右子结点对应于坐标 x ( 1 ) x^{(1)} x(1)大于切分点的子区域。

将落在切分超平面上的实例点保存在根结点。

(2)重复:对深度为 j j j的结点,选择 x ( 1 ) x^{(1)} x(1)为切分的坐标轴, l = j ( m o d k ) + 1 l=j(modk)+1 lj(modk)+1,以该结点的区域中所有实例的 x ( 1 ) x^{(1)} x(1)坐标的中位数为切分点,将该结点对应的超矩形区域切分为两个子区域。切分由通过切分点并与坐标轴 x ( 1 ) x^{(1)} x(1)垂直的超平面实现。

由该结点生成深度为 j + 1 j+1 j+1的左、右子结点:左子结点对应坐标 x ( 1 ) x^{(1)} x(1)小于切分点的子区域,右子结点对应坐标 x ( 1 ) x^{(1)} x(1)大于切分点的子区域。

将落在切分超平面上的实例点保存在该结点。

(3)直到两个子区域没有实例存在时停止。从而形成kd树的区域划分。

4. 朴素贝叶斯

输入空间 X ⊆ R n X \subseteq R^n XRn n n n为向量集合

输出空间为类标记集合 y = { c 1 , c 2 , … c k } y=\{c_1,c_2,\dots c_k\} y={c1,c2,ck}

P ( X , Y ) P(X,Y) P(X,Y) X X X Y Y Y的联合概率分布。训练数据集
T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , … , ( x n , y n ) } T = \{(x_1,y_1),(x_2,y_2),\dots,(x_n,y_n)\} T={(x1,y1),(x2,y2),,(xn,yn)}
P ( X , Y ) P(X,Y) P(X,Y)独立同分布产生

1.朴素贝叶斯法是典型的生成学习方法。生成方法由训练数据学习联合概率分布 P ( X , Y ) P(X,Y) P(X,Y),然后求得后验概率分布 P ( Y ∣ X ) P(Y|X) P(YX)。具体来说,利用训练数据学习 P ( X ∣ Y ) P(X|Y) P(XY) P ( Y ) P(Y) P(Y)的估计,得到联合概率分布: P ( X , Y ) = P ( Y ) P ( X ∣ Y ) P(X,Y)=P(Y)P(X|Y) P(X,Y)P(Y)P(XY)

概率估计方法可以是极大似然估计或贝叶斯估计。

2.朴素贝叶斯法的基本假设是条件独立性,
P ( X = x ∣ Y = c k ) = P ( X ( 1 ) = x ( 1 ) , ⋯   , X ( n ) = x ( n ) ∣ Y = c k ) = ∏ j = 1 n P ( X ( j ) = x ( j ) ∣ Y = c k ) \begin{aligned} P(X&=x | Y=c_{k} )=P\left(X^{(1)}=x^{(1)}, \cdots, X^{(n)}=x^{(n)} | Y=c_{k}\right) \\ &=\prod_{j=1}^{n} P\left(X^{(j)}=x^{(j)} | Y=c_{k}\right) \end{aligned} P(X=xY=ck)=P(X(1)=x(1),,X(n)=x(n)Y=ck)=j=1nP(X(j)=x(j)Y=ck)
这是一个较强的假设。由于这一假设,模型包含的条件概率的数量大为减少,朴素贝叶斯法的学习与预测大为简化。因而朴素贝叶斯法高效,且易于实现。其缺点是分类的性能不一定很高。

3.朴素贝叶斯法利用贝叶斯定理与学到的联合概率模型进行分类预测。

P ( Y ∣ X ) = P ( X , Y ) P ( X ) = P ( Y ) P ( X ∣ Y ) ∑ Y P ( Y ) P ( X ∣ Y ) P(Y | X)=\frac{P(X, Y)}{P(X)}=\frac{P(Y) P(X | Y)}{\sum_{Y} P(Y) P(X | Y)} \\ P(YX)=P(X)P(X,Y)=YP(Y)P(XY)P(Y)P(XY)

通过上述朴素贝叶斯公式进行带入
y = f ( x ) = a r g max ⁡ c k P ( Y = c k ) ∏ j P ( X ( j ) = x ( j ) ∣ Y = c k ) ∑ k P ( Y = c k ) ∏ j P ( X ( j ) = x ( j ) ∣ Y = c k ) k = 1 , 2 , … , K y = f(x) = arg \max_{c_k}\frac{P(Y = c_k)\prod \limits_{j} P(X^{(j)} = x^{(j)} | Y = c_k)}{\sum \limits_k P(Y = c_k)\prod \limits_{j} P(X^{(j)} = x^{(j)} | Y = c_k)} \qquad k = 1, 2, \dots, K y=f(x)=argckmaxkP(Y=ck)jP(X(j)=x(j)Y=ck)P(Y=ck)jP(X(j)=x(j)Y=ck)k=1,2,,K

将输入 x x x分到后验概率最大的类 y y y
y = arg ⁡ max ⁡ c k P ( Y = c k ) ∏ j = 1 n P ( X ( j ) = x ( j ) ∣ Y = c k ) y=\arg \max _{c_{k}} P\left(Y=c_{k}\right) \prod_{j=1}^{n} P\left(X^{(j)}=x^{(j)} | Y=c_{k}\right) y=argckmaxP(Y=ck)j=1nP(X(j)=x(j)Y=ck)

后验概率最大等价于0-1损失函数时的期望风险最小化。

先验概率 P ( Y = c k ) P(Y = c_k) P(Y=ck)极大似然估计
P ( Y = c k ) = ∑ i = 1 N I ( y i = c k ) N k = 1 , 2 , … , K P(Y = c_k) = \frac{\sum \limits_{i=1} ^ {N} I (y _ i = c_k)}{N} \qquad k = 1,2, \dots,K P(Y=ck)=Ni=1NI(yi=ck)k=1,2,,K
设第 j j j个特征 x ( j ) x^{(j)} x(j)可能取值集合为 { a j 1 , … , a j S j } \{a_{j1},\dots,a_{jS_j}\} {aj1,,ajSj},条件概率 P ( X ( j ) = a j l , y i = c k ) P(X^{(j)} = a_{jl},y_i = c_k) P(X(j)=ajl,yi=ck)的极大似然估计是:
P ( X ( j ) = a j l ∣ Y = c k ) = ∑ i = 1 N I ( X i ( j ) = a j l , y i = c k ) ∑ i = 1 N I ( y i = c k ) P(X^{(j)}=a_{jl}|Y=c_k) = \frac{\sum \limits _ {i=1}^NI(X_i^{(j)}=a_{jl},y_i=c_k)}{\sum \limits_{i=1} ^ N I(y_i = c_k)} P(X(j)=ajlY=ck)=i=1NI(yi=ck)i=1NI(Xi(j)=ajl,yi=ck)
x i ( j ) x_i^{(j)} xi(j)是第 i i i个样本的第 j j j个特征, a j l a_{jl} ajl是第 j j j个特征可能取的第 l l l个值

贝叶斯估计

P ( X ( j ) = a j l ∣ Y = c k ) = ∑ i = 1 N I ( X i ( j ) = a j l , y i = c k ) + λ ∑ i = 1 N I ( y i = c k ) + s j λ P λ ( Y = c k ) = ∑ i = 1 N I ( y i = c k ) + λ N + K λ P(X^{(j)}=a_{jl}|Y=c_k) = \frac{\sum \limits _ {i=1}^NI(X_i^{(j)}=a_{jl},y_i=c_k) + \lambda}{\sum \limits_{i=1} ^ N I(y_i = c_k) + s_j \lambda} \\ P_{\lambda}(Y = c_k)=\frac{\sum \limits_{i=1}^{N}I(y_i=c_k)+\lambda}{N + K \lambda} P(X(j)=ajlY=ck)=i=1NI(yi=ck)+sjλi=1NI(Xi(j)=ajl,yi=ck)+λPλ(Y=ck)=N+Kλi=1NI(yi=ck)+λ

模型:

- 高斯模型

- 多项式模型

- 伯努利模型

GaussianNB 高斯朴素贝叶斯

特征的可能性被假设为高斯

概率密度函数:
P ( x i ∣ y k ) = 1 2 π σ y k 2 e x p ( − ( x i − μ y k ) 2 2 σ y k 2 ) P(x_i | y_k)=\frac{1}{\sqrt{2\pi\sigma^2_{yk}}}exp(-\frac{(x_i-\mu_{yk})^2}{2\sigma^2_{yk}}) P(xiyk)=2πσyk2 1exp(2σyk2(xiμyk)2)

数学期望(mean): μ \mu μ

方差: σ 2 = ∑ ( X − μ ) 2 N \sigma^2=\frac{\sum(X-\mu)^2}{N} σ2=N(Xμ)2

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值