强化学习-随机近似与随机梯度下降

news2025/3/5 6:20:50

强化学习-数学理论

  1. 强化学习-基本概念
  2. 强化学习-贝尔曼公式
  3. 强化学习-贝尔曼最优公式
  4. 强化学习-值迭代与策略迭代
  5. 强化学习-蒙特卡洛方法
  6. 强化学习-随机近似于随机梯度下降

文章目录

  • 强化学习-数学理论
  • 一、前言
  • 二、再谈mean eatimation
    • 2.1 回顾蒙特卡洛法
    • 2.2 新角度解决求均值问题
    • 2.3 新方法的优势及推广
  • 三、RM算法(Robbins-Monro Algorithm)
    • 3.1 Stochastic Approximation的定义
    • 3.2 RM算法
    • 3.3 RM算法收敛性分析数学理论(3个条件)
    • 3.4 RM算法求解mean eatimation
  • 四、Stochastic gradient descent(随机梯度下降)
    • 4.1 SGD算法介绍
    • 4.2 使用SGD求解(一个例子)
    • 4.3 SGD收敛性分析
    • 4.4 SGD算法随机性分析
    • 4.4 BGD、MBGD、SGD
      • 4.4.1 算法介绍
      • 4.4.2 算法异同点
  • 总结
    • 内容小结
    • 参考资料


一、前言

  本篇博客主要包含如下内容:1️⃣ 新的角度再看mean eatimation;2️⃣ Robbins-Monro Algorithm;3️⃣ 随机梯度下降以及它的各种变体(GD、BGD、SGD、MBGD)。


二、再谈mean eatimation

2.1 回顾蒙特卡洛法

  上一篇蒙特卡洛章节关于mean eatimation problem是这么求解的: E [ X ] ≈ x ‾ : = 1 N Σ N i = 1 x i \mathbb{E}[X]\approx\overline{x}:=\frac{1}{N}\underset{i=1}{\overset{N}\Sigma}x_i E[X]x:=N1i=1ΣNxi,其含义是:抽样多个关于X的样本序列 x i i = 1 N {x_i}_{i=1}^N xii=1N,然后对采样的数据进行求平均去最终去近似的等于 E [ X ] \mathbb{E}[X] E[X]。这种方法有一个弊端,就是要等所有的采样数据都结束才能去计算均值,这无疑是不高效的。

2.2 新角度解决求均值问题

  基于上述的问题,本篇讲从一个新的角度再去求解mean eatimation problem。为了避免等待,我们采用增量式(迭代式)的方式去求解,即来几个先求几个的方式进行计算。推理过程如下所示:

假设: w k + 1 = 1 k Σ k i = 1 x i , k = 1.2.3... w_{k+1}=\frac{1}{k}\underset{i=1}{\overset{k}\Sigma}x_i, k=1.2.3... wk+1=k1i=1Σkxi,k=1.2.3...
那么, w k = 1 k − 1 Σ k − 1 i = 1 x i , k = 2 , 3 , . . . w_k=\frac{1}{k-1}\underset{i=1}{\overset{k-1}\Sigma}x_i, k=2,3,... wk=k11i=1Σk1xi,k=2,3,...
然后,我们用 w k w_k wk去表示 w k + 1 w_{k+1} wk+1,可得:
w k + 1 = 1 k Σ k i = 1 x i = 1 k ( Σ k − 1 i = 1 x i + x k ) = 1 k ( ( k − 1 ) w k + x k ) = w k − 1 k ( w k − x k ) \begin{aligned} w_{k+1}&=\frac{1}{k}\underset{i=1}{\overset{k}\Sigma}x_i \\ &=\frac{1}{k}(\underset{i=1}{\overset{k-1}\Sigma}x_i+x_k) \\ &=\frac{1}{k}((k-1)w_k+x_k)=w_k-\frac{1}{k}(w_k-x_k) \\ \end{aligned} wk+1=k1i=1Σkxi=k1(i=1Σk1xi+xk)=k1((k1)wk+xk)=wkk1(wkxk)
最后,可以得到一个迭代的公式: w k + 1 = w k − 1 k ( w k − x k ) w_{k+1}=w_k-\frac{1}{k}(w_k-x_k) wk+1=wkk1(wkxk),这样我们在计算第k步的时候就不需要等前面所有的 x i x_i xi了,下面我们利用该等式求解mean eatimation problem,求解过程如下图所示:
求解过程

