Skip to content

Commit

Permalink
update chapter 19
Browse files Browse the repository at this point in the history
  • Loading branch information
SwordYork committed Mar 15, 2017
1 parent 59f308d commit de122b7
Show file tree
Hide file tree
Showing 5 changed files with 35 additions and 37 deletions.
2 changes: 1 addition & 1 deletion Chapter13/linear_factor_models.tex
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ \section{\glsentrytext{ICA}}
关于非线性~\glssymbol{ICA}~最初的工作可以参考~\citet{hyvarinen1999nonlinear},它和\gls{ensemble_learning}的成功结合可以参见~\citet{roberts2001independent,lappalainen2000nonlinear}。
\glssymbol{ICA}~的另一个非线性扩展是\firstall{NICE}方法~\citep{Dinh-et-al-arxiv2014},这个方法堆叠了一系列可逆变换(在\gls{encoder}阶段),其特性是能高效地计算每个变换的~\gls{jacobian}~行列式。
这使得我们能够精确地计算似然,并且像~\glssymbol{ICA}~一样,\glssymbol{NICE}~尝试将数据变换到具有因子的边缘分布的空间。
由于非线性\gls{encoder}的使用\footnote{译者注:相比于~\glssymbol{ICA}},这种方法更可能成功。
由于非线性\gls{encoder}的使用,这种方法更可能成功。%\footnote{译者注:相比于~\glssymbol{ICA}}
因为\gls{encoder}和一个能进行完美逆变换的\gls{decoder}相关联,所以可以直接从模型生成样本(首先从$p(\Vh)$采样,然后使用\gls{decoder})。
% 483

Expand Down
42 changes: 20 additions & 22 deletions Chapter19/approximate_inference.tex
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ \chapter{\glsentrytext{approximate_inference}}


\gls{DL}中难以处理的推断问题通常源于结构化图模型中\gls{latent_variable}之间的相互作用。
可以参考\figref{fig:intractable_graphs}的几个例子。
读者可以参考\figref{fig:intractable_graphs}的几个例子。
这些相互作用可能是\gls{undirected_model}的直接相互作用,也可能是\gls{directed_model}中同一个可见变量的共同祖先之间的``\gls{explaining_away}''作用。
% 623 end

Expand Down Expand Up @@ -102,7 +102,7 @@ \section{把推断视作优化问题}

对于一个较好的分布$q$的选择来说,$\CalL$是容易计算的。
对任意分布$q$的选择来说,$\CalL$提供了似然函数的一个下界。
越好地近似$p(\Vh\mid\Vv)$的分布$q(\Vh\mid\Vv)$得到的下界就越紧,换言之,就是与$\log p(\Vv)$更加接近。
越好地近似$p(\Vh\mid\Vv)$的分布$q(\Vh\mid\Vv)$得到的下界就越紧,换言之,就是与$\log p(\Vv)$更加接近。
$q(\Vh\mid\Vv) = p(\Vh\mid\Vv)$时,这个近似是完美的,也意味着$\CalL(\Vv,{\Vtheta},q) = \log {p(\Vv;{\Vtheta})} $
% 625

Expand Down Expand Up @@ -133,7 +133,7 @@ \section{\glsentrytext{EM}}
% 626


