首页 > 其他分享 >南瓜书公式详解------第五章(反向传播、波尔兹曼机)

南瓜书公式详解------第五章(反向传播、波尔兹曼机)

时间:2024-08-16 12:27:22浏览次数:14  
标签:partial 函数 boldsymbol 详解 波尔兹曼 Delta ------ hat 隐藏

式5.2(感知学习参数更新)

Δ w i = η ( y − y ^ ) x i \Delta w_i=\eta(y-\hat{y})x_i Δwi​=η(y−y^​)xi​
给出的公式是在线性回归或神经网络权重更新中使用的梯度下降算法的基本形式。这个公式用于根据当前的预测误差调整权重 w i w_i wi​。

公式中的符号含义如下:

  • Δ w i \Delta w_i Δwi​:权重 w i w_i wi​ 的变化量。
  • η \eta η:学习率(Learning Rate),一个超参数,用于控制权重更新的步长。
  • y y y:真实目标值。
  • y ^ \hat{y} y^​:模型预测值。
  • x i x_i xi​:输入特征值,与权重 w i w_i wi​ 相乘的值。

梯度下降算法的基本思想是最小化预测误差,即 y y y 和 y ^ \hat{y} y^​ 之间的差异。这个差异通常称为损失函数(Loss Function),可以是均方误差(Mean Squared Error, MSE)或其他度量预测误差的函数。

权重更新的公式是:

Δ w i = η ( y − y ^ ) x i \Delta w_i = \eta(y - \hat{y})x_i Δwi​=η(y−y^​)xi​

这个公式的含义是:

  1. 首先计算预测误差,即 y − y ^ y - \hat{y} y−y^​。
  2. 将预测误差乘以学习率 η \eta η,得到一个标量乘积。
  3. 将这个标量乘积乘以特征值 x i x_i xi​,得到权重 w i w_i wi​ 的变化量 Δ w i \Delta w_i Δwi​。

然后,使用这个变化量来更新权重:

w i : = w i + Δ w i w_i := w_i + \Delta w_i wi​:=wi​+Δwi​

这个过程在每次迭代中重复执行,直到满足停止条件,例如损失函数的值不再显著减小,或者达到预设的迭代次数。

梯度下降算法是机器学习中用于优化问题的一种常用方法,特别是在训练线性模型和神经网络时。通过适当选择学习率和其他超参数,梯度下降算法可以帮助我们找到损失函数的最小值,从而训练出性能良好的模型。

式5.10 (反向传播1)

g j = − ∂ E k ∂ y ^ j k ⋅ ∂ y ^ j k ∂ β j = − ( y ^ j k − y j k ) f ′ ( β j − θ j ) = y ^ j k ( 1 − y ^ j k ) ( y j k − y ^ j k ) \begin{aligned} g_j&=-\frac{\partial {E_k}}{\partial{\hat{y}_j^k}} \cdot \frac{\partial{\hat{y}_j^k}}{\partial{\beta_j}} \\&=-( \hat{y}_j^k-y_j^k ) f ^{\prime} (\beta_j-\theta_j) \\&=\hat{y}_j^k(1-\hat{y}_j^k)(y_j^k-\hat{y}_j^k) \end{aligned} gj​​=−∂y^​jk​∂Ek​​⋅∂βj​∂y^​jk​​=−(y^​jk​−yjk​)f′(βj​−θj​)=y^​jk​(1−y^​jk​)(yjk​−y^​jk​)​

给出的公式是神经网络中反向传播算法的一部分,用于计算损失函数 E k E_k Ek​ 关于第 j j j 个神经元第 k k k 层输出 y ^ j k \hat{y}_j^k y^​jk​ 的梯度 g j g_j gj​。这个梯度是权重 β j \beta_j βj​ 更新的关键部分。

公式中的符号含义如下:

  • g j g_j gj​:第 j j j 个神经元在第 k k k 层的梯度。
  • E k E_k Ek​:第 k k k 层的损失函数。
  • y ^ j k \hat{y}_j^k y^​jk​:第 j j j 个神经元在第 k k k 层的预测输出。
  • y j k y_j^k yjk​:第 j j j 个神经元在第 k k k 层的真实输出或目标值。
  • β j \beta_j βj​:第 j j j 个神经元的输入加权求和(不包括偏置项)。
  • θ j \theta_j θj​:第 j j j 个神经元的阈值或偏置。
  • f ′ ( β j − θ j ) f'(\beta_j - \theta_j) f′(βj​−θj​):激活函数 f f f 对输入 β j − θ j \beta_j - \theta_j βj​−θj​ 的导数。

