Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
SwordYork committed Jul 18, 2017
1 parent e727cf9 commit da2347e
Show file tree
Hide file tree
Showing 22 changed files with 39 additions and 38 deletions.
2 changes: 1 addition & 1 deletion Chapter10/sequence_modeling_rnn.tex
Original file line number Diff line number Diff line change
Expand Up @@ -973,7 +973,7 @@ \section{\glsentrytext{LSTM}和其他\glsentrytext{gated_rnn}}

\gls{leaky_unit}允许网络在较长持续时间内\emph{积累}信息(诸如用于特定特征或类的线索)。
然而,一旦该信息被使用,让\gls{NN}\emph{遗忘}旧的状态可能是有用的。
例如,如果一个序列是由子序列组成,我们希望\gls{leaky_unit}能在各子序列内积累线索,我们需要将状态设置为0以忘记旧状态的的机制
例如,如果一个序列是由子序列组成,我们希望\gls{leaky_unit}能在各子序列内积累线索,我们需要将状态设置为0以忘记旧状态的机制
我们希望\gls{NN}学会决定何时清除状态,而不是手动决定。
这就是\gls{gated_rnn}~要做的事。

Expand Down
2 changes: 1 addition & 1 deletion Chapter11/practical_methodology.tex
Original file line number Diff line number Diff line change
Expand Up @@ -345,7 +345,7 @@ \subsection{手动调整\glsentrytext{hyperparameter}}
手动调整\gls{hyperparameter}时,不要忘记最终目标:提升\gls{test_set}性能。
加入\gls{regularization}只是实现这个目标的一种方法。
只要\gls{training_error}低,随时都可以通过收集更多的训练数据来减少\gls{generalization_error}。
实践中能够确保学习有效的的暴力方法就是不断提高模型\gls{capacity}和\gls{training_set}的大小,直到解决问题。
实践中能够确保学习有效的暴力方法就是不断提高模型\gls{capacity}和\gls{training_set}的大小,直到解决问题。
这种做法增加了训练和推断的计算代价,所以只有在拥有足够资源时才是可行的。
原则上,这种做法可能会因为优化难度提高而失败,但对于许多问题而言,优化似乎并没有成为一个显著的障碍,当然,前提是选择了合适的模型。
% 419 end
Expand Down
2 changes: 1 addition & 1 deletion Chapter14/autoencoders.tex
Original file line number Diff line number Diff line change
Expand Up @@ -604,7 +604,7 @@ \section{\glsentrytext{CAE}}
在~\glssymbol{CAE}~的情况下,这两种推动力是\gls{reconstruction_error}和\gls{contractive}惩罚$\Omega(\Vh)$
单独的\gls{reconstruction_error}鼓励~\glssymbol{CAE}~学习一个恒等函数。
单独的\gls{contractive}惩罚将鼓励~\glssymbol{CAE}~学习关于$\Vx$是恒定的特征。
这两种推动力的的折衷产生导数$\frac{\partial f(\Vx)}{\partial \Vx}$大多是微小的\gls{AE}。
这两种推动力的折衷产生导数$\frac{\partial f(\Vx)}{\partial \Vx}$大多是微小的\gls{AE}。
只有少数\gls{hidden_unit},对应于一小部分输入数据的方向,可能有显著的导数。