\glssymbol{EM}算法由交替迭代直到收敛的两步运算组成
\glssymbol{EM}算法由交替迭代,直到收敛的两步运算组成
\begin{itemize}
\item \firstgls{e_step}: 令${\Vtheta^{(0)}}$表示在这一步开始时的参数值。
对任何我们想要训练的(对所有的或者\gls{minibatch}数据均成立)索引为$i$的训练样本$\Vv^{(i)}$,令$q(\Vh^{(i)}\mid \Vv) = p(\Vh^{(i)}\mid\Vv^{(i)};\Vtheta^{(0)})$
Expand Down Expand Up @@ -229,7 +229,7 @@ \section{\glsentrytext{MAP}推断和\glsentrytext{sparse_coding}}
因此我们能够证明一种类似于~\glssymbol{EM}~算法的学习算法,其中我们轮流迭代两步,一步是用~\glssymbol{MAP}~推断估计出$\Vh^*$,另一步是更新$\Vtheta$来增大$\log p(\Vh^*,\Vv)$
从~\glssymbol{EM}~算法角度看,这也是对$\CalL$的一种形式的\gls{coordinate_ascent},交替迭代时通过推断来优化关于$q$$\CalL$以及通过参数更新来优化关于$\Vtheta$$\CalL$
作为一个整体,这个算法的正确性可以得到保证,因为$\CalL$$\log p(\Vv)$的下界。
在~\glssymbol{MAP}~推断中,这个保证是无效的,因为这个界会无限地松,由于~\gls{dirac_distribution}的熵的微分趋近于负无穷。
在~\glssymbol{MAP}~推断中,这个保证是无效的,因为~\gls{dirac_distribution}的熵的微分趋近于负无穷,使得这个界会无限地松
然而,人为加入一些$\Vmu$的噪声会使得这个界又有了意义。
% 628

Expand Down Expand Up @@ -262,7 +262,7 @@ \section{\glsentrytext{MAP}推断和\glsentrytext{sparse_coding}}

分布$p(\Vx\mid\Vh)$的难处理性导致了对数似然及其梯度也很难得到。
因此我们不能使用精确的\gls{MLE}来进行学习。
取而代之的是,我们通过\glssymbol{MAP}推断以及最大化由以$\Vh$为中心的\,\gls{dirac_distribution}所定义而成的\,\glssymbol{ELBO}\,来学习模型参数。
取而代之的是,我们通过~\glssymbol{MAP}~推断以及最大化由以$\Vh$为中心的\,\gls{dirac_distribution}所定义而成的~\glssymbol{ELBO}~来学习模型参数。
% 629


Expand All @@ -274,7 +274,7 @@ \section{\glsentrytext{MAP}推断和\glsentrytext{sparse_coding}}
% 629


我们可以通过交替迭代最小化$J$分别关于$\MH$$\MW$的方式来最小化$J$
我们可以通过交替迭代,分别关于$\MH$$\MW$最小化$J$的方式来最小化$J$
两个子问题都是凸的。
事实上,关于$\MW$的最小化问题就是一个\gls{linear_regression}问题。
然而关于这两个变量同时最小化$J$的问题通常并不是凸的。
Expand Down Expand Up @@ -353,17 +353,17 @@ \subsection{离散型\gls{latent_variable}}

在确定了如何表示分布$q$以后,我们只需要优化它的参数。
在离散型\gls{latent_variable}模型中,这是一个标准的优化问题。
基本上分布$q$的选择可以通过任何优化算法解决,比如说\gls{GD}算法。
基本上分布$q$的选择可以通过任何优化算法解决,比如\gls{GD}算法。
% 631


这个优化问题可以很快求解,因为它在许多学习算法的内循环中出现。
因为它在许多学习算法的内循环中出现,所以这个优化问题必须可以很快求解
为了追求速度,我们通常使用特殊设计的优化算法。
这些算法通常能够在极少的循环内解决一些小而简单的问题。
一个常见的选择是使用\gls{fixed_point_equation},换句话说,就是解关于$\hat{h}_i$的方程
\begin{align}
\frac{\partial}{\partial \hat{h}_i}\CalL = 0.
\end{align}
\begin{equation}
\frac{\partial}{\partial \hat{h}_i}\CalL = 0.
\end{equation}
我们反复地更新$\hat{\Vh}$不同的元素直到满足收敛准则。
% 631

