深度学习论文笔记(MSRA初始化与PReLU):Surpassing Human-Level Performance on ImageNet Classification

本文主要是介绍深度学习论文笔记(MSRA初始化与PReLU):Surpassing Human-Level Performance on ImageNet Classification,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 主要工作
  • PReLU激活函数
    • PReLU定义
    • PReLU中参数的反向传播
  • MSRA初始化
    • 目的
    • 前向传播
      • 假设
      • 推导
    • 反向传播
      • 假设与推导
    • MSRA初始化
    • 为什么以方差作为分析工具

主要工作

一、提出PReLU激活函数
二、提出适合ReLU与PReLU激活函数的初始化方法MSRA,可有效抵抗梯度消失,训练深度网络

发现了网络的"退化"问题,2016年的时候提出了相应的解决方案——残差结构
PReLU可以解决ReLU带来的神经元"死亡"问题,但有可能牺牲ReLU带来的稀疏性(论文中并未说明PReLU提出的目的,这是我自己的理解)


PReLU激活函数


PReLU定义

在这里插入图片描述

a i a_i ai是学习性参数,论文建议初始时刻将其设置为0.25, y i y_i yi表示第 i i i个通道上的值

若同一特征图上所有的通道共享同一个系数 a i a_i ai,则成为 c h a n n e l channel channel- s h a r e share share,若特征图上不同通道对应不同的系数 a i a_i ai,则称为 c h a n n e l channel channel- w i s e wise wise

相比于权重以及偏差的参数数目而言,PReLU引入的学习性参数数目基本可以忽略不计,整个模型的复杂度提升不大,因此不必过分担心过拟合的问题


PReLU中参数的反向传播

假设已经求出了第n层的第 l l l张特征图的误差 δ l n \delta^n_l δln,特征图上的值为 y l n y_l^n yln,对于 c h a n n e l channel channel- w i s e wise wise而言,设该特征图的PReLU参数为 a l n a_l^n aln,则有
∂ c o s t ∂ a l n = ∑ y l n δ l n ☉ ∂ f ( y l n ) ∂ a l n \frac{\partial cost}{\partial a^n_l}=\sum_{y_l^n}\delta_l^n☉\frac{\partial f(y_l^n)}{\partial a^n_l} alncost=ylnδlnalnf(yln)
∑ y l n \sum_{y_l^n} yln表示将矩阵上所有的值相加,对于 c h a n n e l channel channel- s h a r e share share而言,设第 n n n层PReLU参数为 a n a_n an,有 m m m张特征图,则有
∂ c o s t ∂ a n = ∑ l = 1 m ∑ y l n δ l n ☉ ∂ f ( y l n ) ∂ a l n \frac{\partial cost}{\partial a_n}=\sum_{l=1}^m\sum_{y_l^n}\delta_l^n☉\frac{\partial f(y_l^n)}{\partial a^n_l} ancost=l=1mylnδlnalnf(yln)


MSRA初始化


目的

对于存活的神经元而言,ReLU可以使梯度很好的进行传输,不会出现梯度弥散的现象,但若神经元大规模死亡,此时便会出现梯度消失的现象,整个神经网络的参数几乎无法更新,导致神经网络无法收敛,换句话说,相比于sigmoid函数,ReLU函数只是减少了梯度消失,但仍然可能出现梯度消失的情况,为了缓解ReLU带来的梯度弥散问题,我们有了MSRA初始化


前向传播


假设

1、卷积核的参数独立同分布,均值为0,概率密度函数为偶函数
2、卷积核的输入独立同分布
3、卷积核的输入与卷积核的参数相互独立


推导

以下推导假设第 l l l层一个卷积核的大小为 n l n_l nl,第 l l l层一个卷积操作可以表示为
Y l = W l X l + b l \begin{aligned} Y_l=W_lX_l+b_l \end{aligned} Yl=WlXl+bl
其中, X l X_l Xl是一个 k l 2 c l ∗ 1 k_l^2c_l*1 kl2cl1的向量, k l ∗ k l k_l*k_l klkl表示第 l l l层卷积大小, c l c_l cl表示第 l l l层通道个数,则有 n l = k l 2 c l n_l=k_l^2c_l nl=kl2cl W l W_l Wl是一个 d l ∗ n l d_l*n_l dlnl的矩阵, d l d_l dl表示第 l l l层卷积核的个数,每行表示一个卷积,使用 y l y_l yl表示 Y l Y_l Yl向量中的第 l l l维度的值, w l n w_{ln} wln表示第 l l l行,第 n n n列元素的值, x l n x_{ln} xln表示 x l x_l xl中第n维的元素,依据下述假设:

1、卷积核的参数独立同分布
2、卷积核的输入独立同分布
3、卷积核的输入与卷积核中的值相互独立

则有
(式1.0) V a r ( y l ) = V a r ( w l 1 x l 1 + w l 2 x l 2 + . . . . . + w l n l x l n l + b l ) = V a r ( w l 1 x l 1 ) + V a r ( w l 2 x l 2 ) + . . . . . + V a r ( w l n l x l n l ) = n l V a r ( w l x l ) \begin{aligned} Var(y_l)&=Var(w_{l1}x_{l1}+w_{l2}x_{l2}+.....+w_{ln_l}x_{ln_l}+b_l)\\ &=Var(w_{l1}x_{l1})+Var(w_{l2}x_{l2})+.....+Var(w_{ln_l}x_{ln_l})\\ &=n_lVar(w_lx_l) \tag{式1.0} \end{aligned} Var(yl)=Var(wl1xl1+wl2xl2+.....+wlnlxlnl+bl)=Var(wl1xl1)+Var(wl2xl2)+.....+Var(wlnlxlnl)=nlVar(wlxl)(1.0)

其中, w l w_l wl表示卷积核中值的随机变量, x l x_l xl表示输入值的随机变量, y l y_l yl表示输出值的随机变量

对于期望与方差,我们有下列计算公式
V a r ( x ) = E ( x 2 ) − E ( x ) 2 E ( A B ) = E ( A ) E ( B ) \begin{aligned} Var(x)=&E(x^2)-E(x)^2\\ E(AB)=&E(A)E(B) \end{aligned} Var(x)=E(AB)=E(x2)E(x)2E(A)E(B)
基于上述性质,对于相互独立的随机变量x、y,我们有
(式1.1) V a r ( x y ) = E ( x 2 ) E ( y 2 ) − E ( x ) 2 E ( y ) 2 = [ V a r ( x ) + E ( x ) 2 ] [ V a r ( y ) + E ( y ) 2 ] − E ( x ) 2 E ( y ) 2 = V a r ( x ) V a r ( y ) + V a r ( y ) E ( x ) 2 + V a r ( x ) E ( y ) 2 = V a r ( y ) E ( x ) 2 + V a r ( x ) E ( y 2 ) \begin{aligned} Var(xy)=&E(x^2)E(y^2)-E(x)^2E(y)^2\\ =&[Var(x)+E(x)^2][Var(y)+E(y)^2]-E(x)^2E(y)^2\\ =&Var(x)Var(y)+Var(y)E(x)^2+Var(x)E(y)^2\\ =&Var(y)E(x)^2+Var(x)E(y^2) \end{aligned}\tag{式1.1} Var(xy)====E(x2)E(y2)E(x)2E(y)2[Var(x)+E(x)2][Var(y)+E(y)2]E(x)2E(y)2Var(x)Var(y)+Var(y)E(x)2+Var(x)E(y)2Var(y)E(x)2+Var(x)E(y2)(1.1)

基于式1.1,式1.0可变为
(式1.2) V a r ( y l ) = n l V a r ( w l x l ) = n l [ V a r ( x l ) E ( w l ) 2 + V a r ( w l ) E ( x l 2 ) ] \begin{aligned} Var (y_l)=&n_l Var(w_lx_l)\\ =&n_l[Var(x_l)E(w_l)^2+Var(w_l)E(x_l^2)] \end{aligned}\tag{式1.2} Var(yl)==nlVar(wlxl)nl[Var(xl)E(wl)2+Var(wl)E(xl2)](1.2)
假设 w L w_L wL的均值为0,则式1.2变为
V a r ( y l ) = n l V a r ( w l x l ) = n l V a r ( w l ) E ( x l 2 ) ( 式 1.3 ) Var (y_l)=n_l Var(w_lx_l)=n_lVar(w_l)E(x_l^2)(式1.3) Var(yl)=nlVar(wlxl)=nlVar(wl)E(xl2)1.3
在卷积神经网络中,假设使用ReLu激活函数,有
x l = m a x ( 0 , y l − 1 ) x_l=max(0,y_{l-1}) xl=max(0,yl1)

