Skip to content

Commit

Permalink
add website
Browse files Browse the repository at this point in the history
  • Loading branch information
SwordYork committed May 14, 2017
1 parent 8d9c9ef commit 27ffce6
Show file tree
Hide file tree
Showing 8 changed files with 75 additions and 74 deletions.
2 changes: 1 addition & 1 deletion Chapter1/introduction.tex
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
% !Mode:: "TeX:UTF-8"
% Translator: Shenjian Zhao
\chapter{前言}
\chapter{引言}
\label{chap:introduction}
远在古希腊时期,发明家就梦想着创造能自主思考的机器。
神话人物皮格马利翁(Pygmalion)、代达罗斯(Daedalus)和赫淮斯托斯(Hephaestus)可以被看作传说中的发明家,而加拉蒂亚(Galatea)、塔洛斯(Talos)和潘多拉(Pandora)则可以被视为人造生命\citep{ovid2004metamorphoses,sparkes1996red,1997works}。
Expand Down
102 changes: 45 additions & 57 deletions acknowledgments.tex
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ \chapter*{中文版致谢}
在此我们一一列出,以表示我们由衷的感谢!

\begin{itemize}
\item 第一章(前言): 刘畅、许丁杰、潘雨粟和NeutronT对本章进行了阅读,并对很多语句提出了不少修改建议。林中鹏进行了校对,他提出了很多独到的修改建议。
\item 第一章(引言): 刘畅、许丁杰、潘雨粟和NeutronT对本章进行了阅读,并对很多语句提出了不少修改建议。林中鹏进行了校对,他提出了很多独到的修改建议。
\item 第二章(线性代数):许丁杰和骆徐圣阅读本章,并修改语句。李若愚进行了校对,提出了很多细心的建议。
\item 第三章(概率与信息论):许丁杰阅读本章,并修改语句。李培炎和何翊卓进行了校对,并修改了很多中文用词,使翻译更加准确。
\item 第四章(数值计算):张亚霏阅读本章,并对其他章节也有提出了一些修改建议。张源源进行了校对,并指出了原文可能存在的问题,非常仔细。
Expand All @@ -37,7 +37,7 @@ \chapter*{中文版致谢}
\item 第十四章(自编码器):李雨慧和黄平春进行了校对。李雨慧提升了语言的流畅度,黄平春纠正了不少错误,提高了准确性。
\item 第十五章(表示学习):cnscottzheng阅读本章,并修改语句。
\item 第十七章(蒙特卡罗方法):张远航提供了非常细致的校对,后续还校对了一遍,使译文质量大大提升。
\item 第十八章(面对配分函数):吴家楠进行了校对,提升了译文准确性和可读性。
\item 第十八章(直面配分函数):吴家楠进行了校对,提升了译文准确性和可读性。
\item 第十九章(近似推断):张远航和张源源进行了校对。这章虽篇幅不大,但内容有深度,译文在两位的帮助下提高了准确度。
\end{itemize}

Expand All @@ -53,86 +53,74 @@ \chapter*{中文版致谢}


\chapter*{原书致谢}
This book would not have been possible without the contributions of many people.

We would like to thank those who commented on our proposal for the book and helped plan its contents and organization:
Guillaume Alain, Kyunghyun Cho, \c{C}a\u{g}lar G\"ul\c{c}ehre, David Krueger, Hugo Larochelle, Razvan Pascanu and Thomas Roh\'ee.
如果没有他人的贡献,这本书将不可能完成。
我们感谢为本书提出建议和帮助组织内容结构的人:
Guillaume Alain, Kyunghyun Cho, \c{C}a\u{g}lar G\"ul\c{c}ehre, David Krueger, Hugo Larochelle, Razvan Pascanu and Thomas Roh\'ee 。

We would like to thank the people who offered feedback on the content of the book itself. Some offered feedback on many chapters:

我们感谢为本书内容提供反馈的人。其中一些人对许多章都给出了建议:
Mart\'in Abadi, Guillaume Alain, Ion Androutsopoulos, Fred Bertsch, Olexa Bilaniuk, Ufuk Can Biçici, Matko Bo\v{s}njak, John Boersma, Greg Brockman, Alexandre de Brébisson, Pierre Luc Carrier, Sarath Chandar, Pawel Chilinski, Mark Daoust, Oleg Dashevskii, Laurent Dinh, Stephan Dreseitl, Jim Fan, Miao Fan, Meire Fortunato, Fr\'ed\'eric Francis, Nando de Freitas, \c{C}a\u{g}lar G\"ul\c{c}ehre, Jurgen Van Gael, Javier Alonso Garc\'ia, Jonathan Hunt, Gopi Jeyaram, Chingiz Kabytayev, Lukasz Kaiser, Varun Kanade, Asifullah Khan, Akiel Khan, John King, Diederik P. Kingma, Yann LeCun, Rudolf Mathey, Matías Mattamala, Abhinav Maurya, Kevin Murphy, Oleg Mürk, Roman Novak, Augustus Q. Odena, Simon Pavlik, Karl Pichotta, Eddie Pierce, Kari Pulli, Roussel Rahman, Tapani Raiko, Anurag Ranjan, Johannes Roith, Mihaela Rosca, Halis Sak, César Salgado, Grigory Sapunov, Yoshinori Sasaki, Mike Schuster, Julian Serban, Nir Shabat, Ken Shirriff, Andre Simpelo, Scott Stanley, David Sussillo, Ilya Sutskever, Carles Gelada Sáez, Graham Taylor, Valentin Tolmer, Massimiliano Tomassoli, An Tran, Shubhendu Trivedi, Alexey Umnov, Vincent Vanhoucke, Marco Visentini-Scarzanella, Martin Vita, David Warde-Farley, Dustin Webb, Kelvin Xu, Wei Xue, Ke Yang, Li Yao, Zygmunt Zaj\k{a}c and Ozan \c{C}a\u{g}layan.

We would also like to thank those who provided us with useful feedback on individual chapters:

我们也要感谢对单个章节提供有效反馈的人:


\begin{itemize}
\item Notation: Zhang Yuanhang.
\item
Chapter 1, Introduction:
\item 数学符号: Zhang Yuanhang.
\item 第一章(引言):
Yusuf Akgul, Sebastien Bratieres, Samira Ebrahimi, Charlie Gorichanaz, Brendan Loudermilk, Eric Morris, Cosmin Pârvulescu and Alfredo Solano.
\item Chapter 2, Linear Algebra:
\item 第二章(线性代数):
Amjad Almahairi, Nikola Bani\'{c}, Kevin Bennett, Philippe Castonguay, Oscar Chang, Eric Fosler-Lussier, Andrey Khalyavin, Sergey Oreshkov, Istv\'an Petr\'as, Dennis Prangle, Thomas Roh\'ee, Gitanjali Gulve Sehgal, Colby Toland, Alessandro Vitale and Bob Welland.
\item Chapter 3, Probability and Information Theory:
\item 第三章(概率与信息论):
John Philip Anderson, Kai Arulkumaran, Vincent Dumoulin, Rui Fa, Stephan Gouws, Artem Oboturov, Antti Rasmus, Alexey Surkov and Volker Tresp.
\item Chapter 4, Numerical Computation:
\item 第四章(数值计算):
Tran Lam AnIan Fischer and Hu Yuhuang.
\item Chapter 5, Machine Learning Basics:
\item 第五章(机器学习基础):
Dzmitry Bahdanau, Justin Domingue, Nikhil Garg, Makoto Otsuka, Bob Pepin, Philip Popien, Emmanuel Rayner, Peter Shepard, Kee-Bong Song, Zheng Sun and Andy Wu.
\item Chapter 6, Deep Feedforward Networks:
\item 第六章(深度前馈网络):
Uriel Berdugo, Fabrizio Bottarel, Elizabeth Burl, Ishan Durugkar, Jeff Hlywa, Jong Wook Kim, David Krueger and Aditya Kumar Praharaj.
\item Chapter 7, Regularization for Deep Learning:
\item 第七章(深度学习中的正则化):
Morten Kolbæk, Kshitij Lauria, Inkyu Lee, Sunil Mohan, Hai Phong Phan and Joshua Salisbury.
\item Chapter 8, Optimization for Training Deep Models:
\item 第八章(深度模型中的优化):
Marcel Ackermann, Peter Armitage, Rowel Atienza, Andrew Brock, Tegan Maharaj, James Martens, Kashif Rasul, Klaus Strobl and Nicholas Turner.
\item Chapter 9, Convolutional Networks:
\item 第九章(卷积网络):
Mart\'in Arjovsky, Eugene Brevdo, Konstantin Divilov, Eric Jensen, Mehdi Mirza, Alex Paino, Marjorie Sayer, Ryan Stout and Wentao Wu.
\item Chapter 10, Sequence Modeling:
\item 第十章(序列建模:循环和递归网络):
Gökçen Eraslan, Steven Hickson, Razvan Pascanu, Lorenzo von Ritter, Rui Rodrigues, Dmitriy Serdyuk, Dongyu Shi and Kaiyu Yang.
\item Chapter 11, Practical Methodology:
\item 第十一章(实践方法论):
Daniel Beckstein.
\item Chapter 12, Applications:
\item 第十二章(应用):
George Dahl, Vladimir Nekrasov and Ribana Roscher.
\item Chapter 13, Linear Factor Models:
\item 第十三章(线性因子模型):
Jayanth Koushik.
\item Chapter 15, Representation Learning:
\item 第十五章(表示学习):
Kunal Ghosh.
\item Chapter 16, Structured Probabilistic Models for Deep Learning:
\item 第十六章( 深度学习中的结构化概率模型):
Minh Lê and Anton Varfolom.
\item Chapter 18, Confronting the Partition Function:
\item 第十八章(直面配分函数):
Sam Bowman.
\item Chapter 19, Approximate Inference:
\item 第十九章(近似推断):
Yujia Bao.
\item Chapter 20, Deep Generative Models:
\item 第二十章(深度生成模型):
Nicolas Chapados, Daniel Galvez, Wenming Ma, Fady Medhat, Shakir Mohamed and Gr\'egoire Montavon.
\item Bibliography:
\item 参考文献:
Lukas Michelbacher and Leslie N. Smith.
\end{itemize}
% CHECK: make sure the chapters are still in order

We also want to thank those who allowed us to reproduce images, figures or data from
their publications.
We indicate their contributions
in the figure captions throughout the text.
% David Warde-Farley,
% Matthew D. Zeiler,
% Rob Fergus,
% Nicolas Chapados,
% Razvan Pascanu,
% James Bergstra,
% Dumitru Erhan,
% Emily Denton
% and Soumith Chintala.

We would like to thank Lu Wang for writing pdf2htmlEX, which we used
to make the web version of the book, and for offering support to
improve the quality of the resulting HTML.

We would like to thank Ian's wife Daniela Flori Goodfellow for
patiently supporting Ian during the writing of the book as well as for
help with proofreading.

We would like to thank the Google Brain team for providing an
intellectual environment where Ian could devote a tremendous amount of
time to writing this book and receive feedback and guidance from
colleagues. We would especially like to thank Ian's former manager,
Greg Corrado, and his current manager, Samy Bengio, for their support
of this project. Finally, we would like to thank Geoffrey Hinton for
encouragement when writing was difficult.

我们还要感谢那些允许我们从他们的出版物中复制图片、数据的人。
我们在图片标题的文字中注明了他们的贡献。

我们还要感谢Lu Wang为我们写了pdf2htmlEX,我们用它来制作这本书的网页版本,Lu Wang还帮助我们改进了生成的HTML的质量。


我们还要感谢Ian的妻子Daniela Flori Goodfellow,在Ian的写作过程中的耐心支持和检查。