Expand All @@ -379,17 +379,15 @@ \subsection{离散型\gls{latent_variable}}
\gls{binary_sparse_coding}模型中,输入$\Vv\in\SetR^n$,是由模型通过添加高斯噪声到$m$个或有或无的不同成分的和而生成的。
每一个成分可以是开或者关的,对应着\gls{hidden_unit} $\Vh \in\{0,1\}^m$:
\begin{align}
p(h_i = 1) = \sigma(b_i),
\end{align}
\begin{align}
p(\Vv\mid\Vh) = \CalN(\Vv;\MW \Vh,{\Vbeta}^{-1}),
p(h_i = 1) &= \sigma(b_i), \\
p(\Vv\mid\Vh) &= \CalN(\Vv;\MW \Vh,{\Vbeta}^{-1}),
\end{align}
其中$\Vb$是一个可以学习的\gls{BIAS}集合,$\MW$是一个可以学习的权值矩阵,${\Vbeta}$是一个可以学习的对角精度矩阵。
其中$\Vb$是一个可以学习的\gls{bias_aff}集合,$\MW$是一个可以学习的权值矩阵,${\Vbeta}$是一个可以学习的对角精度矩阵。
% 632


使用\gls{maximum_likelihood}来训练这样一个模型需要对参数进行求导。
我们考虑对其中一个\gls{BIAS}进行求导的过程:
我们考虑对其中一个\gls{bias_aff}进行求导的过程:
\begin{align}
& \frac{\partial}{\partial b_i} \log p(\Vv) \\
= & \frac{\frac{\partial}{\partial b_i} p(\Vv)}{p(\Vv)}\\
Expand Down Expand Up @@ -430,9 +428,9 @@ \subsection{离散型\gls{latent_variable}}


我们可以做一个\gls{mean_field}近似:
\begin{align}
\begin{equation}
q(\Vh\mid\Vv) = \prod_{i}^{}q(h_i\mid\Vv).
\end{align}
\end{equation}
% 633


Expand Down Expand Up @@ -475,7 +473,7 @@ \subsection{离散型\gls{latent_variable}}


原则上说,我们可以使用关于$\Vv$$\Vh$\gls{GA}。
这会成为一个完美的组合的\footnote{译者注:推断算法和学习算法的组合}推断和学习算法。
这会成为一个推断和学习算法的完美组合。%\footnote{译者注:推断算法和学习算法的组合}
但是,由于两个原因,我们往往不这么做。
第一点,对每一个$\Vv$我们需要存储$\hat{\Vh}$
我们通常更加偏向于那些不需要为每一个样本都准备内存的算法。
Expand All @@ -493,10 +491,10 @@ \subsection{离散型\gls{latent_variable}}
\gls{fixed_point_equation}的核心思想是我们寻找一个关于$\Vh$\gls{local_maximum},满足$\nabla_{\Vh}\CalL(\Vv,\Vtheta,\hat{\Vh}) = 0$
我们无法同时高效地计算所有$\hat{\Vh}$的元素。
然而,我们可以解决单个变量的问题:
\begin{align}
\begin{equation}
\label{eqn:1937}
\frac{\partial}{\partial \hat{h}_i} \CalL(\Vv,\Vtheta,\hat{\Vh}) = 0 .
\end{align}
\end{equation}
% 634 end


Expand Down
14 changes: 7 additions & 7 deletions Chapter20/deep_generative_models.tex
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ \section{\glsentrytext{BM}}

不仅仅使用局部统计信息的其他学习算法似乎需要假设更多的学习机制。
例如,对于大脑在\gls{MLP}中实现的\gls{back_propagation},似乎需要维持一个辅助通信的网络,并借此向后传输梯度信息。
<BAD>已经有学者\citep{Hinton-DL2007,Bengio-arxiv2015} 提出生物学上可行(和近似)的\gls{back_propagation}实现方案,但仍然有待验证,\citet{Bengio-arxiv2015} 还将梯度的\gls{back_propagation}链接到类似于\gls{BM}(但具有连续\gls{latent_variable})能量模型中的\gls{inference}。
已经有学者\citep{Hinton-DL2007,Bengio-arxiv2015} 提出生物学上可行(和近似)的\gls{back_propagation}实现方案,但仍然有待验证,\citet{Bengio-arxiv2015} 还将梯度的\gls{back_propagation}链接到类似于\gls{BM}(但具有连续\gls{latent_variable})能量模型中的\gls{inference}。