2.3 新方法的优势及推广

  算法优势: 在计算第k步时,不需要把前面所有的 x i x_i xi全部加起来再求平均,只需要通过一步的计算就可以得到一个新的正确的平均数。
  算法推广: w k + 1 = w k − α k ( w k − x k ) , α k ≥ 0 w_{k+1}=w_k-\textcolor{red}{\alpha_k}(w_k-x_k),\alpha_k\geq0 wk+1=wkαk(wkxk)αk0


三、RM算法(Robbins-Monro Algorithm)

3.1 Stochastic Approximation的定义

  在本小节开始前,我们先说一下Stochastic approximation(SA)随机近似理论的定义,它代表了一类算法,是指使用随机迭代的算法去解决方程求解问题以及优化问题的这类算法。有很多的方法可以求解上述的问题,但SA算法的优点在于:它不需要知道这个方程或者是目标函数的表达式。

3.2 RM算法

  RM算法是SA的一个开创性的工作,下面进行详细的讲解:

问题定义:求解 g ( w ) = 0 g(w)=0 g(w)=0,假设 w ∗ w^* w是方程 g 的最优解,注意这里的方程 g 的表达式我们是不知道,大家可以联想一下神经网络,即:我们给一系列的输出,中间过程是个网络结构,最后输出我们想要的值。
RM算法表达式: w k + 1 = w k − a k g ~ ( w k , η k ) , k = 1 , 2 , 3... w_{k+1}=w_k-a_k\tilde{g}(w_k,\eta_k), k=1,2,3... wk+1=wkakg~(wk,ηk),k=123...
这里的 w k w_k wk表示的是对最优解 w ∗ w^* w的第k次估计; g ~ ( w k , η k ) = g ( w k ) + η k , η 表示噪音 \tilde{g}(w_k,\eta_k)=g(w_k)+\eta_k,\eta表示噪音 g~(wk,ηk)=g(wk)+ηkη表示噪音 g ~ \tilde{g} g~g的一个带噪音的观测。 a k a_k ak是一个系数。
RM算法求解方程的过程:输入 { w k } \{w_k\} {wk}的一个序列,输出是一个含噪音的序列 { g ~ ( w k , η k ) } \{\tilde{g}(w_k,\eta_k)\} {g~(wk,ηk)}

网络图

RM为什么能找到最优?这里用一个具体的例子来阐述,如下所示:

g ( w ) = t a n h ( w − 1 ) g(w)=tanh(w-1) g(w)=tanh(w1) g ( w ) = 0 g(w)=0 g(w)=0的解 w ∗ = 1 w^*=1 w=1,假设: w 1 = 3 , a k = 1 k , η k = 0 ( 没有噪音 ) w_1=3,a_k=\frac{1}{k},\eta_k=0(没有噪音) w1=3ak=k1ηk=0(没有噪音)
那么RM算法的表达式为: w k + 1 = w k − a k g ( w k ) w_{k+1}=w_k-a_kg(w_k) wk+1=wkakg(wk),求解过程仿真图如下所示:
求解过程图示
由图示可得, w k + 1 w_{k+1} wk+1 w k w_k wk更接近最优解 w ∗ w^* w
w k > w ∗ w_k>w^* wk>w,我们有 g ( w k ) > 0 g(w_k)>0 g(wk)>0。那么, w k + 1 = w k − a k g ( w k ) < w k w_{k+1}=w_k−a_kg(w_k)<w_k wk+1=wkakg(wk)<wk,因此 w k + 1 w_{k+1} wk+1 w k w_k wk更接近 w ∗ w^* w
w k < w ∗ w_k<w^* wk<w,我们有 g ( w k ) < 0 g(w_k)<0 g(wk)<0。那么, w k + 1 = w k − a k g ( w k ) > w k w_{k+1}=w_k−a_kg(w_k)>w_k wk+1=wkakg(wk)>wk,因此 w k + 1 w_{k+1} wk+1 w k w_k wk更接近 w ∗ w^* w

3.3 RM算法收敛性分析数学理论(3个条件)

  RM算法成立的3个条件:
收敛性的数学支撑
三个条件的说明
  这里只给出数学理论,感兴趣的朋友们可以直接去观看视频RM算法的数学理论支撑