我们还要感谢Google Brain团队提供了学术环境,从而使得Ian能够花费大量时间写作此书并接受同行的反馈和指导。
我们特别感谢Ian的前任经理Greg Corrado 和他的现任经理Samy Bengio对这个项目的支持。
最后我们还要感谢Geoffrey Hinton在写作困难时的鼓励。


1 change: 1 addition & 0 deletions dlbook_cn.tex
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,7 @@

\newpage
\input{acknowledgments.tex}
\input{website.tex}
\input{notation.tex}
\mainmatter

Expand Down
2 changes: 1 addition & 1 deletion docs/_posts/2016-12-01-Chapter1_introduction.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: 前言
title: 引言
layout: post
share: false
---
Expand Down
2 changes: 1 addition & 1 deletion docs/_posts/2016-12-04-Chapter4_numerical_computation.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ share: false
当大量级的数被近似为$\infty$或$-\infty$时发生上溢。
进一步的运算通常会导致这些无限值变为非数字。

必须对上溢和下溢进行数值稳定的一个例子是\textbf{softmax}
必须对上溢和下溢进行数值稳定的一个例子是softmax函数
softmax函数经常用于预测与~Multinoulli分布相关联的概率,定义为
\begin{align}
\text{softmax}(\Vx)_i = \frac{\exp(\Sx_i)}{\sum_{j=1}^n \exp(\Sx_j)} .
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 @@ -989,7 +989,7 @@ Bagging训练程序通过有放回采样构建这些数据集。

# Dropout

\textbf{Dropout}{cite?}提供了正则化一大类模型的方法,计算方便但功能强大。
\textbf{Dropout}~{cite?}提供了正则化一大类模型的方法,计算方便但功能强大。
在第一种近似下,Dropout可以被认为是集成大量深层神经网络的实用Bagging方法。
Bagging涉及训练多个模型,并在每个测试样本上评估多个模型。
当每个模型都是一个很大的神经网络时,这似乎是不切实际的,因为训练和评估这样的网络需要花费很多运行时间和内存。
Expand Down
26 changes: 13 additions & 13 deletions docs/_posts/2016-12-19-Chapter19_approximate_inference.md
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ share: false
\end{align}


对于一个较好的分布$q$的选择来说,$\CalL$是容易计算的。
对于一个选择的合适分布$q$来说,$\CalL$是容易计算的。
对任意分布$q$的选择来说,$\CalL$提供了似然函数的一个下界。
越好地近似$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})} $。
Expand All @@ -118,7 +118,7 @@ share: false


无论我们选择什么样的分布$q$,$\CalL$始终是一个下界。
我们可以通过选择一个更简单抑或更复杂的计算过程来得到对应的更松抑或更紧的下界
我们可以通过选择一个更简单或更复杂的计算过程来得到对应的更松或更紧的下界
通过一个不彻底的优化过程或者将分布$q$做很强的限定(并且使用一个彻底的优化过程)我们可以获得一个很差的分布$q$,但是降低了计算开销。
<!-- % 626 head -->

Expand Down Expand Up @@ -156,7 +156,7 @@ EM算法由交替迭代,直到收敛的两步运算组成:

基于潜变量模型的随机梯度上升可以被看作是一个~EM~算法的特例,其中~M步包括了单次梯度操作。
EM~算法的其他变种可以实现多次梯度操作。
对一些模型族来说,M步甚至可以通过推出解析解直接完成,不同于其他方法,在给定当前$q$的情况下直接求出最优解。
对一些模型族来说,M步甚至可以直接推出解析解,不同于其他方法,在给定当前$q$的情况下直接求出最优解。
<!-- % 626 end -->


Expand All @@ -170,7 +170,7 @@ EM~算法的其他变种可以实现多次梯度操作。