Expand Down
2 changes: 1 addition & 1 deletion Chapter17/monte_carlo_methods.tex
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ \section{\glsentrytext{mcmc}方法}
在这种情况下,为了从分布$p_{\text{model}}(\RVx)$中近似采样,我们引入了一种称为\firstgls{markov_chain}的数学工具。
利用\gls{markov_chain}来进行\gls{monte_carlo}估计的这一类算法被称为\firstall{mcmc}方法。
\citet{koller-book2009}花了大量篇幅来描述\gls{mcmc}算法在\gls{ML}中的应用。
\glssymbol{mcmc}~技术最标准、最一般的的理论保证只适用于那些各状态概率均不为零的模型
\glssymbol{mcmc}~技术最标准、最一般的理论保证只适用于那些各状态概率均不为零的模型
因此,这些技术最方便的使用方法是用于从\firstgls{energy_based_model}即$p(\Vx)\propto \exp(-E(\Vx))$中采样,见\secref{sec:energy_based_models}。
在~\glssymbol{energy_based_model}~的公式表述中,每一个状态所对应的概率都不为零。
事实上,\glssymbol{mcmc}~方法可以被广泛地应用在包含$0$概率状态的许多概率分布中。
Expand Down
2 changes: 1 addition & 1 deletion Chapter4/numerical_computation.tex
Original file line number Diff line number Diff line change
Expand Up @@ -483,7 +483,7 @@ \section{\glsentrytext{constrained_optimization}}
如果$h^{(i)}(\Vx^*)= 0$,我们就说这个约束$h^{(i)}(\Vx)$\textbf{活跃}(active)的。
如果约束不是活跃的,则有该约束的问题的解与去掉该约束的问题的解至少存在一个相同的局部解。
一个不活跃约束有可能排除其他解。
例如,整个区域(代价相等的宽平区域)都是全局最优点的的凸问题可能因约束消去其中的某个子区域,或在非凸问题的情况下,收敛时不活跃的约束可能排除了较好的局部\gls{stationary_point}。
例如,整个区域(代价相等的宽平区域)都是全局最优点的凸问题可能因约束消去其中的某个子区域,或在非凸问题的情况下,收敛时不活跃的约束可能排除了较好的局部\gls{stationary_point}。
然而,无论不活跃的约束是否被包括在内,收敛时找到的点仍然是一个\gls{stationary_point}。
因为一个不活跃的约束$h^{(i)}$必有负值,那么$
\underset{\Vx}{\min}~ \underset{\Vlambda}{\max}~
Expand Down
4 changes: 2 additions & 2 deletions Chapter5/machine_learning_basics.tex
Original file line number Diff line number Diff line change
Expand Up @@ -1312,7 +1312,7 @@ \subsection{概率监督学习}

我们用于\gls{linear_regression}的实数正态分布是用均值参数化的。
我们提供这个均值的任何值都是有效的。
二元变量上的的分布稍微复杂些,因为它的均值必须始终在$0$$1$之间。
二元变量上的分布稍微复杂些,因为它的均值必须始终在$0$$1$之间。
解决这个问题的一种方法是使用~\gls{logistic_sigmoid}~函数将线性函数的输出压缩进区间$(0,1)$
该值可以解释为概率:
\begin{equation}
Expand Down Expand Up @@ -1761,7 +1761,7 @@ \subsection{\glsentrytext{curse_of_dimensionality}}
泛化到新数据点时,通过检测和新输入在相同网格中的训练\gls{example:chap5},我们可以判断如何处理新数据点。
例如,如果要估计某点$\Vx$处的概率密度,我们可以返回$\Vx$处单位体积内训练\gls{example:chap5}的数目除以训练\gls{example:chap5}的总数。
如果我们希望对一个\gls{example:chap5}进行分类,我们可以返回相同网格中训练\gls{example:chap5}最多的类别。
如果我们是做回归分析,我们可以平均该网格中\gls{example:chap5}对应的的\gls{target}值。
如果我们是做回归分析,我们可以平均该网格中\gls{example:chap5}对应的\gls{target}值。
但是,如果该网格中没有\gls{example:chap5},该怎么办呢?
因为在高维空间中参数配置数目远大于\gls{example:chap5}数目,大部分配置没有相关的\gls{example:chap5}。 %?? 配置
我们如何能在这些新配置中找到一些有意义的东西呢?
Expand Down
2 changes: 1 addition & 1 deletion Chapter7/regularization.tex
Original file line number Diff line number Diff line change
Expand Up @@ -813,7 +813,7 @@ \section{参数绑定和参数共享}
在这里我们使用$L^2$惩罚,但也可以使用其他选择。

这种方法由\cite{LasserreJ2006}提出,\gls{regularization}一个模型(\gls{supervised}模式下训练的分类器)的参数,使其接近另一个\gls{unsupervised}模式下训练的模型(捕捉观察到的输入数据的分布)的参数。
构造的这种架构使得分类模型中的许多参数能与\gls{unsupervised}模型中对应的的参数匹配
构造的这种架构使得分类模型中的许多参数能与\gls{unsupervised}模型中对应的参数匹配

参数范数惩罚是\gls{regularization}参数使其彼此接近的一种方式,而更流行的方法是使用约束:\emph{强迫某些参数相等}。
由于我们将各种模型或模型组件解释为共享唯一的一组参数,这种\gls{regularization}方法通常被称为\firstgls{parameter_sharing}。
Expand Down
2 changes: 1 addition & 1 deletion Chapter8/optimization_for_training_deep_models.tex
Original file line number Diff line number Diff line change
Expand Up @@ -724,7 +724,7 @@ \section{基本算法}