我们先引入下列定理:

假设随机变量x的概率密度函数为g(x),则x的复合函数f(x)的均值为
E ( f ( x ) ) = ∫ − ∞ + ∞ f ( x ) g ( x ) d x E(f(x))=\int_{-\infty}^{+\infty}f(x)g(x)dx E(f(x))=+f(x)g(x)dx

依据下述假设

卷积核的参数均值为0,概率密度函数为偶函数

b l b_l bl=0,由于

y l = w l x l y_l=w_lx_l yl=wlxl
E [ y l ] = E [ w l x l ] = E [ w l ] E [ x l ] = 0 E[y_l]=E[w_lx_l]=E[w_l]E[x_l]=0 E[yl]=E[wlxl]=E[wl]E[xl]=0
f ( y l ) = ∫ − ∞ + ∞ 1 ∣ x l ∣ f ( y l x l ) f ( x l ) d x l = ∫ − ∞ + ∞ 1 ∣ x l ∣ f ( w l ) f ( x l ) d x l f(y_l)=\int_{-\infty}^{+\infty}\frac{1}{|x_{l}|}f(\frac{y_l}{x_l})f(x_l)dx_l=\int_{-\infty}^{+\infty}\frac{1}{|x_{l}|}f(w_l)f(x_l)dx_l f(yl)=+xl1f(xlyl)f(xl)dxl=+xl1f(wl)f(xl)dxl
f ( − y l ) = ∫ − ∞ + ∞ 1 ∣ x l ∣ f ( − y l x l ) f ( x l ) d x l = ∫ − ∞ + ∞ 1 ∣ x l ∣ f ( w l ) f ( x l ) d x l f(-y_l)=\int_{-\infty}^{+\infty}\frac{1}{|x_{l}|}f(\frac{-y_l}{x_l})f(x_l)dx_l=\int_{-\infty}^{+\infty}\frac{1}{|x_{l}|}f(w_l)f(x_l)dx_l f(yl)=+xl1f(xlyl)f(xl)dxl=+xl1f(wl)f(xl)dxl

y l y_l yl均值也为0,概率密度函数也为偶函数。

Z ( y l − 1 ) = x l 2 = [ m a x ( 0 , y l − 1 ) ] 2 Z(y_{l-1})=x_l^2=[max(0,y_{l-1})]^2 Z(yl1)=xl2=[max(0,yl1)]2,随机变量 y l − 1 y_{l-1} yl1的概率密度函数为 f ( y l − 1 ) f(y_{l-1}) f(yl1),则有
E ( Z ( y l − 1 ) ) = E ( x l 2 ) = ∫ − ∞ + ∞ [ m a x ( 0 , y l − 1 ) ] 2 f ( y l − 1 ) d y l − 1 = ∫ − ∞ 0 [ m a x ( 0 , y l − 1 ) ] 2 f ( y l − 1 ) d y l − 1 + ∫ 0 + ∞ [ m a x ( 0 , y l − 1 ) ] 2 f ( y l − 1 ) d y l − 1 = ∫ 0 + ∞ [ m a x ( 0 , y l − 1 ) ] 2 f ( y l − 1 ) d y l − 1 = ∫ 0 + ∞ y l − 1 2 f ( y l − 1 ) d y l − 1 \begin{aligned} E(Z(y_{l-1}))=E(x_l^2)&=\int_{-\infty}^{+\infty}[max(0,y_{l-1})]^2f(y_{l-1})dy_{l-1}\\ &=\int_{-\infty}^{0}[max(0,y_{l-1})]^2f(y_{l-1})dy_{l-1}+\int_{0}^{+\infty}[max(0,y_{l-1})]^2f(y_{l-1})dy_{l-1}\\ &=\int_{0}^{+\infty}[max(0,y_{l-1})]^2f(y_{l-1})dy_{l-1}\\ &=\int_{0}^{+\infty}y_{l-1}^2f(y_{l-1})dy_{l-1} \end{aligned} E(Z(yl1))=E(xl2)=+[max(0,yl1)]2f(yl1)dyl1=0[max(0,yl1)]2f(yl1)dyl1+0+[max(0,yl1)]2f(yl1)dyl1=0+[max(0,yl1)]2f(yl1)dyl1=0+yl12f(yl1)dyl1