EM~算法还包含一些不同的见解。
首先,它包含了学习过程的一个基本框架,就是我们通过更新模型参数来提高整个数据集的似然,其中缺失变量的值是通过后验分布来估计的。
这种特定的性质并不是~EM~算法独有的。
这种特定的性质并非~EM~算法独有的。
例如,使用梯度下降来最大化对数似然函数的方法也有相同的性质。
计算对数似然函数的梯度需要对隐藏单元的后验分布求期望。
EM~算法另一个关键的性质是当我们移动到另一个$\Vtheta$时候,我们仍然可以使用旧的分布$q$。
Expand Down Expand Up @@ -216,7 +216,7 @@ MAP~推断并不被视作是一种近似推断,它只是精确地计算了最
q(\Vh\mid\Vv) = \delta(\Vh - {\Vmu}).
\end{align}
这也意味着现在我们可以通过$\Vmu$来完全控制分布$q$。
通过将$\CalL$中不随$\Vmu$变化的项丢弃,我们只需解决一个优化问题:
$\CalL$中不随$\Vmu$变化的项丢弃,我们只需解决一个优化问题:
\begin{align}
\Vmu^* = \underset{\Vmu}{\arg\max}\ \log p(\Vh = \Vmu,\Vv),
\end{align}
Expand All @@ -232,7 +232,7 @@ q(\Vh\mid\Vv) = \delta(\Vh - {\Vmu}).
因此我们能够证明一种类似于~EM~算法的学习算法,其中我们轮流迭代两步,一步是用~MAP~推断估计出$\Vh^*$,另一步是更新$\Vtheta$来增大$\log p(\Vh^*,\Vv)$。
~EM~算法角度看,这也是对$\CalL$的一种形式的坐标上升,交替迭代时通过推断来优化关于$q$的$\CalL$以及通过参数更新来优化关于$\Vtheta$的$\CalL$。
作为一个整体,这个算法的正确性可以得到保证,因为$\CalL$是$\log p(\Vv)$的下界。
~MAP~推断中,这个保证是无效的,因为~Dirac分布的熵的微分趋近于负无穷,使得这个界会无限地松。
~MAP~推断中,这个保证是无效的,因为~Dirac分布的微分熵趋近于负无穷,使得这个界会无限地松。
然而,人为加入一些$\Vmu$的噪声会使得这个界又有了意义。
<!-- % 628 -->

Expand Down Expand Up @@ -278,7 +278,7 @@ p(\Vv\mid\Vh) = \CalN(\Vv;{\MW}\Vh + \Vb,\beta^{-1}{\MI}).


我们可以通过交替迭代,分别关于$\MH$和$\MW$最小化$J$的方式来最小化$J$。
两个子问题都是凸的
且两个子问题都是凸的
事实上,关于$\MW$的最小化问题就是一个线性回归问题。
然而关于这两个变量同时最小化$J$的问题通常并不是凸的。
<!-- % 629 -->
Expand All @@ -300,7 +300,7 @@ p(\Vv\mid\Vh) = \CalN(\Vv;{\MW}\Vh + \Vb,\beta^{-1}{\MI}).
<!-- % 629 -->

<!-- % 在一个关于q的有约束的分布族上 -->
变分学习的核心思想就是我们在一个关于$q$的有约束的分布族上最大化$\CalL$。
变分学习的核心思想就是在一个关于$q$的有约束的分布族上最大化$\CalL$。
选择这个分布族时应该考虑到计算$\SetE_q \log p(\Vh,\Vv)$的难易度。
一个典型的方法就是添加分布$q$如何分解的假设。
<!-- % 630 head -->
Expand All @@ -311,7 +311,7 @@ p(\Vv\mid\Vh) = \CalN(\Vv;{\MW}\Vh + \Vb,\beta^{-1}{\MI}).
q(\Vh\mid\Vv) = \prod_{i}^{}q(h_i \mid \Vv).
\end{align}
这被称为均值场方法。
更一般地说,我们可以通过选择分布$q$的形式来选择任何图模型的结构,通过选择变量之间的相互作用来灵活地决定近似程度的大小
更一般地说,我们可以通过选择分布$q$的形式来选择任何图模型的结构,通过选择变量之间相互作用的多少来灵活地决定近似程度的大小
这种完全通用的图模型方法被称为结构化变分推断 {cite?}。
<!-- % 630 -->