3.4 RM算法求解mean eatimation

  问题描述:假如我们要估计某个随机变量的 E [ X ] \mathbb{E}[X] E[X],假设有一个方程 g ( w ) = ⋅ w − E [ X ] g(w)\stackrel{\mathrm{\cdot}}{=}w-\mathbb{E}[X] g(w)=wE[X],那么我们只要找到一个 w w w使得方程 g ( w ) = 0 g(w)=0 g(w)=0,这样我们就可以估计出这个随机变量X的 E [ X ] \mathbb{E}[X] E[X]。注意:这里我们并不知道 g ( w ) g(w) g(w)的表达式(上述等式只是一个用于显示化推理的假设),但我们可得到观测值,即: g ~ ( w , x ) = ⋅ w − x \tilde{g}(w,x)\stackrel{\mathrm{\cdot}}{=}w-x g~(w,x)=wx
  推导过程:

g ~ ( w , η ) = w − x = w − x + E [ X ] − E [ X ] = ( w − E [ X ] ) + ( E [ X ] − x ) = ⋅ g ( w ) + η \begin{aligned} \tilde{g}(w,\eta)&=w-x \\ &=w-x+\mathbb{E}[X]-\mathbb{E}[X] \\ &=(w-\mathbb{E}[X])+(\mathbb{E}[X]-x) \\ &\stackrel{\mathrm{\cdot}}{=}g(w)+\eta \end{aligned} g~(w,η)=wx=wx+E[X]E[X]=(wE[X])+(E[X]x)=g(w)+η
因此我们可以通过 RM 算法来进行求解:
w k + 1 = w k − α k g ~ ( w k , η k ) = w k − α k ( w k − x k ) w_{k+1}=w_k-\alpha_k\tilde{g}(w_k,\eta_k)=w_k-\alpha_k(w_k-x_k) wk+1=wkαkg~(wk,ηk)=wkαk(wkxk)


四、Stochastic gradient descent(随机梯度下降)

4.1 SGD算法介绍

  SGD算法是RM算法的一个特殊情况,而mean estimation算法又是一个特殊的SGD算法。SGD算法解决的是一个优化问题,详细内容如下所示:

我们的目标是去求解优化问题,如方程: w m i n J ( w ) = E [ f ( w , X ) ] \overset{min}{w}J(w) = \mathbb E[f(w,X)] wminJ(w)=E[f(w,X)],这里的 w w w是我们要优化的参数, X X X是一个随机变量,这里要求的也是关于 X X X的期望,求解该问题我们有如下3种方法:
第一种:gradient descent(GD),该方法的使用条件是:已知了X的分布,换句话说就是知道了X的表达式。

w k + 1 = w k − α k ∇ w E [ f ( w k , X ) ] = w k − α k E [ ∇ w f ( w k , X ) ] \begin{aligned} w_{k+1}&=w_k-\alpha_k\nabla_w\mathbb E[f(w_k,X)] \\ &=w_k-\alpha_k\mathbb E[\textcolor{blue}{\nabla_w}f(w_k,X)] \end{aligned} wk+1=wkαkwE[f(wk,X)]=wkαkE[wf(wk,X)]

第二种:batch gradient descent(BGD),还是我们老生常谈的事情,没有模型要有数据,该方法使用的条件是:我有很多的数据采样,下面等式中的 x x x表示 X X X的采样,具体的计算如下所示:

假如我们有了: E [ ∇ w f ( w k , X ) ] ≈ 1 n E n i = 1 ∇ w f ( w k , x i ) \mathbb E[\nabla_wf(w_k,X)]\approx\frac{1}{n}\underset{i=1}{\overset{n}E}\nabla_wf(w_k,x_i) E[wf(wk,X)]n1i=1Enwf(wk,xi)
借助蒙特卡洛(MC)的思想,我们就可以得到下述等式:
w k + 1 = w k − α k 1 n E n i = 1 ∇ w f ( w k , x i ) w_{k+1}=w_k-\alpha_k\frac{1}{n}\underset{i=1}{\overset{n}E}\nabla_wf(w_k,x_i) wk+1=wkαkn1i=1Enwf(wk,xi)

第三种:Stochastic gradient descent(SGD),第二种方案的缺点在于:我在每一次去更新 w k w_k wk的时候,需要采样很多次才能够去计算,在实际中这算法是低效的。

