资源 | 《深度学习》中译版读书笔记:GitHub项目等你来Fork&Commit

机器之心报道

参与:蒋思源

前一段时间,深度学习中译版已经正式出版并得到广泛的关注,我们在阅读中译版时可能需要查阅各种额外的扩展知识并整理成笔记以便进一步复习。但是近日有很多读者在深度学习中译版项目的 GitHub 目录下创建了一个新项目,该项目旨在记录和整理 Deep Learning 这本书的学习笔记和实现代码。机器之心将简要介绍该项目,并希望能与各位读者共同学习并完善该书的学习资源。

项目地址:https://github.com/exacity/simplified-deeplearning

Deep Learning 这本书的中译版给我们的感觉是质量非常高,例如在英文原版中的第四章「Numerical Computation」中,出现了很多「maximum」和「minimum」,这两个词在中译版中都有十分正确的翻译。因为「maximum」可以表示最大值也可以表示极大值,这两个概念在数学上是不同的,而中译本根据语境很好地区分了这两个术语。这只是很小的一个细节,但让我们感受到了中译本的严谨与高质量。

机器之心的小伙伴们也在阅读这本书籍,在阅读的过程中可能需要增加很多的额外知识以完成笔记例如在第三章概率与信息论中,我们可能需要查找各种离散型和连续型概率分布函数、确定概率质量函数与以前我们熟悉的概率分布函数有什么关系、确定独立性的分布函数条件和数字特征之间的运算关系等等,这样我们才能整理出比较完善的笔记以便于以后的复习。

但是在近日开展的这个 GitHub 项目中,我们可以轻易地找到各种精要知识与代码实现,比如在第三章的笔记中比较了各种分布在不同参数下的情况:

上图展示了高斯分布(正态分布)在不同均值μ和标准差σ下的概率密度函数,这样我们可以对高斯分布及参数的影响有一个直观的概念。

同样上图为拉普拉斯分布在不同参数下的概率密度函数,这些资源不仅有助于我们理解 Deep Learning 这本书的内容,同时还有助于我们根据这些知识点进行复习。

除此之外,还有很多实现代码更是理解相关概念的不二选择,例如我们在该 GitHub 项目的第一章节中发现了很多有助于理解矩阵运算的实现:

>>> A
array([[0, 1],
       [2, 3],
       [4, 5]])


>>> B
array([[0, 1, 2],
       [3, 4, 5]])


>>> np.matmul(A,B)
array([[ 3,  4,  5],
       [ 9, 14, 19],
       [15, 24, 33]])

在上面的代码中,我们可以清楚地了解矩阵乘法是如何进行的,首先 A 是一个 2×3 矩阵,B 是一个 3×2 矩阵,使用 Numpy 库的矩阵乘法函数可以相乘得出 3×3 的矩阵。

>>> A
array([[0, 1],
       [2, 3]])


>>> np.linalg.inv(A)
array([[-1.5,  0.5],
       [ 1. ,  0. ]])

在上面的代码中,我们能了解如何对可逆矩阵执行求逆操作。设 A 为 2×2 可逆矩阵(即矩阵 A 的行列式不为零),我们可以使用 Numpy 库的矩阵求逆函数对 A 执行求逆操作。

除此之外,机器学习章节也会介绍 TensorFlow 的实战,读者在理解理论知识的同时可以了解实现方面的基础,如下该部分简要介绍了 TensorFlow:

x_1 = tf.random_normal((2,3,4), name = "x_1")
x_2 = tf.random_normal((2,3,4), name = "x_2")

y_1 = x_1 + x_2
y_2 = x_1 * x_2

上面一段代码定义了两个计算,即随机生成 x_1、x_2(服从正态分布)之后分别做加法和乘法,在 TensorFlow 中,这就定义了一个计算图,这个计算图可表示如下:

当然,还有很多的模型实现代码,不过这一部分并不是很全,还需要大家共同努力以完善这些代码与整个项目。这一部分模型的代码很多都是引用自十分流行的 GitHub 项目,例如 LSTM 章节中就引用了 Jipeng Huang 完成的 LSTM 唐诗生成器。

这一个 GitHub 项目对于 Deep Learning 中译本读者有十分重要的作用,我们不仅可以从上面获取相应的知识,同时还可以贡献我们的笔记和扩展理解,这对于各位读者来说可以是一个相互交流的平台。虽然深度学习读书笔记这一项目已经搭建起来了,但还有很多内容和理解需要我们去补充和完善。所以,我们希望能与各位读者共同促进该项目的茁壮成长!

以下是该项目的前言和贡献者:

前言

作为人工智能领域目前的最大研究热点,同时也是近年来为各种智能任务带来最大突破的技术方向 – 深度学习或者说神经网络正吸引着无数研究人员的眼球。事实上,传统的神经网络结构和算法早在上个世纪就已经被提出,但由于当时的任务需求仍远未达到传统机器学习算法的瓶颈,同时神经网络算法也受限于计算和数据资源,因此并未被普遍关注。