从生物学的角度看,\gls{BM}学习中的\gls{negative_phase}阶段有点难以解释。
正如\secref{sec:stochastic_maximum_likelihood_and_contrastive_divergence}所主张的,人类在睡眠时做梦可能是一种形式的\gls{negative_phase}采样。
Expand Down Expand Up @@ -172,7 +172,7 @@ \subsection{条件分布}
\subsection{训练\glsentrytext{RBM}}
\label{sec:training_restricted_boltzmann_machines}

<BAD>因为~\glssymbol{RBM}~允许以高效~\glssymbol{mcmc}~采样(\gls{block_gibbs_sampling}的形式)对$\tilde{P}(\Vv)$进行高效评估和求导,所以可以简单地使用\chapref{chap:confronting_the_partition_function}中描述的任意训练具有难解\gls{partition_function}模型的技术。
因为~\glssymbol{RBM}~允许以高效~\glssymbol{mcmc}~采样(\gls{block_gibbs_sampling}的形式)对$\tilde{P}(\Vv)$进行高效评估和求导,所以可以简单地使用\chapref{chap:confronting_the_partition_function}中描述的任意训练具有难解\gls{partition_function}模型的技术。
这包括~\glssymbol{contrastive_divergence}、\,\glssymbol{SML}(\glssymbol{persistent_contrastive_divergence})、\gls{ratio_matching}等。
与深度学习中使用的其他\gls{undirected_model}相比,\glssymbol{RBM}~可以相对直接地训练,因为我们可以以闭解形式计算$P(\RVh \mid \Vv)$
其他一些深度模型,如\gls{DBM},同时具备难处理的\gls{partition_function}和难以推断的难题。
Expand Down Expand Up @@ -261,7 +261,7 @@ \section{\glsentrytext{DBN}}

\chapref{chap:approximate_inference}中从基本原理导出的许多\gls{inference}方程相比,这种特定选择的~\glssymbol{MLP}~有些随意。
这个~\glssymbol{MLP}~是一个启发式选择,似乎在实践中效果不错,并在文献中一贯使用。
<BAD>许多近似\gls{inference}技术是由它们在一些约束下在对数似然上找到最大\emph{}变分下界的能力所驱动的。
许多近似\gls{inference}技术是由它们在一些约束下,并在对数似然上找到最大\emph{}变分下界的能力所驱动的。
我们可以使用~\glssymbol{DBN}~中~\glssymbol{MLP}~定义的\gls{hidden_unit}的期望,构造对数似然的变分下界,但这对于\gls{hidden_unit}上的\emph{任何}概率分布都是如此,并没有理由相信该~\glssymbol{MLP}~提供了一个特别的紧界。
特别地,\glssymbol{MLP}~忽略了~\glssymbol{DBN}~\gls{graphical_model}中许多重要的相互作用。
\glssymbol{MLP}~将信息从可见单元向上传播到最深的\gls{hidden_unit},但不向下或侧向传播任何信息。
Expand Down Expand Up @@ -430,7 +430,7 @@ \subsection{\glssymbol{DBM}\glsentrytext{meanfield}\gls{inference}}
\log \Big( \frac{Q(\Vh^{(1)}, \Vh^{(2)} \mid \Vv)}{P(\Vh^{(1)}, \Vh^{(2)} \mid \Vv)} \Big).
\end{align}

<BAD>一般来说,我们不必提供参数形式的近似分布,除了要保证独立性假设。
一般来说,我们不必提供参数形式的近似分布,除了要保证独立性假设。
变分近似过程通常能够恢复近似分布的函数形式。
然而,在二值\gls{hidden_unit}(我们在这里推导的情况)的\gls{meanfield}假设的情况下,不会由于预先固定模型的参数而损失一般性。

Expand Down Expand Up @@ -897,10 +897,10 @@ \subsection{条件协方差的\glsentrytext{undirected_model}}