SGD的计算公式: w k + 1 = w k − α k ∇ w f ( w k , x k ) w_{k+1}=w_k-\alpha_k\nabla_wf(w_k,x_k) wk+1=wkαkwf(wk,xk)
与GD的方法对比,这里使用随机梯度 ∇ w f ( w k , x k ) \nabla_wf(w_k,x_k) wf(wk,xk)去替代了真实的梯度 E [ ∇ w f ( x k , X ) ] \mathbb E[\nabla_wf(x_k,X)] E[wf(xk,X)]

4.2 使用SGD求解(一个例子)

  这里有一个例子,我们需要求解该的优化问题: m i n w J ( w ) = E [ f ( w , X ) ] = E [ 1 2 ∣ ∣ w − X ∣ ∣ 2 ] \underset{w}{min}J(w)=\mathbb E[f(w,X)]=\mathbb E[\frac{1}{2}||w-X||^2] wminJ(w)=E[f(w,X)]=E[21∣∣wX2],这里的 f ( w , X ) = ∣ ∣ w − X ∣ ∣ 2 / 2 , ∇ w f ( w , X ) = w − X f(w,X)=||w-X||^2/2,\nabla_wf(w,X)=w-X f(w,X)=∣∣wX2/2wf(w,X)=wX

练习一:证明最优解是 w ∗ = E [ X ] w^*=\mathbb E[X] w=E[X]

J ( w ) J(w) J(w)最小的必要条件是 ∇ w J ( w ) = 0 \nabla_wJ(w)=0 wJ(w)=0,根据这个条件以及上面的方程,我们可以到的如下的推理过程:
∇ w J ( w ) = ∇ w E [ 1 2 ∣ ∣ w − X ∣ ∣ 2 ] = E [ ∇ w 1 2 ∣ ∣ w − X ∣ ∣ 2 ] = E [ w − X ] = 0 \begin{aligned} \nabla_wJ(w)&=\nabla_w\mathbb E[\frac{1}{2}||w-X||^2] \\ &=\mathbb E[\nabla_w\frac{1}{2}||w-X||^2] \\ &=\mathbb E[w-X]\\ &=0 \end{aligned} wJ(w)=wE[21∣∣wX2]=E[w21∣∣wX2]=E[wX]=0
由于 w w w本身不是一个随机变量所以它的expectation就是它自己,因此,我们可以得到: w = E [ X ] w=\mathbb E[X] w=E[X]
练习二:写出解决这个问题的GD算法。

w k + 1 = w k − α k ∇ w J ( w k ) = w k − α k E [ ∇ w f ( w k , X ) ] = w k − α k E [ w k − X ] \begin{aligned} w_{k+1}&=w_k-\alpha_k\nabla_wJ(w_k)\\ &=w_k-\alpha_k\mathbb E[\nabla_wf(w_k,X)]\\ &=w_k-\alpha_k\mathbb E[w_k-X] \end{aligned} wk+1=wkαkwJ(wk)=wkαkE[wf(wk,X)]=wkαkE[wkX]
练习三:写出解决这个问题的SGD算法。

w k + 1 = w k − α k ∇ w f ( w k , x k ) = w k − α k ( w k − x k ) \begin{aligned} w_{k+1}&=w_k-\alpha_k\nabla_wf(w_k,x_k)\\ &=w_k-\alpha_k(w_k-x_k)\\ \end{aligned} wk+1=wkαkwf(wk,xk)=wkαk(wkxk)

4.3 SGD收敛性分析

  这里我们来分析SGD的一个收敛性,分析过程如下所示:

GD的算法表达式: w k + 1 = w k − α k E [ ∇ w f ( w k , X ) ] w_{k+1}=w_k-\alpha_k\mathbb E[\nabla_wf(w_k,X)] wk+1=wkαkE[wf(wk,X)],而SGD算法表达式为: w k + 1 = w k − α k ∇ w f ( w k , x k ) w_{k+1}=w_k-\alpha_k\nabla_wf(w_k,x_k) wk+1=wkαkwf(wk,xk)。与GD的方法对比,这里使用随机梯度 ∇ w f ( w k , x k ) \nabla_wf(w_k,x_k) wf(wk,xk)去替代了真实的梯度 E [ ∇ w f ( x k , X ) ] \mathbb E[\nabla_wf(x_k,X)] E[wf(xk,X)]
因此,就会存在一个误差 η \eta η,那么随机梯度等于真实梯度加上一个误差,如下式所示:
∇ w f ( w k , x k ) = E f ( w , X ) + ∇ w f ( w k , x k ) − E [ ∇ w f ( x , X ) ] ⏟ η \nabla_wf(w_k,x_k)=\mathbb Ef(w,X)+\underbrace{\nabla_wf(w_k,x_k)-\mathbb E[\nabla_wf(x,X)]}_{\eta} wf(wk,xk)=Ef(w,X)+η wf(wk,xk)E[wf(x,X)]
因为,随机梯度是不等于真实梯度的,因此,在这种情况下使用SGD是否能够找到那个最优解呢?即使用 SGD 时 w k → w ∗   a s   k → ∞ w_k \rightarrow w^*\ as\ k\rightarrow \infty wkw as k 是否成立。

  这里我们的基本思想是:证明SGD是一个特殊的RM算法,然后就可以根据RM算法的收敛性推断出SGD算法也是收敛的,具体过程如下:

SGD算法的目标是:最小化 J ( w ) = E [ f ( w , X ) ] J(w)=\mathbb E[f(w,X)] J(w)=E[f(w,X)]
而最小值问题,可以转化为求方程解的问题,即 ∇ w J ( w ) = E [ ∇ w f ( w , X ) ] = 0 \nabla_wJ(w)=\mathbb E[\nabla_wf(w,X)]=0 wJ(w)=E[wf(w,X)]=0
此时,我们便可以参考RM算法,那么我们便可以得到下列等式:
g ( w ) = ∇ w J ( w ) = E [ ∇ w f ( w , X ) ] = 0 g(w)=\nabla_wJ(w)=\mathbb E[\nabla_wf(w,X)]=0 g(w)=wJ(w)=E[wf(w,X)]=0
SGD的问题就变成了如何求解 g ( w ) = 0 g(w)=0 g(w)=0这个方程。
接着,我们可以得到观测值 g ~ \tilde{g} g~的表达式:
g ~ ( w , η ) = ∇ w f ( w , x ) = E [ ∇ w f ( w , X ) ] ⏟ g ( w ) + ∇ w f ( w , x ) − E [ ∇ w f ( w , X ) ] ⏟ η \begin{aligned} \tilde{g}(w,\eta)&=\nabla_wf(w,x)\\ &=\underbrace{\mathbb E[\nabla_wf(w,X)]}_{g(w)}+\underbrace{\nabla_wf(w,x)-\mathbb E[\nabla_wf(w,X)]}_{\eta} \end{aligned} g~(w,η)=wf(w,x)=g(w) E[wf(w,X)]+η wf(w,x)E[wf(w,X)]
因此,我们便可以使用RM算法来求解 g ( w ) = 0 g(w)=0 g(w)=0了,可得:
w k + 1 = w k − a k g ~ ( w k , η k ) = w k − a k ∇ w f ( w k , x k ) w_{k+1}=w_k-a_k\tilde{g}(w_k,\eta_k)=w_k-a_k\nabla_wf(w_k,x_k) wk+1=wkakg~(wk,ηk)=wkakwf(wk,xk)
而上述等式就是SGD算法,因此可得SGD是一个特殊的RM算法,其收敛性自然随之而来,SGD的收敛性理论如下所示,这里不在证明,感兴趣的朋友们可以查阅相关资料。
SGD收敛性

4.4 SGD算法随机性分析

  问题:SGD它是把GD当中的ture gradient用stochastic gradient来代替,由于stochastic gradient是随机的,那会不会造成SGD的收敛性也存在较大的随机性?下面给出推理过程。