\subsection{\glsentrytext{SGD}}
\label{sec:stochastic_gradient_descent_chap8}
\glsacr{SGD}及其变种很可能是一般\gls{ML}中应用最多的的优化算法,特别是在\gls{DL}中。
\glsacr{SGD}及其变种很可能是一般\gls{ML}中应用最多的优化算法,特别是在\gls{DL}中。
\secref{sec:batch_and_minibatch_algorithms}中所讨论的,按照\gls{DGD}抽取$m$\gls{minibatch}(独立同分布的)样本,通过计算它们梯度均值,我们可以得到梯度的\gls{unbiased}估计。

% 286 mid
Expand Down
2 changes: 1 addition & 1 deletion Chapter9/convolutional_networks.tex
Original file line number Diff line number Diff line change
Expand Up @@ -1135,7 +1135,7 @@ \section{卷积网络与深度学习的历史}

% -- 360 --

\gls{convolutional_network}是第一批能使用反向传播有效训练的的深度网络之一
\gls{convolutional_network}是第一批能使用反向传播有效训练的深度网络之一
现在仍不完全清楚为什么\gls{convolutional_network}在一般的反向传播网络被认为已经失败时反而成功了。
这可能可以简单地归结为\gls{convolutional_network}比全连接网络计算效率更高,因此使用它们运行多个实验并调整它们的实现和超参数更容易。
更大的网络也似乎更容易训练。
Expand Down
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,9 +89,10 @@
@endymecy name:YUE-DaJiong @9578577 @linzhp @cnscottzheng @germany-zhu @zhangyafeikimi @showgood163 @gump88
@kangqf @NeutronT @badpoem @kkpoker @Seaball @wheaio @angrymidiao @ZhiweiYang @corenel @zhaoyu611 @SiriusXDJ @dfcv24 EmisXXY
FlyingFire vsooda @friskit-china @poerin @ninesunqian @JiaqiYao @Sofring @wenlei @wizyoung @imageslr @@indam @XuLYC
@zhouqingping @freedomRen @runPenguin @pkuwwt @wuqi @tjliupeng @neo0801 @jt827859032 @demolpc
@zhouqingping @freedomRen @runPenguin @pkuwwt @wuqi @tjliupeng @neo0801 @jt827859032 @demolpc @fishInAPool
@xiaolangyuxin @jzj1993 @whatbeg

如有遗漏,请务必通知我们,可以发邮件至`echo c3dvcmQueW9ya0BnbWFpbC5jb20K | base64 -d`
如有遗漏,请务必通知我们,可以发邮件至`echo c3dvcmQueW9ya0BnbWFpbC5jb20K | base64 --decode`
这是我们必须要感谢的,所以不要不好意思。


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -301,12 +301,12 @@ p(\RSx = x \mid \RSz = z) p(\RSy = y \mid \RSz = z).
如果协方差是负的,那么其中一个变量倾向于取得相对较大的值的同时,另一个变量倾向于取得相对较小的值,反之亦然。
其他的衡量指标如相关系数将每个变量的贡献归一化,为了只衡量变量的相关性而不受各个变量尺度大小的影响。