相比~\glssymbol{mcrbm}~和~\glssymbol{mpot}~模型,\glssymbol{ssrbm}~以明显不同的方式参数化观察量的条件协方差。
\glssymbol{mcrbm}~和~\glssymbol{mpot}~都通过 $\big( \sum_j h_j^{(c)} \Vr^{(j)} \Vr^{(j)\top} + \MI \big)^{-1}$建模观察量的协方差结构,使用 $\Vh_j > 0$\gls{hidden_unit}的激活来对方向$\Vr^{(j)}$的条件协方差施加约束。
<BAD>相反,\glssymbol{ssrbm}~使用隐藏尖峰激活$h_i = 1$来指定观察的条件协方差,以沿着由相应权重向量指定的方向捏合精度矩阵。
相反,\glssymbol{ssrbm}~使用隐藏尖峰激活$h_i = 1$来指定观察的条件协方差,以沿着由相应权重向量指定的方向捏合精度矩阵。
\glssymbol{ssrbm}~条件协方差与一个不同模型给出的类似:概率主成分分析的乘积(PoPPCA)\citep{Williams2002}。
\gls{overcomplete}的设定下,\glssymbol{ssrbm}~参数化的稀疏激活仅允许在稀疏激活$h_i$的所选方向上有显著方差(高于由$\VLambda^{-1}$给出的近似方差)。
<BAD>在~\glssymbol{mcrbm}~或~\glssymbol{mpot}~模型中,\gls{overcomplete}的表示意味着,要在捕获观察空间中特定方向的变化需要在该方向上的正交投影下去除潜在的所有约束。
在~\glssymbol{mcrbm}~或~\glssymbol{mpot}~模型中,\gls{overcomplete}的表示意味着,要在捕获观察空间中特定方向的变化需要在该方向上的正交投影下去除潜在的所有约束。
这表明这些模型不太适合于\gls{overcomplete}设定。

\gls{ssrbm}~的主要缺点是参数的一些设置会对应于非正定的协方差矩阵。
Expand Down Expand Up @@ -1872,7 +1872,7 @@ \section{其他生成方案}

\citet{Sohl-Dickstein-et-al-ICML2015} 开发了一种基于非平衡热力学学习\gls{generative_model}的\,\textbf{扩散反演}(diffusion inversion)训练方案。
该方法基于我们希望从中采样的概率分布具有结构的想法。
<BAD>这种结构会被扩散过程逐渐破坏,概率分布逐渐地变得具有更多的熵。
这种结构会被扩散过程逐渐破坏,概率分布逐渐地变得具有更多的熵。
为了形成\gls{generative_model},我们可以反过来运行该过程,通过训练模型逐渐将结构恢复到非结构化分布。
通过迭代地应用使分布更接近目标分布的过程,我们可以逐渐接近该目标分布。
在涉及许多迭代以产生样本的意义上,这种方法类似于~\glssymbol{mcmc}~方法。
Expand Down
10 changes: 5 additions & 5 deletions Chapter9/convolutional_networks.tex
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ \section{动机}
另外,卷积提供了一种处理大小可变的输入的方法。
我们下面依次介绍这些思想。

传统的神经网络使用矩阵乘法来建立输入与输出的连接关系\footnote{译者注:这里可以粗略地理解为输入$\times$参数矩阵=输出。}
传统的神经网络使用矩阵乘法来建立输入与输出的连接关系%\footnote{译者注:这里可以粗略地理解为输入$\times$参数矩阵=输出。}
其中,参数矩阵中每一个单独的参数都描述了一个输入单元与一个输出单元间的交互。
这意味着每一个输出单元与每一个输入单元都产生交互。
然而,\gls{convolutional_network}具有\firstgls{sparse_interactions}(也叫做\firstgls{sparse_connectivity}或者\firstgls{sparse_weights})的特征。
Expand Down Expand Up @@ -163,7 +163,7 @@ \section{动机}
\emph{(下)}当$\Vs$是由矩阵乘法产生时,连接不再是稀疏的,所以所有的输出都会受到$x_3$的影响。}
\label{fig:chap9_area_of_effect}
\end{figure}
\footnotetext{译者注:译者认为此处应当是$x_3$。}
% \footnotetext{译者注:译者认为此处应当是$x_3$。}