我们通过考虑两者之间的相对误差(relative error)来回答这个问题,下面给出ture gradient和stochastic gradient之间相对误差的计算等式:
δ k = ⋅ ∣ ∇ w f ( w k , x k ) − E [ ∇ w f ( w k , X ) ] ∣ ∣ ∣ E [ ∇ w f ( w k , X ) ] ∣ \delta_k\stackrel{\mathrm{\cdot}}{=}\frac{|\nabla_wf(w_k,x_k)-\mathbb E[\nabla_wf(w_k,X)]||}{|\mathbb E[\nabla_wf(w_k,X)]|} δk=E[wf(wk,X)]wf(wk,xk)E[wf(wk,X)]∣∣
而,上面的等式可以被证明得到如下的等式的(这里不进行证明,只给出结论):
δ k ≤ ∣ ∇ w f ( w k , x k ) − E [ ∇ w f ( w k , X ) ] ∣ c ∣ w k − w ∗ ∣ \delta_k\leq\frac{|\nabla_wf(w_k,x_k)-\mathbb E[\nabla_wf(w_k,X)]|}{c|w_k-w^*|} δkcwkwwf(wk,xk)E[wf(wk,X)]
上面等式的含义是: δ k ≤ ∣ s t o c h a s t i c   g r a d i e n t − t r u e   g r a d i e n t ∣ w k 与 w ∗ 之间的距离 \delta_k\leq\frac{|stochastic \ gradient- true \ gradient|}{w_k与w^*之间的距离} δkwkw之间的距离stochastic gradienttrue gradient,因此我们就可以得到如下的结论:
结论

  一个例子去看SGD算法的收敛情况。
一个直观的例子

4.4 BGD、MBGD、SGD

4.4.1 算法介绍

  假设我们有一个目标函数 J ( w ) = E [ f ( w , X ) ] J(w)=\mathbb E[f(w,X)] J(w)=E[f(w,X)],还有一组关于 X X X的采样 { x i } i = 1 n \{x_i\}_{i=1}^n {xi}i=1n,我们要用这样的数据去优化目标函数,有三种解法如下所示:

BGD: w k + 1 = w k − α k 1 n Σ n i = 1 ∇ w f ( w k , x i ) w_{k+1}=w_k-\alpha_k\frac{1}{n}\underset{i=1}{\overset{n}\Sigma}\nabla_wf(w_k,x_i) wk+1=wkαkn1i=1Σnwf(wk,xi)
MBGD: w k + 1 = w k − α k 1 m Σ n j ∈ I k ∇ w f ( w k , x j ) w_{k+1}=w_k-\alpha_k\frac{1}{m}\underset{j\in I_k}{\overset{n}\Sigma}\nabla_wf(w_k,x_j) wk+1=wkαkm1jIkΣnwf(wk,xj)
SGD: w k + 1 = w k − α k ∇ w f ( w k , x k ) w_{k+1}=w_k-\alpha_k\nabla_wf(w_k,x_k) wk+1=wkαkwf(wk,xk)

4.4.2 算法异同点

  • BGD中的B指的是batch,BGD每次都要用到n个所有的采样,然后在这个基础上求平均。
  • MBGD(mini-bath)的意思是我不用所有的采样,我将所有的采样分成 I I I组,随机的从这 I I I组中选取一组进行计算,然后在这一组数上进行求平均。
  • SGD就很简单了,我从n个采样中随机采样一个出来。
  • 注意:从MBGD等式入手,当 m = 1 m=1 m=1时,MBGD=SGD;当 m = n m=n m=n时,MBGD ≠ \neq =BGD,虽然此时MBGD和BGD都用到了n个采样,但BGD用的是所有的n个采样,而MBGD是在n个采样中随机抽取的,因此对于MBGD而言会存在有的采样没有被抽到的可能性。

总结

内容小结

  • RM算法公式: w k + 1 = w k − a k g ~ ( w k , η k ) , k = 1 , 2 , 3... w_{k+1}=w_k-a_k\tilde{g}(w_k,\eta_k), k=1,2,3... wk+1=wkakg~(wk,ηk),k=123...
  • GD算法公式: w k + 1 = w k − α k E [ ∇ w f ( w k , X ) ] w_{k+1}=w_k-\alpha_k\mathbb E[\nabla_wf(w_k,X)] wk+1=wkαkE[wf(wk,X)]
  • BGD算法公式: w k + 1 = w k − α k 1 n Σ n i = 1 ∇ w f ( w k , x i ) w_{k+1}=w_k-\alpha_k\frac{1}{n}\underset{i=1}{\overset{n}\Sigma}\nabla_wf(w_k,x_i) wk+1=wkαkn1i=1Σnwf(wk,xi)
  • SGD算法公式: w k + 1 = w k − α k ∇ w f ( w k , x k ) w_{k+1}=w_k-\alpha_k\nabla_wf(w_k,x_k) wk+1=wkαkwf(wk,xk)
  • MBGD算法公式: w k + 1 = w k − α k 1 m Σ n j ∈ I k ∇ w f ( w k , x j ) w_{k+1}=w_k-\alpha_k\frac{1}{m}\underset{j\in I_k}{\overset{n}\Sigma}\nabla_wf(w_k,x_j) wk+1=wkαkm1jIkΣnwf(wk,xj)