V a r ( y l − 1 ) = ∫ − ∞ + ∞ y l − 1 2 f ( y l − 1 ) d y l − 1 = ∫ − ∞ 0 y l − 1 2 f ( y l − 1 ) d y l − 1 + ∫ 0 + ∞ y l − 1 2 f ( y l − 1 ) d y l − 1 = 2 ∫ 0 + ∞ y l − 1 2 f ( y l − 1 ) d y l − 1 ( y l − 1 2 f ( y l − 1 ) 是 偶 函 数 ) \begin{aligned} Var(y_{l-1})=&\int_{-\infty}^{+\infty}y_{l-1}^2f(y_{l-1})dy_{l-1}\\ =&\int_{-\infty}^{0}y_{l-1}^2f(y_{l-1})dy_{l-1}+\int_{0}^{+\infty}y_{l-1}^2f(y_{l-1})dy_{l-1}\\ =&2\int_{0}^{+\infty}y_{l-1}^2f(y_{l-1})dy_{l-1}\\ \\&(y_{l-1}^2f(y_{l-1})是偶函数) \end{aligned} Var(yl1)===+yl12f(yl1)dyl10yl12f(yl1)dyl1+0+yl12f(yl1)dyl120+yl12f(yl1)dyl1(yl12f(yl1))

所以有
E ( x l 2 ) = 1 2 V a r ( y l − 1 ) E(x_l^2)=\frac{1}{2}Var(y_{l-1}) E(xl2)=21Var(yl1)
将其代入式1.3,则有
V a r ( y l ) = n l V a r ( w l x l ) = 1 2 n l V a r ( w l ) V a r ( y l − 1 ) Var (y_l)=n_l Var(w_lx_l)=\frac{1}{2}n_lVar(w_l)Var(y_{l-1}) Var(yl)=nlVar(wlxl)=21nlVar(wl)Var(yl1)

为了让 l l l层与 l − 1 l-1 l1层的输出方差一致,即 V a r ( y l ) = V a r ( y l − 1 ) Var(y_l)=Var(y_{l-1}) Var(yl)=Var(yl1),则有
(式1.3) V a r ( w l ) = 2 n l Var(w_l)=\frac{2}{n_l}\tag{式1.3} Var(wl)=nl2(1.3)


反向传播

若使用 Δ x l c \Delta x^c_l Δxlc表示第 l l l层特征图的通道方向的误差,若通道数为 c l c_l cl,则 Δ x l c l \Delta x^{c_l}_l Δxlcl是一个 c l ∗ 1 c_l*1 cl1的向量,设第 l l l层卷积核的空间分辨率为 k l ∗ k l k_l*k_l klkl,使用 Δ y l \Delta y_l Δyl表示第 l l l层卷积后输出的 k l ∗ k l k_l*k_l klkl像素的误差,若通道数为 d l d_l dl,设 n ^ = k l 2 d l \hat n=k_l^2d_l n^=kl2dl,则 w ^ l \hat w_l w^l是一个 c ∗ n ^ c*\hat n cn^的矩阵, Δ y l \Delta y_l Δyl是一个 n ^ ∗ 1 \hat n*1 n^1的向量,则有
(式2.0) Δ x l c = w ^ l Δ y l \Delta x^c_l=\hat w_l\Delta y_l \tag{式2.0} Δxlc=w^lΔyl(2.0)
(上述式子我推不出来,若有哪位同学推出来了,望告知我,不胜感激)


假设与推导