Expand Down Expand Up @@ -480,7 +480,7 @@ p(\Vv\mid\Vh) &= \CalN(\Vv;\MW \Vh,{\Vbeta}^{-1}),
但是,由于两个原因,我们往往不这么做。
第一点,对每一个$\Vv$我们需要存储$\hat{\Vh}$。
我们通常更加偏向于那些不需要为每一个样本都准备内存的算法。
如果我们需要为每一个样本都存储一个动态更新的向量,使得算法很难处理上亿的样本
如果我们需要为每一个样本都存储一个动态更新的向量,使得算法很难处理几十亿的样本
第二个原因就是为了能够识别$\Vv$的内容,我们希望能够有能力快速提取特征$\hat{\Vh}$。
在实际应用场景中,我们需要在有限时间内计算出$\hat{\Vh}$。
<!-- % 634 -->
Expand Down Expand Up @@ -815,7 +815,7 @@ $\SetE_{\RSh_2\sim q(\RSh\mid\Vv)}[h_2]$和$\SetE_{\RSh_2\sim q(\RSh\mid\Vv)}[h_
为了准确衡量变分近似带来的危害,我们需要知道$\Vtheta^* = \max_{\Vtheta} \log p(\Vv;\Vtheta)$。
$\CalL(\Vv,\Vtheta,q)\approx \log p(\Vv;\Vtheta)$和$\log p(\Vv;\Vtheta)\ll \log p(\Vv;\Vtheta^*)$同时成立是有可能的。
如果存在$\max_q \CalL(\Vv,\Vtheta^*,q)\ll \log p(\Vv;\Vtheta^*)$,即在$\Vtheta^*$点处后验分布太过复杂使得$q$分布族无法准确描述,那么学习过程永远无法到达$\Vtheta^*$。
这样的一类问题是很难发现的,因为只有在我们有一个能够找到$\Vtheta^*$的超级学习算法时,才能确定地进行上述的比较。
这样的一类问题是很难发现的,因为只有在我们有一个能够找到$\Vtheta^*$的较好的学习算法时,才能确定地进行上述的比较。
<!-- % 642 -->


Expand All @@ -828,7 +828,7 @@ $\CalL(\Vv,\Vtheta,q)\approx \log p(\Vv;\Vtheta)$和$\log p(\Vv;\Vtheta)\ll \log
我们已经看到了推断可以被视作一个增加函数$\CalL$值的优化过程。
显式地通过迭代方法(比如不动点方程或者基于梯度的优化算法)来进行优化的过程通常是代价很高且耗时巨大的。
通过学习一个近似推断,许多推断算法避免了这种代价。
具体地说,我们可以将优化过程视作将一个输入$\Vv$投影到一个近似分布$q^* = \arg\max_q\ \CalL(\Vv,q)$的一个函数$f$。
具体地说,我们可以将优化过程视作将一个输入$\Vv$投影到一个近似分布$q^* = \arg\max_q\ \CalL(\Vv,q)$的一个$f$的函数
一旦我们将多步的迭代优化过程看作是一个函数,我们可以用一个近似函数为$\hat{f}(\Vv;{\Vtheta})$的神经网络来近似它。


Expand Down Expand Up @@ -874,7 +874,7 @@ $\CalL(\Vv,\Vtheta,q)\approx \log p(\Vv;\Vtheta)$和$\log p(\Vv;\Vtheta)\ll \log

这种学成近似推断策略已经被应用到了其他模型中。
{Salakhutdinov+Larochelle-2010}证明了在学成推断网络中的单遍传递相比于在深度玻尔兹曼机中的迭代均值场不动点方程能够得到更快的推断。
其训练过程基于运行推断网络,然后运行一步均值场来改进其估计,并训练推断网络来输出这个更精细的估计以代替其原始估计。
其训练过程是基于运行推断网络的,然后运行一步均值场来改进其估计,并训练推断网络来输出这个更精细的估计以代替其原始估计。
<!-- % 644 -->


Expand Down
Loading

0 comments on commit 27ffce6

Please sign in to comment.