参考资料

1、随机近似与随机梯度下降视频讲解

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2309859.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux纯命令行界面下SVN的简单使用教程

诸神缄默不语-个人技术博文与视频目录 我用的VSCode插件是这个&#xff1a; 可以在文件中用色块显示代码修改了什么地方&#xff0c;点击色块还可以显示修改内容。 文章目录 1. SVN安装2. checkout3. update1. 将文件加入版本控制 4. commit5. 查看SVN信息&#xff1a;info6.…

python 初学攻略(上)

废话写在前面&#xff0c;后面都是干货&#xff0c;这个语言教学到处都是。我这里直接给你搞定所有要用的就好了。 环境安装&#xff08;略&#xff09; 输出函数print 转义字符 二进制与字符编码 标识符和保留字 变量的定义和使用 数据类型 整数类型 浮点类型 布尔类型 字符串…

《基于大数据的相州镇新农村商务数据分析与研究》开题报告

目录 一、选题依据 1.选题背景 2.国内外研究现状与水平 &#xff08;1&#xff09;国外研究现状 &#xff08;2&#xff09;国内研究现状 3.发展趋势 4.研究意义 二、研究内容 1.学术构思与思路 &#xff08;1&#xff09;主要研究内容 (2&#xff09;拟解决的关键问…

Linux : 环境变量

目录 一 环境变量 1.基本概念 二 常见环境变量 三 查看环境变量的方法 1.env:查看系统中所有环境变量 2. echo $NAME 四 如何不带路径也能运行的自己的程序 1.将自己的程序直接添加到PATH指定的路径下 五 环境变量与本地变量 1.本地变量 2. 环境变量 六C、C中main()…

SQL-labs13-16闯关记录

http://127.0.0.1/sqli-labs/less-13/ 基于POST单引号双注入变形 1&#xff0c;依然是一个登录框&#xff0c;POST型SQL注入 2&#xff0c;挂上burpsuite&#xff0c;然后抓取请求&#xff0c;构造请求判断漏洞类型和闭合条件 admin 发生了报错&#xff0c;根据提示闭合方式是(…

2025-03-04 学习记录--C/C++-PTA 习题5-4 使用函数求素数和

合抱之木&#xff0c;生于毫末&#xff1b;九层之台&#xff0c;起于累土&#xff1b;千里之行&#xff0c;始于足下。&#x1f4aa;&#x1f3fb; 一、题目描述 ⭐️ 二、代码&#xff08;C语言&#xff09;⭐️ #include <stdio.h>// 函数声明&#xff1a;判断一个数是…

Virtuose 6D TAO HF力反馈系统:加强力遥操作主手

Virtuose 6D TAO是一款搭载六主动自由度的力反馈设备&#xff0c;该产品自带被动式夹持器&#xff0c;工作空间大&#xff0c;可与EtherCAT接口通信&#xff0c;是轻松控制从机械臂的首选产品&#xff0c;特别适合工业遥操作、核工业遥操作等应用。 产品特点 ▪ 六主动自由度、…

使用AI后为什么思考会变得困难?

使用AI后为什么思考会变得困难&#xff1f; 我总结了四篇近期的研究论文&#xff0c;来展示AI是如何以及为什么侵蚀我们的批判性思维能力。 作者使用AI制作的图像 前言&#xff1a;作者在这篇文章中&#xff0c;借AI技术的崛起&#xff0c;揭示了一场悄然发生的思想博弈。表面…

【Resis实战分析】Redis问题导致页面timeout知识点分析

事故现象&#xff1a;前端页面返回timeout 事故回溯总结一句话&#xff1a; &#xff08;1&#xff09;因为大KEY调用量&#xff0c;随着白天自然流量趋势增长而增长&#xff0c;最终在业务高峰最高点期占满带宽使用100%。 &#xfeff; &#xfeff; &#xff08;2&#x…

FlashMLA(DeepSeek开源周,第一个框架):含源码分析

1. 概述 FlashMLA 是由 DeepSeek 原创开发的一种深度学习框架&#xff0c;专门用于加速多头注意力机制&#xff08;MLA&#xff09;架构的推理过程。它通过优化内存管理和计算效率&#xff0c;显著提升了模型在高性能 GPU 上的推理速度。FlashMLA 主要适用于 DeepSeek 的架构模…