梯度计算的步骤如下:

  1. 计算损失函数 E k E_k Ek​ 关于预测输出 y ^ j k \hat{y}_j^k y^​jk​ 的偏导数,这是损失对输出的敏感度。

∂ E k ∂ y ^ j k = − ( y ^ j k − y j k ) \frac{\partial E_k}{\partial \hat{y}_j^k} = -(\hat{y}_j^k - y_j^k) ∂y^​jk​∂Ek​​=−(y^​jk​−yjk​)

  1. 计算预测输出 y ^ j k \hat{y}_j^k y^​jk​ 关于权重 β j \beta_j βj​ 的偏导数,这通常涉及激活函数 f f f 的导数。

∂ y ^ j k ∂ β j = f ′ ( β j − θ j ) \frac{\partial \hat{y}_j^k}{\partial \beta_j} = f'(\beta_j - \theta_j) ∂βj​∂y^​jk​​=f′(βj​−θj​)

  1. 将两个偏导数相乘,得到损失函数 E k E_k Ek​ 关于权重 β j \beta_j βj​ 的梯度。

g j = − ∂ E k ∂ y ^ j k ⋅ ∂ y ^ j k ∂ β j g_j = -\frac{\partial E_k}{\partial \hat{y}_j^k} \cdot \frac{\partial \hat{y}_j^k}{\partial \beta_j} gj​=−∂y^​jk​∂Ek​​⋅∂βj​∂y^​jk​​

  1. 对于 Sigmoid 激活函数,其导数 f ′ ( x ) f'(x) f′(x) 是 y ^ ( 1 − y ^ ) \hat{y}(1 - \hat{y}) y^​(1−y^​)。如果 y ^ j k \hat{y}_j^k y^​jk​ 是 Sigmoid 函数的输出,那么 f ′ ( β j − θ j ) = y ^ j k ( 1 − y ^ j k ) f'(\beta_j - \theta_j) = \hat{y}_j^k(1 - \hat{y}_j^k) f′(βj​−θj​)=y^​jk​(1−y^​jk​)。

  2. 代入激活函数的导数,得到梯度的最终表达式:

g j = y ^ j k ( 1 − y ^ j k ) ( y j k − y ^ j k ) g_j = \hat{y}_j^k(1 - \hat{y}_j^k)(y_j^k - \hat{y}_j^k) gj​=y^​jk​(1−y^​jk​)(yjk​−y^​jk​)

这个梯度 g j g_j gj​ 表示了在训练过程中如何调整权重 β j \beta_j βj​ 以减少损失函数 E k E_k Ek​ 的值。在实际应用中,这个梯度将用于更新权重,通过梯度下降或其变体进行优化。

式5.12(反向传播2)

Δ θ j = − η g j \Delta \theta_j = -\eta g_j Δθj​=−ηgj​
给出的公式是神经网络中反向传播算法的一部分,用于更新第 j j j 个神经元的偏置项 θ j \theta_j θj​。这个更新过程是梯度下降算法的应用,目的是通过最小化损失函数来优化神经网络的参数。

公式中的符号含义如下:

  • Δ θ j \Delta \theta_j Δθj​:第 j j j 个神经元偏置项的更新量。
  • η \eta η:学习率(Learning Rate),一个超参数,用于控制更新步长的大小。
  • g j g_j gj​:第 j j j 个神经元的梯度,通常计算为损失函数关于该神经元输出的导数。

偏置项更新的公式是:

Δ θ j = − η g j \Delta \theta_j = -\eta g_j Δθj​=−ηgj​

这个公式的含义是:

  1. 计算第 j j j 个神经元的梯度 g j g_j gj​,它反映了损失函数对神经元输出的敏感度。
  2. 梯度 g j g_j gj​ 乘以学习率 η \eta η,得到更新量 Δ θ j \Delta \theta_j Δθj​。
  3. 更新量与当前偏置值相减,更新偏置项:

θ j : = θ j + Δ θ j \theta_j := \theta_j + \Delta \theta_j θj​:=θj​+Δθj​

在神经网络的训练过程中,每次迭代都会进行这样的参数更新,直到满足某个停止条件,如损失函数值下降到一个很小的值,或者达到预设的最大迭代次数。

梯度 g j g_j gj​ 的具体计算方法依赖于所使用的激活函数和损失函数。例如,在使用交叉熵损失函数和 Sigmoid 激活函数的情况下,梯度可以表示为:

g j = y ^ j ( 1 − y ^ j ) ( y j − y ^ j ) g_j = \hat{y}_j(1 - \hat{y}_j)(y_j - \hat{y}_j) gj​=y^​j​(1−y^​j​)(yj​−y^​j​)

这里, y ^ j \hat{y}_j y^​j​ 是神经元的预测输出, y j y_j yj​ 是真实目标值。这个梯度反映了预测输出与目标值之间的差异,用于指导偏置项的更新。

式5.13(反向传播3)

Δ v i h = η e h x i \Delta v_{ih} = \eta e_h x_i Δvih​=ηeh​xi​
给出的公式是神经网络中反向传播算法的一部分,用于更新从输入层到隐藏层的权重 v i h v_{ih} vih​。这个更新过程同样基于梯度下降算法,目的是通过减少网络的总体误差来优化权重。

公式中的符号含义如下:

  • Δ v i h \Delta v_{ih} Δvih​:从输入单元 i i i 到隐藏单元 h h h 的权重的更新量。
  • η \eta η:学习率(Learning Rate),一个超参数,用于控制权重更新的步长。
  • e h e_h eh​:隐藏单元 h h h 的误差项,通常计算为损失函数关于隐藏层输出的导数乘以隐藏层激活函数的导数。
  • x i x_i xi​:输入层单元 i i i 的激活值或输入特征值。

权重更新的公式是:

Δ v i h = η e h x i \Delta v_{ih} = \eta e_h x_i Δvih​=ηeh​xi​

这个公式的含义是:

  1. 计算隐藏单元 h h h 的误差项 e h e_h eh​,这通常是后向传播过程中计算得到的,反映了损失函数对隐藏层输出的敏感度。
  2. 将误差项 e h e_h eh​ 乘以学习率 η \eta η,得到一个标量乘积。
  3. 将这个标量乘积乘以输入值 x i x_i xi​,得到权重 v i h v_{ih} vih​ 的更新量 Δ v i h \Delta v_{ih} Δvih​。
  4. 更新权重:

v i h : = v i h + Δ v i h v_{ih} := v_{ih} + \Delta v_{ih} vih​:=vih​+Δvih​

在神经网络的训练过程中,这样的权重更新会在每次迭代中进行,目的是通过梯度下降或其变体来最小化损失函数。

误差项 e h e_h eh​ 的具体计算方法依赖于网络的架构和所使用的损失函数。在多层网络中,隐藏层的误差项通常由更高层(如输出层)的误差项通过链式法则逐层传递计算得到。这个过程涉及到对每个层的激活函数求导,并将这些导数相乘以传播误差。

式5.14(反向传播4)

Δ γ h = − η e h \Delta \gamma_h= -\eta e_h Δγh​=−ηeh​
给出的公式是神经网络中反向传播算法的一部分,用于更新第 h h h 个隐藏单元的偏置项 γ h \gamma_h γh​。这个更新过程旨在通过减少网络的总体误差来优化隐藏层的偏置参数。

公式中的符号含义如下:

  • Δ γ h \Delta \gamma_h Δγh​:第 h h h 个隐藏单元偏置项的更新量。
  • η \eta η:学习率(Learning Rate),一个超参数,用于控制更新步长的大小。
  • e h e_h eh​:第 h h h 个隐藏单元的误差项,通常计算为损失函数关于隐藏层输出的导数乘以隐藏层激活函数的导数。

偏置项更新的公式是:

Δ γ h = − η e h \Delta \gamma_h = -\eta e_h Δγh​=−ηeh​