1、第 l l l层卷积核的参数 w l w_l wl与第 l l l层特征图卷积后输出的 k ∗ k k*k kk像素的误差 Δ y l \Delta y_l Δyl相互独立
2、第 l l l层卷积核的参数 w l w_l wl服从均值为0的对称分布
3、第 l + 1 l+1 l+1层输入的导数 f ′ ( y l ) f'(y_l) f(yl)与第 l + 1 l+1 l+1层的误差 Δ x l + 1 \Delta x_{l+1} Δxl+1相互独立
4、第 l l l层的误差 Δ x l + 1 \Delta x_{l+1} Δxl+1独立同分布

依据上述假设以及式2.0,我们有

E ( Δ x l ) = E ( Δ x l c ) = E ( w ^ l Δ y l ) = E ( w ^ l ) E ( Δ y l ) = 0 E(\Delta x_l)=E(\Delta x^c_l)=E(\hat w_l \Delta y_l)=E(\hat w_l)E(\Delta y_l)=0\\ E(Δxl)=E(Δxlc)=E(w^lΔyl)=E(w^l)E(Δyl)=0
f ( Δ x l ) = ∫ − ∞ + ∞ 1 ∣ Δ y l ∣ f ( Δ x l Δ y l ) f ( Δ y l ) d y l = ∫ − ∞ + ∞ 1 ∣ Δ y l ∣ f ( w ^ l ) f ( Δ y l ) d Δ y l f(\Delta x_l)=\int_{-\infty}^{+\infty}\frac{1}{|\Delta y_{l}|}f(\frac{\Delta x_l}{ \Delta y_l})f(\Delta y_l)dy_l=\int_{-\infty}^{+\infty}\frac{1}{|\Delta y_{l}|}f(\hat w_l)f(\Delta y_l)d\Delta y_l f(Δxl)=+Δyl1f(ΔylΔxl)f(Δyl)dyl=+Δyl1f(w^l)f(Δyl)dΔyl
f ( − Δ x l ) = ∫ − ∞ + ∞ 1 ∣ Δ y l ∣ f ( − Δ x l Δ y l ) f ( Δ y l ) d y l = ∫ − ∞ + ∞ 1 ∣ Δ y l ∣ f ( w ^ l ) f ( Δ y l ) d Δ y l f(-\Delta x_l)=\int_{-\infty}^{+\infty}\frac{1}{|\Delta y_{l}|}f(\frac{-\Delta x_l}{ \Delta y_l})f(\Delta y_l)dy_l=\int_{-\infty}^{+\infty}\frac{1}{|\Delta y_{l}|}f(\hat w_l)f(\Delta y_l)d\Delta y_l f(Δxl)=+Δyl1f(ΔylΔxl)f(Δyl)dyl=+Δyl1f(w^l)f(Δyl)dΔyl

因此, Δ x l \Delta x_l Δxl也为服从均值为0的对称分布

由于 Δ y l = f ′ ( y l ) Δ x l + 1 \Delta y_l=f'(y_l)\Delta x_{l+1} Δyl=f(yl)Δxl+1,则有

