代码编织梦想

题目描述

基于二次准则函数的 H-K \text{H-K} H-K算法较之于感知机算法的优点是 ( ) ? \text(\quad)? ()?

A \mathcal A \quad A 计算量小

B \mathcal B \quad B 可以判别问题是否线性可分

C \mathcal C\quad C 其解完全适用于非线性可分的情况

正确答案: B \mathcal B B

题目解析

关于感知机算法

感知机算法中,我们介绍了其对于线性分类的策略错误驱动
关于神经元内的阈值,这里合并在权重中。
L ( W ) = ∑ ( x ( i ) , y ( i ) ) ∈ D − y ( i ) ( W T x ( i ) ) \mathcal L(\mathcal W) = \sum_{(x^{(i)},y^{(i)}) \in \mathcal D} -y^{(i)} \left(\mathcal W^T x^{(i)}\right) L(W)=(x(i),y(i))Dy(i)(WTx(i))

关于二分类任务,它的判别思想很朴素,就是指示函数
I = { 1 if  y ( i ) ( W T x ( i ) ) < 0 0 otherwise \mathcal I = \begin{cases} 1 \quad \text{if }y^{(i)}\left(\mathcal W^Tx^{(i)}\right) < 0 \\ 0 \quad \text{otherwise} \end{cases} I={1if y(i)(WTx(i))<00otherwise

可以看出, L ( W ) \mathcal L(\mathcal W) L(W)明显是存在下界的,这个下界结果是 0 0 0:当 L ( W ) = 0 \mathcal L(\mathcal W) = 0 L(W)=0时,所有的样本均划分正确

但从损失函数 L ( W ) \mathcal L(\mathcal W) L(W)中,我们同样可以发现一些问题

  • 基于 L ( W ) \mathcal L(\mathcal W) L(W)产生的模型不唯一:只要满足 L ( W ) = 0 \mathcal L(\mathcal W) = 0 L(W)=0的直线模型,都可以作为样本空间的划分边界
  • 无法判别是否线性可分:如果出现了线性不可分的问题,例如:
    这是一个‘仅存在少量错误’的线性不可分情况。
    包含少量错误的线性不可分
    关于这种情况,我们的损失函数 L ( W ) \mathcal L(\mathcal W) L(W)永远无法达到终极的 0 0 0状态。而是一个小的正数值。我们从上帝视角看,我们知道该正数值就是基于线性不可分条件下的最优分类结果,但 L ( W ) \mathcal L(\mathcal W) L(W)只会认为样本学习错误。因而它的梯度优化永远不会结束。

回归感知机算法的第一个问题,其原因是:指示函数的这种判别方式并没有指向某个具体的解,而是一个解区域;而解区域中的任意一个解均对应一个划分正确的划分边界
解区域示例

最小化均方误差算法( Least Mean Square Error,LMSE \text{Least Mean Square Error,LMSE} Least Mean Square Error,LMSE)

给定样本集合 D = { ( x ( i ) , y ( i ) ) } i = 1 N \mathcal D = \{(x^{(i)},y^{(i)})\}_{i=1}^N D={(x(i),y(i))}i=1N,关于样本特征集合 X \mathcal X X可表示为如下形式:
X = ( x 1 ( 1 ) , x 2 ( 1 ) , ⋯   , x p ( 1 ) x 1 ( 2 ) , x 2 ( 2 ) , ⋯   , x p ( 2 ) ⋮ ⋮ ⋱ ⋮ x 1 ( N ) , x 2 ( N ) , ⋯   , x p ( N ) ) N × p \mathcal X = \begin{pmatrix} x_1^{(1)},& x_2^{(1)},& \cdots,& x_{p}^{(1)} \\ x_1^{(2)},& x_2^{(2)},&\cdots,& x_p^{(2)} \\ \vdots &\vdots &\ddots & \vdots \\ x_1^{(N)},&x_2^{(N)},& \cdots,& x_p^{(N)} \end{pmatrix}_{N \times p} X= x1(1),x1(2),x1(N),x2(1),x2(2),x2(N),,,,xp(1)xp(2)xp(N) N×p
如果我们不仅希望样本能够被正确分类,并且还希望从解区域中找到最优解。一个动机是:从解区域中找到一个确定解

基于上述动机,我们尝试给模型/决策边界 W T x ( i ) \mathcal W^Tx^{(i)} WTx(i)一个实际的物理意义

W T x ( i ) \mathcal W^Tx^{(i)} WTx(i)表示样本点 x ( i ) x^{(i)} x(i)到决策边界 W T x \mathcal W^Tx WTx距离,该距离记作 b ( i ) b^{(i)} b(i),并根据 b ( i ) b^{(i)} b(i)实际意义,它是一个正值
W T x ( i ) = b ( i ) > 0 \mathcal W^Tx^{(i)} = b^{(i)} > 0 WTx(i)=b(i)>0

那么 N N N个样本点自然能够得到 N N N方程
{ ∑ j = 1 p w j ⋅ x j ( 1 ) = b ( 1 ) ∑ j = 1 p w j ⋅ x j ( 2 ) = b ( 2 ) ⋮ ∑ j = 1 p w j ⋅ x j ( N ) = b ( N ) \begin{cases} \sum_{j=1}^p w_j \cdot x_j^{(1)} = b^{(1)} \\ \sum_{j=1}^p w_j \cdot x_j^{(2)} = b^{(2)} \\ \vdots \\ \sum_{j=1}^p w_j \cdot x_j^{(N)} = b^{(N)} \end{cases} j=1pwjxj(1)=b(1)j=1pwjxj(2)=b(2)j=1pwjxj(N)=b(N)
我们在降维——维数灾难中介绍过,通常情况下样本数量 N N N远远大于样本维度 p p p。这使得上面的方程组成为了一个超定方程组

除非数据集内的样本之间存在线性相关的情况,从而将行秩下降至 p p p,否则该超定方程组不存在精确解。至此,我们需要一个近似解

关于这个近似解的策略如何描述?将 b ^ = ( b ^ ( 1 ) , b ^ ( 2 ) , ⋯   , b ^ ( N ) ) N × 1 T \hat b = (\hat b^{(1)},\hat b^{(2)},\cdots,\hat b^{(N)})_{N \times 1}^T b^=(b^(1),b^(2),,b^(N))N×1T表示所有样本到最终分类决策边界距离的期望值组成的向量;我们在学习过程中得到的模型输出表示为:
该‘模型表示’指的就是模型学习过程中计算得到的距离结果。
X N × p W p × 1 = b = ( b ( 1 ) , b ( 2 ) , ⋯   , b ( N ) ) N × 1 T \mathcal X_{N \times p} \mathcal W_{p \times 1} = b = (b^{(1)},b^{(2)},\cdots,b^{(N)})_{N \times 1}^T XN×pWp×1=b=(b(1),b(2),,b(N))N×1T
模型输出 b b b期望结果 b ^ \hat b b^之间的误差向量 E \mathcal E E表示为:
E = b − b ^ = X W − b ^ \begin{aligned} \mathcal E & = b - \hat b \\ & = \mathcal X \mathcal W - \hat b \end{aligned} E=bb^=XWb^
由于向量 X W \mathcal X\mathcal W XW向量 b ^ \hat b b^内各元素之间的大小关系是不确定的,因而采用均方误差作为损失函数进行描述:
{ J ( W ) = 1 N ∣ ∣ X W − b ^ ∣ ∣ 2 = 1 N ( X W − b ^ ) T ( X W − b ^ ) arg ⁡ min ⁡ W J ( W ) \begin{cases} \begin{aligned} \mathcal J(\mathcal W) & = \frac{1}{N}||\mathcal X \mathcal W - \hat b||^2 \\ & = \frac{1}{N}(\mathcal X \mathcal W - \hat b)^T (\mathcal X \mathcal W - \hat b) \end{aligned} \\ \mathop{\arg\min}\limits_{\mathcal W} \mathcal J(\mathcal W) \end{cases} J(W)=N1∣∣XWb^2=N1(XWb^)T(XWb^)WargminJ(W)

求解 J ( W ) \mathcal J(\mathcal W) J(W)关于 W ( t ) \mathcal W^{(t)} W(t)的梯度,使用梯度下降法( Gradient Descent \text{Gradient Descent} Gradient Descent)对 W \mathcal W W进行迭代求解:
W ( t + 1 ) ⇐ W ( t ) − η ( t + 1 ) ⋅ ∇ W ( t ) J ( W ( t ) ) \mathcal W^{(t+1)} \Leftarrow \mathcal W^{(t)} - \eta^{(t+1)} \cdot \nabla_{\mathcal W^{(t)}} \mathcal J(\mathcal W^{(t)}) W(t+1)W(t)η(t+1)W(t)J(W(t))
关于梯度 ∇ W ( t ) J ( W ( t ) ) \nabla_{\mathcal W^{(t)}}\mathcal J(\mathcal W^{(t)}) W(t)J(W(t))可表示为:
链式求导法则。
∇ W ( t ) J ( W ) = ∂ J ( W ( t ) ) ∂ W ( t ) = ∂ J ( W ( t ) ) ∂ ( X W ( t ) − b ^ ) ⋅ ∂ ( X W ( t ) − b ^ ) ∂ W ( t ) = 2 N ( X W − b ^ ) N × 1 ⋅ X p × N T = 2 N ⋅ X T ( X W − b ^ ) \begin{aligned} \nabla_{\mathcal W^{(t)}}\mathcal J(\mathcal W) & = \frac{\partial \mathcal J(\mathcal W^{(t)})}{\partial \mathcal W^{(t)}} \\ & = \frac{\partial \mathcal J(\mathcal W^{(t)})}{\partial (\mathcal X \mathcal W^{(t)} - \hat b)} \cdot \frac{\partial (\mathcal X \mathcal W^{(t)} - \hat b)}{\partial \mathcal W^{(t)}} \\ & = \frac{2}{N}(\mathcal X \mathcal W - \hat b)_{N \times 1} \cdot \mathcal X^T_{p \times N} \\ & = \frac{2}{N} \cdot \mathcal X^T (\mathcal X \mathcal W - \hat b) \end{aligned} W(t)J(W)=W(t)J(W(t))=(XW(t)b^)J(W(t))W(t)(XW(t)b^)=N2(XWb^)N×1Xp×NT=N2XT(XWb^)
最终关于权重向量递推公式表示为:
常数 2 N \frac{2}{N} N2可以合并至学习率 η \eta η中.
W ( t + 1 ) ⇐ W ( t ) − η ( t + 1 ) ⋅ X T ( X W − b ^ ) \mathcal W^{(t+1)} \Leftarrow \mathcal W^{(t)} - \eta^{(t+1)} \cdot \mathcal X^T(\mathcal X \mathcal W - \hat b) W(t+1)W(t)η(t+1)XT(XWb^)

H-K \text{H-K} H-K算法

关于最小化均方误差算法,忽略了一个问题:期望结果 b ^ \hat b b^我们并没有给它制定规则。如果出现 b ^ \hat b b^给定有误的情况下,必然会出现错分样本的情况。

H-K \text{H-K} H-K算法的思路是:在使用均方误差优化权重 W \mathcal W W的同时,也优化 b ^ \hat b b^。此时,损失函数 J \mathcal J J是变量 W , b ^ \mathcal W,\hat b W,b^的函数。关于 b ^ \hat b b^的递推公式重新表示为:
b ^ ( t + 1 ) ⇐ b ^ ( t ) − η ( t + 1 ) ⋅ ∇ b ^ ( t ) J ( W ( t ) , b ^ ( t ) ) \hat b^{(t+1)} \Leftarrow \hat b^{(t)} -\eta^{(t+1)} \cdot \nabla_{\hat b^{(t)}} \mathcal J(\mathcal W^{(t)},\hat b^{(t)}) b^(t+1)b^(t)η(t+1)b^(t)J(W(t),b^(t))
其中梯度 ∇ b ^ ( t ) J ( W ( t ) , b ^ ( t ) ) \nabla_{\hat b^{(t)}} \mathcal J(\mathcal W^{(t)},\hat b^{(t)}) b^(t)J(W(t),b^(t))表示为:
依然是链式求导法则。
∇ b ^ ( t ) J ( W ( t ) , b ^ ( t ) ) = ∂ J ( W ( t ) ) ∂ ( X W ( t ) − b ^ ( t ) ) ⋅ ∂ ( X W ( t ) − b ^ ( t ) ) ∂ b ^ ( t ) = 2 N ( X W ( t ) − b ^ ( t ) ) ⋅ ( − 1 ) = − 2 N ( X W ( t ) − b ^ ( t ) ) \begin{aligned} \nabla_{\hat b^{(t)}} \mathcal J(\mathcal W^{(t)},\hat b^{(t)}) & = \frac{\partial \mathcal J(\mathcal W^{(t)})}{\partial (\mathcal X \mathcal W^{(t)} - \hat b^{(t)})} \cdot \frac{\partial (\mathcal X \mathcal W^{(t)} - \hat b^{(t)})}{\partial \hat b^{(t)}} \\ & = \frac{2}{N}(\mathcal X \mathcal W^{(t)} - \hat b^{(t)}) \cdot (-1) \\ & = - \frac{2}{N}(\mathcal X \mathcal W^{(t)} - \hat b^{(t)}) \end{aligned} b^(t)J(W(t),b^(t))=(XW(t)b^(t))J(W(t))b^(t)(XW(t)b^(t))=N2(XW(t)b^(t))(1)=N2(XW(t)b^(t))
最终, b ^ \hat b b^递推公式可表示为:
2 N \frac{2}{N} N2依然合并到学习率 η \eta η中。
b ^ ( t + 1 ) ⇐ b ^ ( t ) + η ( t + 1 ) ⋅ ( X W ( t ) − b ^ ( t ) ) = b ^ ( t ) + η ( t + 1 ) ⋅ E ( t ) \begin{aligned} \hat b^{(t+1)} & \Leftarrow \hat b^{(t)} + \eta^{(t+1)} \cdot (\mathcal X \mathcal W^{(t)} - \hat b^{(t)}) \\ & = \hat b^{(t)} +\eta^{(t+1)} \cdot \mathcal E^{(t)} \end{aligned} b^(t+1)b^(t)+η(t+1)(XW(t)b^(t))=b^(t)+η(t+1)E(t)
可以看出, b ^ \hat b b^迭代过程中的更新量误差向量 E \mathcal E E相关。由于 X W \mathcal X\mathcal W XW b ^ \hat b b^之间的大小关系不确定,因而 E \mathcal E E的正负也不确定。为了保证迭代过程中 b ^ \hat b b^恒正,将 b ^ \hat b b^的迭代过程修改为如下形式:
b ^ ( t + 1 ) ⇐ b ^ ( t ) + η ( t + 1 ) ⋅ ( E ( t ) + ∣ E ( t ) ∣ ) \hat b^{(t+1)} \Leftarrow \hat b^{(t)} + \eta^{(t+1)} \cdot \left(\mathcal E^{(t)} + \left|\mathcal E^{(t)}\right|\right) b^(t+1)b^(t)+η(t+1)(E(t)+ E(t) )
观察,这种迭代过程可能出现的情况:

  • 如果误差向量为正:意味着 ∣ E ( t ) ∣ = E ( t ) \left|\mathcal E^{(t)}\right| = \mathcal E^{(t)} E(t) =E(t)。那么原式可写作:
    多余的系数 2 2 2可以和上步骤中化简得 2 N \frac{2}{N} N2合并一下,当 N N N足够大时,这个数值变化极小;
    b ^ ( t + 1 ) ⇐ b ^ ( t ) + 2 ⋅ η ( t + 1 ) ⋅ E ( t ) = b ^ ( t ) + η ( t + 1 ) ⋅ E ( t ) \begin{aligned} \hat b^{(t+1)} & \Leftarrow \hat b^{(t)} + 2 \cdot \eta^{(t+1)} \cdot \mathcal E^{(t)} \\ & = \hat b^{(t)} + \eta^{(t+1)} \cdot \mathcal E^{(t)} \end{aligned} b^(t+1)b^(t)+2η(t+1)E(t)=b^(t)+η(t+1)E(t)
  • 如果误差向量为零或者为负: ∣ E ( t ) ∣ = − E ( t ) \left|\mathcal E^{(t)}\right| = - \mathcal E^{(t)} E(t) =E(t)。那么原式可写作:
    b ^ ( t + 1 ) ⇐ b ^ ( t ) + η ( t + 1 ) ⋅ 0 = b ^ ( t ) \begin{aligned} \hat b^{(t+1)} & \Leftarrow \hat b^{(t)} + \eta^{(t+1)} \cdot 0 \\ & = \hat b^{(t)} \end{aligned} b^(t+1)b^(t)+η(t+1)0=b^(t)
    这意味着 b ^ \hat b b^的数值只会单调递增,不会减小。

观察 W ( t ) \mathcal W^{(t)} W(t) b ^ ( t ) \hat b^{(t)} b^(t)之间的关联关系。根据最小化均方误差的描述, W ( t ) \mathcal W^{(t)} W(t)的最优解即给定当前期望结果 b ^ ( t ) \hat b^{(t)} b^(t)条件下,通过损失函数 J ( W ( t ) , b ^ ( t ) ) \mathcal J(\mathcal W^{(t)},\hat b^{(t)}) J(W(t),b^(t))取得的极值结果。因而有:
∇ W ( t ) J ( W ( t ) , b ^ ( t ) ) ≜ 0 ⇒ X T ( X W ( t ) − b ^ ( t ) ) = 0 ⇒ W ( t ) = ( X T X ) − 1 X T ⋅ b ^ ( t ) \begin{aligned} \nabla_{\mathcal W^{(t)}} \mathcal J(\mathcal W^{(t)},\hat b^{(t)}) \triangleq 0 & \Rightarrow \mathcal X^T (\mathcal X \mathcal W^{(t)} - \hat b^{(t)}) = 0 \\ & \Rightarrow \mathcal W^{(t)} = (\mathcal X^{T}\mathcal X)^{-1}\mathcal X^T \cdot \hat b^{(t)} \end{aligned} W(t)J(W(t),b^(t))0XT(XW(t)b^(t))=0W(t)=(XTX)1XTb^(t)
至此,将 b ^ ( t + 1 ) \hat b^{(t+1)} b^(t+1)的迭代过程代入到上式中:
W ( t + 1 ) = ( X T X ) − 1 X T ⋅ b ^ ( t + 1 ) = ( X T X ) − 1 X T [ b ( t ) + η ( t + 1 ) ⋅ ( E ( t ) + ∣ E ( t ) ∣ ) ] = ( X T X ) − 1 X T ⋅ b ^ ( t ) ⏟ W ( t ) + η ( t + 1 ) ⋅ ( X T X ) − 1 X T ⋅ ( E ( t ) + ∣ E ( t ) ∣ ) = W ( t ) + η ( t + 1 ) ⋅ ( X T X ) − 1 X T ⋅ ( X W ( t ) − b ^ ( t ) ) ⏟ E ( t ) + ( X T X ) − 1 X T ∣ E ( t ) ∣ = W ( t ) + η ( t + 1 ) ⋅ [ ( X T X ) − 1 X T ⋅ X ⏟ 单位矩阵 I W ( t ) − ( X T X ) − 1 X T ⋅ b ^ ( t ) ⏟ = 0 + ( X T X ) − 1 X T ∣ E ( t ) ∣ ] = W ( t ) + η ( t + 1 ) ( X T X ) − 1 X T ∣ E ( t ) ∣ \begin{aligned} \mathcal W^{(t+1)} & = (\mathcal X^{T}\mathcal X)^{-1}\mathcal X^T \cdot \hat b^{(t+1)} \\ & = (\mathcal X^{T}\mathcal X)^{-1}\mathcal X^T \left[b^{(t)} + \eta^{(t+1)} \cdot \left(\mathcal E^{(t)} + \left|\mathcal E^{(t)}\right|\right)\right] \\ & = \underbrace{(\mathcal X^{T}\mathcal X)^{-1}\mathcal X^T \cdot \hat b^{(t)}}_{\mathcal W^{(t)}} + \eta^{(t+1)} \cdot (\mathcal X^{T}\mathcal X)^{-1}\mathcal X^T \cdot \left(\mathcal E^{(t)} + \left|\mathcal E^{(t)}\right|\right) \\ & = \mathcal W^{(t)} + \eta^{(t+1)} \cdot (\mathcal X^{T}\mathcal X)^{-1}\mathcal X^T \cdot \underbrace{(\mathcal X \mathcal W^{(t)} - \hat b^{(t)})}_{\mathcal E^{(t)}} + (\mathcal X^{T}\mathcal X)^{-1}\mathcal X^T \left|\mathcal E^{(t)}\right| \\ & = \mathcal W^{(t)} + \eta^{(t+1)} \cdot \left[\underbrace{\underbrace{(\mathcal X^{T}\mathcal X)^{-1}\mathcal X^T \cdot \mathcal X}_{单位矩阵\mathcal I} \mathcal W^{(t)} - (\mathcal X^{T}\mathcal X)^{-1}\mathcal X^T \cdot \hat b^{(t)}}_{=0} + (\mathcal X^{T}\mathcal X)^{-1}\mathcal X^T \left|\mathcal E^{(t)}\right|\right] \\ & = \mathcal W^{(t)} + \eta^{(t+1)} (\mathcal X^T\mathcal X)^{-1} \mathcal X^T \left|\mathcal E^{(t)}\right| \end{aligned} W(t+1)=(XTX)1XTb^(t+1)=(XTX)1XT[b(t)+η(t+1)(E(t)+ E(t) )]=W(t) (XTX)1XTb^(t)+η(t+1)(XTX)1XT(E(t)+ E(t) )=W(t)+η(t+1)(XTX)1XTE(t) (XW(t)b^(t))+(XTX)1XT E(t) =W(t)+η(t+1) =0 单位矩阵I (XTX)1XTXW(t)(XTX)1XTb^(t)+(XTX)1XT E(t) =W(t)+η(t+1)(XTX)1XT E(t)
至此,关于 b ^ , W \hat b,\mathcal W b^,W的迭代过程已经求解。关于 H-K \text{H-K} H-K算法的完整流程表示如下:

初始化
初始化期望距离向量 b ^ ( 0 ) ⇒ N × 1 \hat b^{(0)} \Rightarrow N \times 1 b^(0)N×1,并通过 b ^ ( 0 ) \hat b^{(0)} b^(0)求解初始权重 W ( 0 ) = ( X T X ) − 1 X T b ( 0 ) \mathcal W^{(0)} = (\mathcal X^{T}\mathcal X)^{-1} \mathcal X^Tb^{(0)} W(0)=(XTX)1XTb(0)
循环过程 t = 1 , 2 , ⋯ t=1,2,\cdots t=1,2,

  • 计算误差向量 E ( t ) = X W ( t ) − b ^ ( t ) \mathcal E^{(t)} = \mathcal X\mathcal W^{(t)} - \hat b^{(t)} E(t)=XW(t)b^(t)
  • 权重 W ( t + 1 ) \mathcal W^{(t+1)} W(t+1)进行更新: W ( t + 1 ) = W ( t ) + η ( t + 1 ) ⋅ ( X T X ) − 1 X T ∣ E ( t ) ∣ \mathcal W^{(t+1)} = \mathcal W^{(t)} + \eta^{(t+1)} \cdot \left(\mathcal X^T\mathcal X\right)^{-1} \mathcal X^T \left|\mathcal E^{(t)}\right| W(t+1)=W(t)+η(t+1)(XTX)1XT E(t)
  • 期望距离向量进行更新: b ^ ( t + 1 ) = b ^ ( t ) + η ( t + 1 ) ⋅ ( E ( t ) + ∣ E ( t ) ∣ ) \hat b^{(t+1)} = \hat b^{(t)} + \eta^{(t+1)} \cdot \left(\mathcal E^{(t)} + \left|\mathcal E^{(t)}\right|\right) b^(t+1)=b^(t)+η(t+1)(E(t)+ E(t) )
  • 重复执行循环体,直到如下情况出现:
    E ( t ) \mathcal E^{(t)} E(t)自身是一个 N × 1 N \times 1 N×1的向量。
    • E ( t ) > 0 \mathcal E^{(t)} > 0 E(t)>0:各分量继续迭代,观察后续结果。期望: E ( t ) = 0 \mathcal E^{(t)} = 0 E(t)=0
    • E ( t ) = 0 \mathcal E^{(t)} = 0 E(t)=0:即 E ( t ) \mathcal E^{(t)} E(t)中的所有分量均为 0 0 0,此时各样本关于距离的预测结果 b ( t ) = b ^ ( t ) b^{(t)} = \hat b^{(t)} b(t)=b^(t)。算法结束,线性可分。
    • E ( t ) < 0 \mathcal E^{(t)} < 0 E(t)<0线性不可分

解释一下为什么 E ( t ) < 0 \mathcal E^{(t)}<0 E(t)<0线性不可分。这里并不是指 E ( t ) \mathcal E^{(t)} E(t)均小于0才被确定为线性不可分,由于超定方程组能够有解的条件是极苛刻的。如果在拟合足够长时间后,依然存在 E ( t ) \mathcal E^{(t)} E(t)部分分量 < 0 <0 <0,那意味着假设将该分量强行扶正为0,会存在更多的样本被错误划分

回归本题:
A \mathcal A \quad A H-K \text{H-K} H-K算法的计算量是巨大的。因为每次关于权重 W \mathcal W W的迭代都需要计算 ( X T X ) N × N (\mathcal X^T\mathcal X)_{N \times N} (XTX)N×N

并且关于 ( X T X ) − 1 (\mathcal X^T\mathcal X)^{-1} (XTX)1的计算并不是很稳定。在线性回归介绍中见到过这种格式。 X T X \mathcal X^T\mathcal X XTX我们能够保证它是一个实对称矩阵,但不能保证它是一个正定矩阵。因而矩阵 X T X \mathcal X^T\mathcal X XTX的逆是否存在,是值得商榷的问题。

B \mathcal B \quad B H-K \text{H-K} H-K算法判断是否线性可分的条件是误差 E ( t ) < 0 \mathcal E^{(t)} < 0 E(t)<0;但感知机算法无法判断是否存在非线性可分,最终会无限迭代下去,无法使损失函数 0 0 0

C \mathcal C \quad C H-K \text{H-K} H-K算法依然是线性分类模型,虽然在迭代过程中,尽可能使线性不可分的代价降至最小,但它无法将线性不可分的情况正确分类。

相关参考:
【线性分类器】(三)线性分类器的松弛求解: LEMS 算法,H-K 算法
超定方程组

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_34758157/article/details/129831853

人工智能实践:tensorflow笔记学习(三)——tensorflow框架_skytoby的博客-爱代码爱编程

搭建神经网络 大纲 3.1 张量、计算图、会话 3.2 前向传播 3.3 反向传播 目标 搭建神经网络,总结搭建八股  3.1 张量、计算图、会话 一、基本概念 基于Tensorflow的NN:用张量表示数据,用计算图搭建神经网络,用会话执行计算图,优化线上的权重(参数),得到模型。 张量:张量就是多维数组(列表),用“阶”表示张量的维度。 0阶张量

全连接网络基础_bxg1065283526的博客-爱代码爱编程

1.mnist 数据集:包含 7 万张黑底白字手写数字图片,其中 55000 张为训练集,5000 张为验证集,10000 张为测试集。每张图片大小为 28*28 像素,图片中纯黑色像素值为 0,纯白色像素值为 1。数据集的标签是长度为 10 的一维数组,数组中每个元素索引号表示对应数字出现的概率。 在将 mnist 数据集作为输入喂入神经网络时,需先将数

人工智能实践:tensorflow笔记学习(五)—— 全连接网络基础_skytoby的博客-爱代码爱编程

MNIST数据集输出手写数字识别准确率 大纲 5.1 MNIST数据集 5.2 模块化搭建神经网络 5.3 手写数字识别准确率输出 目标 利用MNIST数据集巩固模块化搭建神经网路的八股,实践前向传播和反向传播过程,编写测试程序输出手写数字识别准确率。 5.1 MNIST数据集 MNIST数据集:包含7万张黑底白字手写数字图片,其中55000张为训练集,

tensorflow学习笔记 (基础-第一篇)------ 搭建神经网络,总结搭建八股_david_hdw的博客-爱代码爱编程

---- 内容                                                                                                                     1、基本概念 2、神经网络的参数 3、神经网络的搭建  4、反向传播 5、搭建神经网络的八股

神经网络搭建“八股”_dl_none的博客-爱代码爱编程_神经网络八股什么意思

一、基本概念      1.张量 张量就是多维数组,“阶”表示张量的维度 0阶张量是一个单独的数,称为标量,如:S = 123 1阶张量是一个一维数组,称为向量,如:V = [1, 2, 3] 2阶张量是一个二维数组,称为矩阵,如:M = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] ....... n阶张量,如:t =

神经网络实践-mnist数据集上搭建全连接网络_学分的博客-爱代码爱编程

本节目标:搭建神经网络,在 mnist 数据集上训练模型,输出手写数字识别准确率。 (内心OS:太难了太难了!!!) ——————————————————————————————————————————————不可视的境界线 mnist 数据集:包含 7 万张黑底白字手写数字图片,其中 55000 张为训练集, 5000 张为验证集,10000 张为

八股(一天更新一点)_africancousin的博客-爱代码爱编程

决策树 分类回归都可以。返回的是类别/数据。 优点:可解释性、可以处理数值类和类别类的特征 缺点:不稳定(鲁棒性差)、结点太多导致过拟合、构建树是顺序化的过程,不好被并行。 随机森林 分别独立训练多个决策树,提升稳定性

“机器学习中的经典算法”面试知识点总结-svm+逻辑回归+决策树-百面机器学习系列3-爱代码爱编程

提示:在准备机器学习算法工程师面试的过程中,我主要参考《百面机器学习》去巩固自己的基础知识。本系列博客将以该书为主题,并以八股文的方式去概述整本书的内容,以尽量减少读者们的阅读作量,并方便读者可以随时随地的记忆背诵。

算法八股文——大厂真题——感知智能+数据挖掘-爱代码爱编程

文章目录 感知智能Batch Normalization 缺点?(百度)CNN 原理及优缺点?(车企)transformer 结构?(车企)lstm 与 GRU 区别?(车企)图像处理的基本知识:直方图均衡化、维纳滤

tensorflow2.0学习笔记-爱代码爱编程

tensorflow2.0学习笔记 正则化缓解过拟合 正则化在损失函数中引入模型复杂度指标,利用给w加权值,弱化了训练数据的噪声(一般不正则化b)

消费者行为分析-爱代码爱编程

目录 一、项目概述  1、项目简介 2、项目使用技术 3、项目系统框架 二、数据简介 1、数据来源 2、数据概览 三、环境搭建 1、ElasticSearch-head安装 1)插件安装 2)linux下单节点安装 3)修改linux配置文件 4)解压安装 5)修改配置文件 6)启动ElasticSearch 2、Mongo

18-爱代码爱编程

题目 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。 图示两个链表在节点 c1 开始相交: 题目数据保证整个链式结构中不存在环。 注意,函数返回结果后,链表必须 保持其原始结构 。 自定义评测: 评测系统的输入如下(你设计的程序不适用此输入):

4.链表算法-爱代码爱编程

链表算法、双链表算法、循环链表算法 文章目录 1.链表算法链表清单表示链表的类型基本操作插入操作删除操作反向操作 2.双链表算法双重链表清单表示基本操作插入操作实例 删除操作实例 在操作