这个公式的含义是:

  1. 计算第 h h h 个隐藏单元的误差项 e h e_h eh​,它反映了损失函数对隐藏层输出的敏感度。
  2. 将误差项 e h e_h eh​ 乘以学习率 η \eta η 的负值,得到更新量 Δ γ h \Delta \gamma_h Δγh​。
  3. 更新隐藏单元的偏置项:

γ h : = γ h + Δ γ h \gamma_h := \gamma_h + \Delta \gamma_h γh​:=γh​+Δγh​

在神经网络的训练过程中,每次迭代都会进行这样的参数更新,目的是通过梯度下降或其变体来最小化损失函数。

误差项 e h e_h eh​ 的具体计算方法依赖于网络的架构和所使用的损失函数。在多层网络中,隐藏层的误差项通常由更高层(如输出层)的误差项通过链式法则逐层传递计算得到。这个过程涉及到对每个层的激活函数求导,并将这些导数相乘以传播误差。通过这种方式,网络可以学习如何调整其隐藏层的偏置项,以改善整体的预测性能。

式5.15(反向传播的误差项计算)

e h = − ∂ E k ∂ b h ⋅ ∂ b h ∂ α h = − ∑ j = 1 l ∂ E k ∂ β j ⋅ ∂ β j ∂ b h f ′ ( α h − γ h ) = ∑ j = 1 l w h j g j f ′ ( α h − γ h ) = b h ( 1 − b h ) ∑ j = 1 l w h j g j \begin{aligned} e_h&=-\frac{\partial {E_k}}{\partial{b_h}}\cdot \frac{\partial{b_h}}{\partial{\alpha_h}} \\&=-\sum_{j=1}^l \frac{\partial {E_k}}{\partial{\beta_j}}\cdot \frac{\partial{\beta_j}}{\partial{b_h}}f^{\prime}(\alpha_h-\gamma_h) \\&=\sum_{j=1}^l w_{hj}g_j f^{\prime}(\alpha_h-\gamma_h) \\&=b_h(1-b_h)\sum_{j=1}^l w_{hj}g_j \end{aligned} eh​​=−∂bh​∂Ek​​⋅∂αh​∂bh​​=−j=1∑l​∂βj​∂Ek​​⋅∂bh​∂βj​​f′(αh​−γh​)=j=1∑l​whj​gj​f′(αh​−γh​)=bh​(1−bh​)j=1∑l​whj​gj​​

给出的公式描述了在神经网络中反向传播算法里,如何计算第 h h h 个隐藏单元的误差项 e h e_h eh​。这个误差项用于在训练过程中更新隐藏层的权重和偏置。以下是公式的逐步解释:

  1. 误差项的定义
    e h = − ∂ E k ∂ b h ⋅ ∂ b h ∂ α h e_h = -\frac{\partial E_k}{\partial b_h} \cdot \frac{\partial b_h}{\partial \alpha_h} eh​=−∂bh​∂Ek​​⋅∂αh​∂bh​​
    这里, E k E_k Ek​ 是损失函数, b h b_h bh​ 是隐藏单元 h h h 的输出(在某些文献中可能用 y ^ h \hat{y}_h y^​h​ 表示), α h \alpha_h αh​ 是隐藏单元 h h h 的输入加权和(不包括偏置), f ′ ( α h − γ h ) f'(\alpha_h - \gamma_h) f′(αh​−γh​) 是激活函数关于输入的导数。

  2. 链式法则应用
    e h = − ∑ j = 1 l ∂ E k ∂ β j ⋅ ∂ β j ∂ b h f ′ ( α h − γ h ) e_h = -\sum_{j=1}^l \frac{\partial E_k}{\partial \beta_j} \cdot \frac{\partial \beta_j}{\partial b_h} f'(\alpha_h - \gamma_h) eh​=−j=1∑l​∂βj​∂Ek​​⋅∂bh​∂βj​​f′(αh​−γh​)
    这里, β j \beta_j βj​ 表示第 j j j 个输出单元的输入加权和(不包括偏置), l l l 是输出单元的数量。这步通过链式法则展开,其中 ∂ β j ∂ b h \frac{\partial \beta_j}{\partial b_h} ∂bh​∂βj​​ 通常为 0 除非 b h b_h bh​ 直接影响 β j \beta_j βj​。

  3. 权重因子引入
    e h = ∑ j = 1 l w h j g j f ′ ( α h − γ h ) e_h = \sum_{j=1}^l w_{hj} g_j f'(\alpha_h - \gamma_h) eh​=j=1∑l​whj​gj​f′(αh​−γh​)
    这里, w h j w_{hj} whj​ 是从隐藏单元 h h h 到输出单元 j j j 的权重, g j g_j gj​ 是输出单元 j j j 的梯度。

  4. 最终表达式
    e h = b h ( 1 − b h ) ∑ j = 1 l w h j g j e_h = b_h(1 - b_h) \sum_{j=1}^l w_{hj} g_j eh​=bh​(1−bh​)j=1∑l​whj​gj​
    这里,假设激活函数是 Sigmoid 函数,其导数 f ′ ( x ) f'(x) f′(x) 是 σ ( x ) ( 1 − σ ( x ) ) \sigma(x) (1 - \sigma(x)) σ(x)(1−σ(x)),其中 σ ( x ) \sigma(x) σ(x) 是 Sigmoid 函数。因此, f ′ ( α h − γ h ) f'(\alpha_h - \gamma_h) f′(αh​−γh​) 可以写作 b h ( 1 − b h ) b_h(1 - b_h) bh​(1−bh​)。