协方差和相关性是有联系的,但实际上不同的概念
协方差和相关性是有联系的,但实际上是不同的概念
它们是有联系的,因为两个变量如果相互独立那么它们的协方差为零,如果两个变量的协方差不为零那么它们一定是相关的。
然而,独立性又是和协方差完全不同的性质。
两个变量如果协方差为零,它们之间一定没有线性关系。
独立性是比零协方差的要求更强,因为独立性还排除了非线性的关系。
两个变量相互依赖但是具有零协方差是可能的
独立性比零协方差的要求更强,因为独立性还排除了非线性的关系。
两个变量相互依赖但具有零协方差是可能的
例如,假设我们首先从区间$[-1, 1]$上的均匀分布中采样出一个实数$x$。
然后我们对一个随机变量 $s$进行采样。
$s$以$\frac{1}{2}$的概率值为1,否则为-1。
Expand Down
4 changes: 2 additions & 2 deletions docs/_posts/2016-12-04-Chapter4_numerical_computation.md
Original file line number Diff line number Diff line change
Expand Up @@ -478,10 +478,10 @@ Karush–Kuhn–Tucker方法\footnote{KKT~方法是\textbf{Lagrange乘子法}(
等式约束对应项的符号并不重要;因为优化可以自由选择每个$\lambda_i$的符号,我们可以随意将其定义为加法或减法。

不等式约束特别有趣。
如果$h^{(i)}(\Vx^*)= 0$,我们就说说这个约束$h^{(i)}(\Vx)$是\textbf{活跃}(active)的。
如果$h^{(i)}(\Vx^*)= 0$,我们就说这个约束$h^{(i)}(\Vx)$是\textbf{活跃}(active)的。
如果约束不是活跃的,则有该约束的问题的解与去掉该约束的问题的解至少存在一个相同的局部解。
一个不活跃约束有可能排除其他解。
例如,整个区域(代价相等的宽平区域)都是全局最优点的的凸问题可能因约束消去其中的某个子区域,或在非凸问题的情况下,收敛时不活跃的约束可能排除了较好的局部驻点。
例如,整个区域(代价相等的宽平区域)都是全局最优点的凸问题可能因约束消去其中的某个子区域,或在非凸问题的情况下,收敛时不活跃的约束可能排除了较好的局部驻点。
然而,无论不活跃的约束是否被包括在内,收敛时找到的点仍然是一个驻点。
因为一个不活跃的约束$h^{(i)}$必有负值,那么$
\underset{\Vx}{\min}~ \underset{\Vlambda}{\max}~
Expand Down
4 changes: 2 additions & 2 deletions docs/_posts/2016-12-05-Chapter5_machine_learning_basics.md
Original file line number Diff line number Diff line change
Expand Up @@ -1318,7 +1318,7 @@ MAP\,贝叶斯推断提供了一个直观的方法来设计复杂但可解释的

我们用于线性回归的实数正态分布是用均值参数化的。
我们提供这个均值的任何值都是有效的。
二元变量上的的分布稍微复杂些,因为它的均值必须始终在$0$和$1$之间。
二元变量上的分布稍微复杂些,因为它的均值必须始终在$0$和$1$之间。
解决这个问题的一种方法是使用~logistic sigmoid~函数将线性函数的输出压缩进区间$(0,1)$。
该值可以解释为概率:
\begin{equation}
Expand Down Expand Up @@ -1774,7 +1774,7 @@ $k$-均值聚类初始化$k$个不同的中心点$\{\Vmu^{(1)},\dots,\Vmu^{(k)}\
泛化到新数据点时,通过检测和新输入在相同网格中的训练样本,我们可以判断如何处理新数据点。
例如,如果要估计某点$\Vx$处的概率密度,我们可以返回$\Vx$处单位体积内训练样本的数目除以训练样本的总数。
如果我们希望对一个样本进行分类,我们可以返回相同网格中训练样本最多的类别。
如果我们是做回归分析,我们可以平均该网格中样本对应的的目标值
如果我们是做回归分析,我们可以平均该网格中样本对应的目标值
但是,如果该网格中没有样本,该怎么办呢?
因为在高维空间中参数配置数目远大于样本数目,大部分配置没有相关的样本。 %?? 配置
我们如何能在这些新配置中找到一些有意义的东西呢?
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1828,7 +1828,7 @@ Krylov方法是用于执行各种操作的一组迭代技术,这些操作包

<!-- % -- 218 -- -->

其中一个算法上的变化是用损失函数的交叉熵族替代均方误差
其中一个算法上的变化是用交叉熵族损失函数替代均方误差损失函数
均方误差在20世纪80年代和90年代流行,但逐渐被交叉熵损失替代,并且最大似然原理的想法在统计学界和机器学习界之间广泛传播。
使用交叉熵损失大大提高了具有~sigmoid~和softmax输出的模型的性能,而当使用均方误差损失时会存在饱和和学习缓慢的问题。

Expand Down
2 changes: 1 addition & 1 deletion docs/_posts/2016-12-07-Chapter7_regularization.md
Original file line number Diff line number Diff line change
Expand Up @@ -808,7 +808,7 @@ $\Omega(\Vw^{(A)}, \Vw^{(B)}) = \norm{\Vw^{(A)}-\Vw^{(B)}}_2^2$。
在这里我们使用$L^2$惩罚,但也可以使用其他选择。

这种方法由{LasserreJ2006}提出,正则化一个模型(监督模式下训练的分类器)的参数,使其接近另一个无监督模式下训练的模型(捕捉观察到的输入数据的分布)的参数。
构造的这种架构使得分类模型中的许多参数能与无监督模型中对应的的参数匹配
构造的这种架构使得分类模型中的许多参数能与无监督模型中对应的参数匹配

参数范数惩罚是正则化参数使其彼此接近的一种方式,而更流行的方法是使用约束:\emph{强迫某些参数相等}。
由于我们将各种模型或模型组件解释为共享唯一的一组参数,这种正则化方法通常被称为参数共享。
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -727,7 +727,7 @@ share: false

## 随机梯度下降

随机梯度下降及其变种很可能是一般机器学习中应用最多的的优化算法,特别是在深度学习中。
随机梯度下降及其变种很可能是一般机器学习中应用最多的优化算法,特别是在深度学习中。
如\sec?中所讨论的,按照数据生成分布抽取$m$个小批量(独立同分布的)样本,通过计算它们梯度均值,我们可以得到梯度的无偏估计。

<!-- % 286 mid -->
Expand Down Expand Up @@ -1049,7 +1049,7 @@ Nesterov 动量中,梯度计算在施加当前速度之后。
<!-- % 293 mid -->

通常情况下,我们可以为每个单元的偏置设置启发式挑选的常数,仅随机初始化权重。
额外的参数(例如用于编码预测条件方差的参数)通常和偏差一样设置为启发式选择的常数
额外的参数(例如用于编码预测条件方差的参数)通常和偏置一样设置为启发式选择的常数

<!-- % 293 end -->

Expand Down Expand Up @@ -1709,7 +1709,7 @@ $\hat{y}$的更新值为
一层的输入通常是前一层的非线性激活函数(如整流线性函数)的输出。
因此,输入的统计量更符合非高斯,而更不服从线性操作的标准化。

\chap?所述的卷积网络,在特征映射中每个空间位置同样地标准化$\Vmu$和$\Vsigma$是很重要的,能使特征映射的统计量不因空间位置而保持相同
\chap?所述的卷积网络,在特征映射中每个空间位置同样地标准化$\Vmu$和$\Vsigma$是很重要的,能使特征映射的统计量在不同的空间位置,仍然保持相同


## 坐标下降
Expand Down Expand Up @@ -1921,7 +1921,7 @@ Polyak平均{cite?}会平均优化算法在参数空间访问轨迹中的几个

课程学习研究的另一个重要贡献体现在训练循环神经网络捕获长期依赖:
{Zaremba+Sutskever-arxiv2014}发现使用\emph{随机课程}获得了更好的结果,其中容易和困难的示例混合在一起,随机提供给学习者,更难示例(这些具有长期依赖)的平均比例在逐渐上升。
具有确定性课程,没有发现超过基线(完整训练集的普通训练)的改进。
而使用确定性课程,并没有发现超过基线(完整训练集的普通训练)的改进。

现在我们已经介绍了一些基本的神经网络模型,以及如何进行正则化和优化。
在接下来的章节中,我们转向特化的神经网络家族,允许其扩展到能够处理很大规模的数据和具有特殊结构的数据。
Expand Down
2 changes: 1 addition & 1 deletion docs/_posts/2016-12-09-Chapter9_convolutional_networks.md
Original file line number Diff line number Diff line change
Expand Up @@ -1119,7 +1119,7 @@ Gabor函数描述在图像中的2维点处的权重。我们可以认为图像

<!-- % -- 360 -- -->

卷积网络是第一批能使用反向传播有效训练的的深度网络之一
卷积网络是第一批能使用反向传播有效训练的深度网络之一
现在仍不完全清楚为什么卷积网络在一般的反向传播网络被认为已经失败时反而成功了。
这可能可以简单地归结为卷积网络比全连接网络计算效率更高,因此使用它们运行多个实验并调整它们的实现和超参数更容易。
更大的网络也似乎更容易训练。
Expand Down
4 changes: 2 additions & 2 deletions docs/_posts/2016-12-10-Chapter10_sequence_modeling_rnn.md
Original file line number Diff line number Diff line change
Expand Up @@ -653,7 +653,7 @@ RNN~可以接收向量序列$\Vx^{(t)}$作为输入,而不是仅接收单个
}
\end{figure}

如果上下文$C$是一个向量,则编码器~RNN~只是在\sec?描述的向量到序列~RNN。
如果上下文$C$是一个向量,则解码器~RNN~只是在\sec?描述的向量到序列~RNN。
正如我们所见,向量到序列~RNN~至少有两种接受输入的方法。
输入可以被提供为~RNN~的初始状态,或连接到每个时间步中的隐藏单元。
这两种方式也可以结合。
Expand Down Expand Up @@ -969,7 +969,7 @@ $d$~时间步的跳跃连接可以确保单元总能被$d$个时间步前的那

渗漏单元允许网络在较长持续时间内\emph{积累}信息(诸如用于特定特征或类的线索)。
然而,一旦该信息被使用,让神经网络\emph{遗忘}旧的状态可能是有用的。
例如,如果一个序列是由子序列组成,我们希望渗漏单元能在各子序列内积累线索,我们需要将状态设置为0以忘记旧状态的的机制
例如,如果一个序列是由子序列组成,我们希望渗漏单元能在各子序列内积累线索,我们需要将状态设置为0以忘记旧状态的机制
我们希望神经网络学会决定何时清除状态,而不是手动决定。
这就是门控RNN~要做的事。

Expand Down
Loading

0 comments on commit da2347e

Please sign in to comment.