E ( Δ y l ) = E ( f ′ ( y l ) Δ x l + 1 ) = E ( f ′ ( y l ) ) E ( Δ x l + 1 ) = 0 E(\Delta y_l)=E(f'(y_l)\Delta x_{l+1})=E(f'(y_l))E(\Delta x_{l+1})=0 E(Δyl)=E(f(yl)Δxl+1)=E(f(yl))E(Δxl+1)=0
V a r ( Δ y l ) = E [ ( Δ y l ) 2 ] = ∫ − ∞ + ∞ ( f ′ ( y l ) Δ x l + 1 ) 2 g ( Δ x l + 1 ) d ( Δ x l + 1 ) = ∫ 0 + ∞ ( Δ x l + 1 ) 2 g ( Δ x l + 1 ) d ( Δ x l + 1 ) = 1 2 V a r ( Δ x l + 1 ) \begin{aligned} Var(\Delta y_l)=E[(\Delta y_l)^2]=&\int_{-\infty}^{+\infty}(f'(y_l)\Delta x_{l+1})^2g(\Delta x_{l+1})d(\Delta x_{l+1})\\ =&\int_{0}^{+\infty}(\Delta x_{l+1})^2g(\Delta x_{l+1})d(\Delta x_{l+1})\\ =&\frac{1}{2} Var(\Delta x_{l+1}) \end{aligned} Var(Δyl)=E[(Δyl)2]===+(f(yl)Δxl+1)2g(Δxl+1)d(Δxl+1)0+(Δxl+1)2g(Δxl+1)d(Δxl+1)21Var(Δxl+1)

因此有
V a r ( Δ x l ) = V a r ( Δ x l c ) = n ^ l V a r ( w ^ ) V a r ( Δ y l ) = 1 2 n ^ l V a r ( w ^ ) V a r ( Δ x l + 1 ) Var(\Delta x_l)=Var(\Delta x_l^c)=\hat n_lVar(\hat w)Var(\Delta y_l)=\frac{1}{2}\hat n_l Var(\hat w)Var(\Delta x_{l+1}) Var(Δxl)=Var(Δxlc)=n^lVar(w^)Var(Δyl)=21n^lVar(w^)Var(Δxl+1)

为了让 l + 1 l+1 l+1层与 l l l层的梯度一致,则有
(式2.1) V a r ( w l ) = 2 n ^ l Var(w_l)=\frac{2}{\hat n_l}\tag{式2.1} Var(wl)=n^l2(2.1)

与式1.3不同的地方在于式1.3中的 n l n_l nl是第 l − 1 l-1 l1层特征图的个数,而 n ^ l \hat n_{l} n^l是第 l l l层的特征图的个数


MSRA初始化

MSRA初始化时,只会单独使用式2.1或是式1.3,如果单独使用式2.1,设第 l l l层的特征图数目为 d l d_l dl,对于前向传播而言,则有
V a r ( y L ) = V a r ( y 1 ) ∏ l = 2 L 1 2 n l V a r ( w l ) = V a r ( y 1 ) ∏ l = 2 L n l n ^ l = d 1 d L V a r ( y 1 ) Var (y_L)=Var(y_{1})\prod_{l=2}^{L}\frac{1}{2}n_lVar(w_l)=Var(y_{1})\prod_{l=2}^{L}\frac{n_l}{\hat n_l}=\frac{d_1}{d_L}Var(y_1) Var(yL)=Var(y1)l=2L21nlVar(wl)=Var(y1)l=2Ln^lnl=dLd1Var(y1)
一般来说,第一层与最后一层卷积核的卷积核个数相差基本不大(至少对于凯明老师的一些网络来说,是这样),因此,单独使用式2.1,并不会导致前向传播的信息大规模的衰减,对于式1.3,同理

由于权重应该服从对称分布,因此我们将其初始化为均值为0的高斯分布


为什么以方差作为分析工具

可以看到,不论是MSRA初始化还是Xavier初始化,均以方差相等来进行分析,这是为什么呢?以下为本人的猜测。
使用方差作为分析工具,应该是假定了梯度本身服从均值为0的正态分布,若把梯度看成是无限个随机事件叠加的结果,依据中心极限定理,梯度应该服从正态分布,均值为0我暂时想不到咋回事,而xavier初始化的论文中,也贴出了梯度的归一化直方图,大致上的确为均值为0的正态分布,而正态分布的方差越小,概率密度函数越高瘦,梯度取值为0的概率越大,若不同层的方差一致,则不会出现反向传播越靠后的层,梯度为0的概率越大的情况

这篇关于深度学习论文笔记(MSRA初始化与PReLU):Surpassing Human-Level Performance on ImageNet Classification的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/172021

相关文章

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

JVM 的类初始化机制

前言 当你在 Java 程序中new对象时,有没有考虑过 JVM 是如何把静态的字节码(byte code)转化为运行时对象的呢,这个问题看似简单,但清楚的同学相信也不会太多,这篇文章首先介绍 JVM 类初始化的机制,然后给出几个易出错的实例来分析,帮助大家更好理解这个知识点。 JVM 将字节码转化为运行时对象分为三个阶段,分别是:loading 、Linking、initialization

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识