这个误差项 e h e_h eh​ 反映了输出层的误差如何通过网络传播回隐藏层,用于调整隐藏层的权重和偏置以减少整体的误差。在实际应用中,这个误差项会用于计算权重更新量 Δ w h j \Delta w_{hj} Δwhj​ 和偏置更新量 Δ γ h \Delta \gamma_h Δγh​。

式5.20(波尔兹曼机无向图能量)

E ( s ) = − ∑ i = 1 n − 1 ∑ j = i + 1 n w i j s i s j − ∑ i = 1 n θ i s i E(\boldsymbol{s})=-\sum_{i=1}^{n-1}\sum_{j=i+1}^{n}w_{ij}s_is_j-\sum_{i=1}^n\theta_is_i E(s)=−i=1∑n−1​j=i+1∑n​wij​si​sj​−i=1∑n​θi​si​

给出的公式 E ( s ) E(\boldsymbol{s}) E(s) 表示的是一个能量函数,通常用于描述物理系统、机器学习模型(如Ising模型或Potts模型)中的配置能量。这个特定的能量函数包含两部分组成:配对项和单点项。

公式中的符号含义如下:

  • E ( s ) E(\boldsymbol{s}) E(s):给定配置 s \boldsymbol{s} s 的能量。
  • n n n:系统中的粒子或站点数量。
  • w i j w_{ij} wij​:粒子 i i i 和 j j j 之间的相互作用权重或耦合强度。如果 i i i 和 j j j 相邻,则 w i j w_{ij} wij​ 通常是非零的。
  • s i s_i si​ 和 s j s_j sj​:分别是粒子 i i i 和 j j j 的状态或自旋,可以是离散的值(如 + 1 +1 +1 或 − 1 -1 −1)。
  • θ i \theta_i θi​:与粒子 i i i 相关的局部场或外磁场。
  • ∑ i = 1 n − 1 ∑ j = i + 2 n \sum_{i=1}^{n-1}\sum_{j=i+2}^{n} ∑i=1n−1​∑j=i+2n​:表示对所有可能的粒子对 ( i , j ) (i, j) (i,j) 求和,其中 j > i + 1 j > i+1 j>i+1 确保配对项不重复计算。

能量函数可以分解为:

  1. 配对项: − ∑ i = 1 n − 1 ∑ j = i + 2 n w i j s i s j -\sum_{i=1}^{n-1}\sum_{j=i+2}^{n}w_{ij}s_is_j −∑i=1n−1​∑j=i+2n​wij​si​sj​,这部分计算了所有非相邻粒子对之间的相互作用能量。如果 s i s_i si​ 和 s j s_j sj​ 相同,且 w i j w_{ij} wij​ 为正,则这对应于一个较低的能量状态;如果它们相反,则对应于较高的能量状态。

  2. 单点项: − ∑ i = 1 n θ i s i -\sum_{i=1}^n\theta_is_i −∑i=1n​θi​si​,这部分计算了每个粒子与其局部场的相互作用能量。如果 s i s_i si​ 和 θ i \theta_i θi​ 同号,则这对应于较低的能量状态;如果它们异号,则对应于较高的能量状态。