点大商城V2-2.6.6.1全能版源码+最新排队免单插件功能

一.介绍 点大商城V2独立开源版本&#xff0c;版本更新至2.6.6&#xff0c;系统支持多端&#xff0c;前端为UNiapp&#xff0c;多端编译。 二.安装环境&#xff1a; Nginx 1.22PHP7.3MySQL 5.7 推荐PHP 7.3&#xff08;不得大于此版本&#xff0c;否则容易出bug&#xff09; …

行为模式---命令模式

概念 命令模式是一种行为设计模式&#xff0c;它的核心思想就是将请求封装为一个对象&#xff0c;此对象包含与请求相关的所有信息。可以用不同的请求对客户进行参数化。命令模式通过将请求的发送者和接收者解耦&#xff0c;支持请求的排队、记录、撤销等操作。 使用场景 1、…

Graph RAG 迎来记忆革命:“海马体”机制让问答更精准!

随着生成式 AI 技术的快速发展,RAG(Retrieval-Augmented Generation)和 Agent 成为企业应用大模型的最直接途径。然而,传统的 RAG 系统在准确性和动态学习能力上存在明显不足,尤其是在处理复杂上下文和关联性任务时表现不佳。近期,一篇论文提出了 HippoRAG 2,这一新型 R…

Linux——基本指令

我们今天学习Linux最基础的指令 ls 指令 语法&#xff1a; ls [选项] [⽬录或⽂件] 功能&#xff1a;对于⽬录&#xff0c;该命令列出该⽬录下的所有⼦⽬录与⽂件。对于⽂件&#xff0c;将列出⽂件名以及其他信 息。 命令中的选项&#xff0c;一次可以传递多个 &#xff0c…

【C++】模板编程入门指南:零基础掌握泛型编程核心(初阶)

文章目录 一、泛型编程二、函数模板1. 函数模板的概念和格式2. 函数模板的原理3. 函数模板的实例化隐式实例化显式实例化 三、类模板 一、泛型编程 泛型编程就是编写与类型无关的通用代码&#xff0c;是代码复用的一种手段&#xff0c;模板是泛型编程的基础&#xff0c;可能不太…

网上打印平台哪个好用?网上打印资料推荐

网上打印平台哪个好用 随着数字化办公的普及&#xff0c;网上打印平台因其便捷性和经济性而受到越来越多人的青睐。无论是学生、上班族还是个人用户&#xff0c;在需要快速打印资料时&#xff0c;一个好用的在线打印服务可以大大节省时间和成本。 那么&#xff0c;如何选择一…

Mac远程桌面软件哪个好用?

远程桌面软件能帮助我们快速的远程控制另一台电脑&#xff0c;从而提供远程帮助&#xff0c;或者进行远程办公。那么&#xff0c;对macOS系统有什么好用的Mac远程桌面软件呢&#xff1f; 远程看看是一款操作简单、界面简洁的远程桌面软件&#xff0c;支持跨平台操作&#xff0…

C#—Settings配置详解

C#—Settings配置详解 在C#项目中&#xff0c;全局配置通常指的是应用程序的设置&#xff08;settings&#xff09;&#xff0c;这些设置可以跨多个类或组件使用&#xff0c;并且通常用于存储应用程序的配置信息&#xff0c;如数据库连接字符串、用户偏好设置等。 Settings配置…

PyCharm中通过命令行执行`pip`命令下载到哪里了:虚拟环境目录下

PyCharm中通过命令行执行pip命令下载到哪里了:虚拟环境目录下 在PyCharm中通过命令行执行pip命令安装工具包,包的下载位置取决于多种因素 虚拟环境 如果项目使用了虚拟环境(通常是推荐的做法): Windows:虚拟环境通常位于项目目录下的.venv文件夹(默认情况)或你指定…

Golang的性能分析指标解读

Golang的性能分析指标解读 一、概述 语言&#xff09;是一种由Google开发的开源编程语言&#xff0c;以其并发性能和高效的编译速度而闻名。对于程序员来说&#xff0c;了解如何对Golang应用程序进行性能分析是非常重要的&#xff0c;因为这能帮助他们发现潜在的性能瓶颈并对其…