% fig 9.3
\begin{figure}[!htb]
Expand All @@ -180,7 +180,7 @@ \section{动机}
\emph{(下)}当$\Vs$是由矩阵乘法产生时,连接不再是稀疏的,所以所有的输入都会影响$s_3$。}
\label{fig:chap9_receptive_field}
\end{figure}
\footnotetext{译者注:在生物中称之为``感受野''。}
%\footnotetext{译者注:在生物中称之为``感受野''。}

% fig 9.4
\begin{figure}[!htb]
Expand Down Expand Up @@ -552,7 +552,7 @@ \section{基本卷积函数的变体}
然而,输入像素中靠近边界的部分相比于中间部分对于输出像素的影响更小。
这可能会导致边界像素存在一定程度的欠表示。
这使得第三种极端情况产生了,在MATLAB中称为\firstgls{full}卷积。
它进行了足够多的零填充使得每个像素在每个方向上恰好被访问了$k$\footnote{译者注:图\ref{fig:chap9_zero_pad_shrink}给出了\gls{valid}卷积和\gls{same}卷积的例子,这里对\gls{full}卷积略作说明:我们可以认为\gls{full}卷积是在输入的两端各填充$k-1$个零,使得输入的每个像素都恰好被核访问$k$次,最终得到的输出的宽度为$[m+2(k-1)]-k+1=m+k-1$},最终输出图像的宽度为$m+k-1$%译者注
它进行了足够多的零填充使得每个像素在每个方向上恰好被访问了$k$,最终输出图像的宽度为$m+k-1$%\footnote{译者注:图\ref{fig:chap9_zero_pad_shrink}给出了\gls{valid}卷积和\gls{same}卷积的例子,这里对\gls{full}卷积略作说明:我们可以认为\gls{full}卷积是在输入的两端各填充$k-1$个零,使得输入的每个像素都恰好被核访问$k$次,最终得到的输出的宽度为$[m+2(k-1)]-k+1=m+k-1$}
在这种情况下,输出像素中靠近边界的部分相比于中间部分是更少像素的函数。
这将导致学得一个在卷积特征映射的所有位置都表现不错的单核更为困难。
通常零填充的最优数量(对于测试集的分类正确率)处于``\gls{valid}卷积''``\gls{same}卷积''之间的某个位置。
Expand Down Expand Up @@ -1091,7 +1091,7 @@ \section{\glsentrytext{convolutional_network}的神经科学基础}
换句话说,复杂细胞对于图像在方向$\tau$上的微小变换或者翻转图像(用白色代替黑色,反之亦然)具有不变性。

神经科学和机器学习之间最显著的对应关系,是从视觉上比较机器学习模型学得的特征与使用V1得到的特征。
\cite{Olshausen+Field-1996}说明,一个简单的无监督学习算法,稀疏编码,学习的特征具有与简单细胞类似的接受域\footnote{译者注:这里原文是``receptive field'',生物中称之为``感受野''}。
\cite{Olshausen+Field-1996}说明,一个简单的无监督学习算法,稀疏编码,学习的特征具有与简单细胞类似的接受域%\footnote{译者注:这里原文是``receptive field'',生物中称之为``感受野''}。
从那时起,我们发现,当应用于自然图像时,极其多样的统计学习算法学习类\gls{Gabor_function}的特征。这包括大多数深度学习算法,它们在其第一层中学习这些特征。
\figref{fig:chap9_feature_detectors}给出了一些例子。
因为如此众多不同的学习算法学习边缘检测器,所以很难仅基于学习算法学得的特征,来断定哪一个特定的学习算法是``正确''的大脑模型(虽然,当应用于自然图像时,如果一个算法\emph{不能}学得某种检测器时,它能够作为一种否定标志)。
Expand Down
4 changes: 2 additions & 2 deletions terminology.tex
Original file line number Diff line number Diff line change
Expand Up @@ -4170,15 +4170,15 @@

\newglossaryentry{e_step}
{
name=E步(期望步),
name=E步,
description={expectation step},
sort={expectation step},
symbol={E step}
}

\newglossaryentry{m_step}
{
name=M步(最大化步),
name=M步,
description={maximization step},
sort={maximization step},
symbol={M step}
Expand Down

0 comments on commit de122b7

Please sign in to comment.