在物理系统中,这个能量函数可以用来描述系统的平衡状态,其中系统倾向于最小化其能量。在机器学习中,特别是在无监督学习或玻尔兹曼机(Boltzmann Machines)中,这样的能量函数可以用来定义数据的概率分布,并通过随机梯度下降等方法进行优化。

式5.22(波尔兹曼机2)

P ( v ∣ h ) = ∏ i = 1 d P ( v i   ∣   h ) P(\boldsymbol{v}|\boldsymbol{h})=\prod_{i=1}^dP(v_i\, | \, \boldsymbol{h}) P(v∣h)=i=1∏d​P(vi​∣h)
给出的公式表示在给定隐藏变量 h \boldsymbol{h} h 的条件下,观测变量 v \boldsymbol{v} v 的概率分布。这种类型的概率表达式通常出现在概率图模型中,如贝叶斯网络或生成对抗网络(GANs)。

公式中的符号含义如下:

  • P ( v ∣ h ) P(\boldsymbol{v}|\boldsymbol{h}) P(v∣h):给定隐藏变量 h \boldsymbol{h} h 时,观测变量 v \boldsymbol{v} v 的联合概率。
  • d d d:观测变量的维度数。
  • v i v_i vi​:观测变量中的第 i i i 个维度。
  • h \boldsymbol{h} h:隐藏变量的向量,可能影响观测变量的值。

公式本身是一个条件概率的乘积形式,表示为:

P ( v ∣ h ) = ∏ i = 1 d P ( v i   ∣   h ) P(\boldsymbol{v}|\boldsymbol{h}) = \prod_{i=1}^d P(v_i \, | \, \boldsymbol{h}) P(v∣h)=i=1∏d​P(vi​∣h)

这个公式的含义是:

  • 对于观测变量向量 v \boldsymbol{v} v 中的每一个维度 v i v_i vi​,我们计算在给定隐藏变量 h \boldsymbol{h} h 的条件下该维度的概率分布 P ( v i   ∣   h ) P(v_i \, | \, \boldsymbol{h}) P(vi​∣h)。
  • 然后,我们把所有这些条件概率 P ( v i   ∣   h ) P(v_i \, | \, \boldsymbol{h}) P(vi​∣h) 相乘,得到整个观测变量向量在给定隐藏变量条件下的联合概率。

这种分解是条件独立性的一个应用,它假设在给定隐藏变量 h \boldsymbol{h} h 的情况下,观测变量的各个维度是相互独立的。这使得可以单独处理每个维度的概率分布,简化了计算过程。

在机器学习的应用中,这种类型的概率表达式可以用于:

  • 建模观测数据和潜在因素之间的关系。
  • 在生成模型中,如变分自编码器(VAEs)或GANs,生成观测数据。
  • 在贝叶斯网络中,进行概率推理和预测。

式5.23(波尔兹曼机3)

P ( h ∣ v ) = ∏ j = 1 q P ( h i   ∣   v ) P(\boldsymbol{h}|\boldsymbol{v})=\prod_{j=1}^qP(h_i\, | \, \boldsymbol{v}) P(h∣v)=j=1∏q​P(hi​∣v)
给出的公式表示在给定观测变量 v \boldsymbol{v} v 的条件下,隐藏变量 h \boldsymbol{h} h 的概率分布。这种类型的概率表达式通常出现在概率图模型中,特别是在处理隐变量模型或进行概率推理时。

公式中的符号含义如下:

  • P ( h ∣ v ) P(\boldsymbol{h}|\boldsymbol{v}) P(h∣v):给定观测变量 v \boldsymbol{v} v 时,隐藏变量 h \boldsymbol{h} h 的联合概率。
  • q q q:隐藏变量的维度数。
  • h i h_i hi​:隐藏变量中的第 i i i 个维度。
  • v \boldsymbol{v} v:观测变量的向量。

公式本身是一个条件概率的乘积形式,表示为:

P ( h ∣ v ) = ∏ j = 1 q P ( h j   ∣   v ) P(\boldsymbol{h}|\boldsymbol{v}) = \prod_{j=1}^q P(h_j \, | \, \boldsymbol{v}) P(h∣v)=j=1∏q​P(hj​∣v)

这个公式的含义是:

  • 对于隐藏变量向量 h \boldsymbol{h} h 中的每一个维度 h j h_j hj​,我们计算在给定观测变量 v \boldsymbol{v} v 的条件下该维度的概率分布 P ( h j   ∣   v ) P(h_j \, | \, \boldsymbol{v}) P(hj​∣v)。
  • 然后,我们把所有这些条件概率 P ( h j   ∣   v ) P(h_j \, | \, \boldsymbol{v}) P(hj​∣v) 相乘,得到整个隐藏变量向量在给定观测变量条件下的联合概率。

这种分解是条件独立性的一个应用,它假设在给定观测变量 v \boldsymbol{v} v 的情况下,隐藏变量的各个维度是相互独立的。这使得可以单独处理每个维度的概率分布,简化了计算过程。

在机器学习的应用中,这种类型的概率表达式可以用于:

  • 推断给定观测数据的潜在因素或状态。
  • 在隐变量模型中,如隐马尔可夫模型(HMMs)、动态贝叶斯网络(DBNs)或隐变量图形模型中,进行概率推理。
  • 在贝叶斯推断中,根据观测数据更新对隐藏变量的信念或估计。

通过这种方式,可以处理复杂的数据依赖关系,并在给定观测数据的情况下推断出隐藏变量的分布。然而,需要注意的是,上述公式在实际中可能并不总是成立,因为它假设了隐藏变量的所有维度在给定观测数据时都是条件独立的,这在现实中可能并不适用。在许多情况下,可能需要使用更复杂的方法来计算 P ( h ∣ v ) P(\boldsymbol{h}|\boldsymbol{v}) P(h∣v),例如使用贝叶斯网络中的条件概率表或通过求解边缘化和条件化问题。

通过这种方式,可以更有效地处理复杂的数据生成过程,并在给定一些观测数据的情况下推断出隐藏变量的分布。

式5.24

Δ w = η ( v h T − v ’ h ’ T ) \Delta w=\eta(\boldsymbol{v}\boldsymbol{h}^\mathrm{T}-\boldsymbol{v}’\boldsymbol{h}’^{\mathrm{T}}) Δw=η(vhT−v’h’T)

给出的公式用于描述权重更新 Δ w \Delta w Δw 的一种方法,这在某些机器学习算法中,特别是那些涉及向量 v \boldsymbol{v} v 和 h \boldsymbol{h} h 的算法中使用。这个公式可能用于调整权重,以使得预测输出更接近期望的输出。

公式中的符号含义如下:

  • Δ w \Delta w Δw:权重的更新量。
  • η \eta η:学习率,一个超参数,用于控制更新的步长。
  • v \boldsymbol{v} v:通常表示输入向量或观测向量。
  • h \boldsymbol{h} h:通常表示隐藏层的输出向量或状态向量。
  • v ′ \boldsymbol{v}' v′ 和 h ′ \boldsymbol{h}' h′:分别表示调整后的输入向量和隐藏层输出向量,或者可以理解为更新后的目标向量和相应的隐藏层输出。

权重更新的公式是:

Δ w = η ( v h T − v ′ h ′ T ) \Delta w = \eta(\boldsymbol{v}\boldsymbol{h}^\mathrm{T} - \boldsymbol{v}'\boldsymbol{h}'^\mathrm{T}) Δw=η(vhT−v′h′T)

这个公式的含义是:

  1. 计算当前权重下,输入向量 v \boldsymbol{v} v 和隐藏层输出向量 h \boldsymbol{h} h 的外积(或称为Kronecker积),这代表了权重矩阵的一个候选更新。
  2. 计算调整后的输入向量 v ′ \boldsymbol{v}' v′ 和隐藏层输出向量 h ′ \boldsymbol{h}' h′ 的外积,这代表了理想情况下的权重更新。
  3. 从当前权重更新量中减去理想情况下的权重更新量,得到权重的实际更新量 Δ w \Delta w Δw。
  4. 将学习率 η \eta η 乘以这个差值,得到最终的权重更新量。

