Commit b3263c4b by xiaotong

minor updates

parent 1655ce5d
......@@ -1231,16 +1231,16 @@ x_{l+1}=x_l+\mathcal{F}(\textrm{LN}(x_l);\theta_l)
\parinterval 尽管使用Pre-Norm结构可以很容易地训练深层Transformer模型,但从信息传递的角度看,Transformer模型中第$n$层的输入仅仅依赖于前一层的输出。虽然残差连接可以将信息跨层传递,但是对于很深的网络,整个模型的输入和输出之间仍需要很多次残差连接才能进行有效的传递。为了使上层的网络可以更加方便地访问下层网络的信息,一种方法是直接引入更多跨层的连接。最简单的一种方法是直接将所有层的输出都连接到最上层,达到聚合多层信息的目的\cite{DBLP:conf/emnlp/BapnaCFCW18}\cite{wang-etal-2018-multi-layer}。另一种更加有效的方式是使用{\small\bfnew{动态线性层聚合方法}}\index{动态线性层聚合方法}(Dynamic Linear Combination of Layers,DLCL)\index{Dynamic Linear Combination of Layers,DLCL}。在每一层的输入中不仅考虑前一层的输出,而是将前面所有层的中间结果(包括词嵌入)进行线性聚合,理论上等价于常微分方程中的高阶求解方法\cite{WangLearning}。以Pre-Norm结构为例,具体做法如下:
\begin{itemize}
\vspace{0.5em}
\item 对于每一层的输出$z_l$(即$z_l=x_{l+1}$,对其进行层正则化,得到每一层的信息的表示
\item 对于每一层的输出$x_{l+1}$,对其进行层正则化,得到每一层的信息的表示
\begin{eqnarray}
L_{l}=\textrm{LN}(z_l)
z_{l}=\textrm{LN}(x_{l+1})
\label{eq:7.5-5}
\end{eqnarray}
注意,$z_0$表示词嵌入层的输出,$z_l(l>0)$表示Transformer网络中的各个子层。
\vspace{0.5em}
\item 定义一个维度为$(L_{num}+1)\times(L_{num}+1)$的权值矩阵$\mathbf{W}$,矩阵中每一行表示之前各子层对当前子层计算的贡献度,其中$L_{num}$的大小是编码端(或解码端)的层数。令$\mathbf{W}_{l,i}$代表权值矩阵$\mathbf{W}$$l$行第$i$列的权重,则层聚合的输出为$L_i$的线性加权和:
\item 定义一个维度为$(N+1)\times(N+1)$的权值矩阵$\mathbf{W}$,矩阵中每一行表示之前各子层对当前子层计算的贡献度,其中$N$的大小是编码端(或解码端)的层数。令$\mathbf{W}_{l,i}$代表权值矩阵$\mathbf{W}$$l$行第$i$列的权重,则层聚合的输出为$z_i$的线性加权和:
\begin{eqnarray}
g_l=\sum_{i=0}^{l}L_i\times \mathbf{W}_{l,i}
g_l=\sum_{i=0}^{l}z_i\times \mathbf{W}_{l,i}
\label{eq:7.5-6}
\end{eqnarray}
$g_l$会作为输入的一部分送入第$l+1$个子层。其网络的结构图\ref{fig:7.5-2}所示
......@@ -1256,7 +1256,7 @@ $g_l$会作为输入的一部分送入第$l+1$个子层。其网络的结构图\
\end{figure}
%-------------------------------------------
\parinterval 可以看到,权值矩阵$\mathbf{W}$是一个下三角矩阵。开始时,对矩阵参数的每行进行平均初始化,即初始化矩阵$\mathbf{W}_0$的每一行各个位置的值为$1/N,N \in (1,2,3 \cdots L_{num}+1)$。 伴随着神经网络的训练,网络通过反向传播算法来不断更新$\mathbf{W}$中每一行不同位置权重的大小。
\parinterval 可以看到,权值矩阵$\mathbf{W}$是一个下三角矩阵。开始时,对矩阵参数的每行进行平均初始化,即初始化矩阵$\mathbf{W}_0$的每一行各个位置的值为$1/M,M \in (1,2,3 \cdots N+1)$。 伴随着神经网络的训练,网络通过反向传播算法来不断更新$\mathbf{W}$中每一行不同位置权重的大小。
\parinterval 动态线性层聚合的一个好处是,系统可以自动学习不同子层对当前子层的贡献度。在实验中也发现,离当前子层更近的部分贡献度(权重)会更大,这也是符合直觉的。
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论