近些年来,依靠人工设计高质量特征的传统机器学习算法在语音识别、自然语言处理以及图像处理等方面逐渐达到瓶颈,人们开始将目光重新转向神经网络,利用已经积累的大量数据资源在这一系列智能任务上取得了突破性的进展。包括语音识别、语义理解、图像识别等在内的研究领域中目前 state-of-the-art 的结果几乎清一色的都是采用了基于深度学习的方法。同时,GPU 强大的并行计算能力以及包括 TensorFlow、MXNet、Pytorch 等在内的一系列深度学习框架的推出也为研究者和应用开发者提供了极大便利。

DeepLearningBook 是目前第一本系统和完整的介绍深度学习的书籍,其作者包括深度学习领域的奠基人、处于研究生涯中期的领域中坚、更有近年来涌现的新星,非常适合搭建理论基础。但是直至去年,本书只有英文原版,对于大多数开发者来说,啃一本 800 页 7*9 英寸的书籍,难度可想而知。好消息是,在翻译人员的不懈努力下,DeepLearningBook 中文版也已在 GitHub 上公开,中文翻译版已经由人民邮电出版社出版。

这个项目记录了我们对 DeepLearningBook 的学习笔记,我们按照全书的脉络对 Deep Learning 的基础框架进行了梳理和学习,同时将会附上使用 TensorFlow 实现的相关代码。

GitHub 的 markdown 不再支持 tex 公式的解析显示,使用 Chrome 的同学可以安装 GitHub with MathJax 添加 MathJax 的解析以对公式正常显示。

持续更新中,欢迎贡献简单易懂便于理解的代码示例,推荐使用 Tensorflow 和 Jupyter Notebook 提交代码和说明,详见:如何贡献代码。

本文为机器之心报道,转载请联系本公众号获得授权。

原文发布于微信公众号 - 机器之心(almosthuman2014)

原文发表时间:2017-09-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏CSDN技术头条

深度学习成长的烦恼

本文为CSDN原创编译文章,禁止转载。 【编者按】深度学习尽管对当前人工智能的发展作用很大,然而深度学习工作者并非一帆风顺。Chris Edwards发表于Co...

18960
来自专栏AI科技大本营的专栏

硬货 | 分析完2017ACL论文和演讲,我发现了深度学习在NLP中的四个发展趋势

向AI转型的程序员都关注了这个号☝☝☝ ? 作者通过分析2017年ACL的论文,以及演讲内容,得出了四个NLP深度学习趋势: Linguistic Struct...

32340
来自专栏PPV课数据科学社区

【学习】怎样分析样本调研数据

从一个群体样本中获取群体的整体特征是许多研究设计和统计方法发展的基础。根据数据收集的算法、调研问题的类型和调研的目标,分析样本调研数据的方法各不相同。这篇文章会...

42970
来自专栏钱塘大数据

一文看懂数据可视化:从编程工具到可视化表现方式

新媒体管家 说到可视化,就不得不说一下大数据,毕竟可视化是解决大数据的一种高效的手段,而如今人人都在谈论大数据,大数据 ≠ 有数据 ≠ 数据量大, 离谱的是,如...

453100
来自专栏数据派THU

当你的深度学习模型走进死胡同,问问自己这5个问题

来源:量子位 编译:安妮 本文长度为2509字,建议阅读4分钟 本文为你介绍深度学习中应该思考的5个问题。 深度学习是一项庞大又复杂的工程,在建立深度学习模型时...

20090
来自专栏小樱的经验随笔

Collaborative Filtering(协同过滤)算法详解

基本思想 基于用户的协同过滤算法是通过用户的历史行为数据发现用户对商品或内容的喜欢(如商品购买,收藏,内容评论或分享),并对这些喜好进行度量和打分。根据不同用户...

65380
来自专栏量子位

当你的深度学习模型走进死胡同,问问自己这5个问题

安妮 编译自 Semantics3官方博客 量子位 出品 | 公众号 QbitAI ? 深度学习是一项庞大又复杂的工程,在建立深度学习模型时,走进死胡同被迫从头...

40240
来自专栏机器之心

业界 | 对比了六家计算机视觉API,发现最好的竟然是...

选自free Code Camp 作者:Mariya Yao 机器之心编译 参与:蒋思源、刘晓坤 本文通过吉娃娃与松饼的图像对比了流行的六大计算机视觉API,...

38160
来自专栏华章科技

一文看懂数据可视化:从编程工具到可视化表现方式

说到可视化,就不得不说一下大数据,毕竟可视化是解决大数据的一种高效的手段,而如今人人都在谈论大数据,大数据 ≠ 有数据 ≠ 数据量大, 离谱的是,如今就连卖早点...

14620
来自专栏大数据挖掘DT机器学习

极简增强学习新手教程 返回专栏查看评论

“如何学习新技能?”这是一个全球科学家都在研究的基础问题。为什么会想要知道这个问题的答案呐,答对了好处都有啥呢? 因为一旦我们能够理解这一点,就可以实现一些前...

32850

扫码关注云+社区

领取腾讯云代金券