然后,可以使用这个更新量来调整权重矩阵:

w : = w + Δ w w := w + \Delta w w:=w+Δw

这个过程在每次迭代中重复执行,目的是通过梯度下降或其变体来最小化损失函数。

需要注意的是,这个公式在不同的上下文中可能有不同的解释,具体取决于 v \boldsymbol{v} v 和 h \boldsymbol{h} h 的具体含义以及学习算法的类型。在某些情况下, v ′ \boldsymbol{v}' v′ 和 h ′ \boldsymbol{h}' h′ 可能代表了更新后的权重或经过某种优化策略处理的向量。

标签:partial,函数,boldsymbol,详解,波尔兹曼,Delta,------,hat,隐藏
From: https://blog.csdn.net/dengkeaway/article/details/141225463

相关文章

  • 南瓜书公式详解------第六章-1(支持向量机1)
    式6.8(支持向量机目标函数)L(w,b,......
  • 显卡刷坏BIOS黑屏怎么办_万能救砖恢复方法来了!
    电脑显卡刷bios黑屏不开机无显示无信号,是因为显卡vbios刷错文件了,找到正确的显卡BIOS文件刷回去就行了。但是黑屏进不去系统如何刷显卡BIOS呢。给大家推荐个万能刷显卡BIOS工具,名字是《离线刷bios设备》,用免拆夹子直接连接显卡BIOS芯片刷bios,8个脚的芯片就是。只需要把显卡vbio......
  • 《1055:判断闰年》
    【题目描述】判断某年是否是闰年。如果公元a年是闰年输出Y,否则输出N。【输入】输入只有一行,包含一个整数a(0<a<3000)。【输出】一行,如果公元a年是闰年输出Y,否则输出N。【输入样例】2006【输出样例】N#include<iostream>usingnamespacestd;intmain(){......
  • 数据结构与算法详解
    目录一、引言二、数据结构1.数组(Array)定义特点应用场景总结表格2.链表(LinkedList)定义特点应用场景总结表格3.栈(Stack)定义特点应用场景总结表格4.队列(Queue)定义特点应用场景总结表格5.树(Tree)定义特点应用场景总结表格6.哈希表(HashTable)定......
  • 【巨人网络】25届秋招内推及面经
    1.时间即日起——2024年9月30日,注意时间哦!!2.内推对象2025年应届毕业生3.!!!内推优势!!!投递需要笔试的岗位,可以简历免筛选哦~4.内推链接4.1 游戏客户端开发工程师(25届秋招)上海巨人网络科技有限公司-内部推荐4.2 游戏服务器开发工程师(25届秋招)上海巨人网络科技有限......
  • 计算机毕业设计django+vue停车场管理系统【开题+论文+程序】
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着城市化进程的加速和汽车保有量的急剧增加,停车难问题已成为现代城市管理中的一大难题。传统停车场管理方式大多依赖于人工操作,不仅效率......
  • 计算机毕业设计django+vue快递驿站管理系统【开题+论文+程序】
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着电子商务的蓬勃发展和消费者购物习惯的转变,快递行业迎来了前所未有的增长机遇。快递驿站作为快递物流体系中的重要一环,承担着快递包裹......
  • 计算机毕业设计django+vue图书商城推荐系统【开题+论文+程序】
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着互联网技术的飞速发展,电子商务已经渗透到人们生活的方方面面,图书商城作为其中的一个重要组成部分,也逐渐成为人们购买图书的主要渠道。......
  • 计算机毕业设计django+vue校园代跑服务平台【开题+论文+程序】
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着高校校园生活的日益丰富与多元化,学生们对于便捷、高效的生活服务需求日益增长。特别是在快节奏的学习生活中,许多学生因时间紧迫或身体......
  • Web前端开发 CSS常用样式大全
    Web前端开发CSS常用样式大全文章目录1CSS简介2选择器2.1标签选择器2.2类选择器2.3id选择器2.4复合选择器2.4.1后代选择器2.4.2子代选择器2.4.3并集选择器2.4.4交集选择器2.4.5伪类选择器2.5结构伪类选择器2.6伪元素选择器3CSS特性3.1继承性3.2层叠性......