深度学习理论与实战:提高篇

国内首本免费的深度学习书籍!涵盖听觉、视觉、语言和强化学习四大领域,深入浅出的理论分析和详尽的代码分析。(5/7增加Deep Q-Learning, 5/10增加依存句法分析基于神经网络的依存句法分析),本文会持续更新,敬请关注!

转载请联系作者(fancyerii at gmail dot com)!

目录

序言

16年9月的时候我在CSDN发了一些深度学习的文章,主要是面向没有太多经验的开发者。达文读了后觉得我的文章比较通俗易懂,邀请我写一本书,当时头脑一热就答应下来。虽然现在出版的书籍汗牛充栋,但是对我来说著书立言始终是一件非常严肃和重大的事情。立德、立功、立言乃儒家的三不朽,可见古人对于其重视。我的这本书只是关于深度学习的技术类书籍,远远谈不上立言,但是总归会有一些读者的,因此我希望这本书至少对读者有一些帮助,而不是误人子弟。从开始写下第一个字到现在,前后跨越四年历时两年半。一方面是因为工作忙没有太多时间,但更重要的原因是我希望把它写得更好一点。写书的过程也是学习的过程,书中的每一篇论文每一行代码,作者都要求自己完全读懂,不懂的内容绝对不放到书里面。当然由于个人水平有限,肯定还是会有很多理解的偏差和疏漏,敬请读者不吝指教。

市面上关于深度学习的书籍很多,本书最大的特点是理论结合实战和内容的广度。现在大家能够看到的深度学习书籍大概可以分为两类,一类只关注理论而另一类只关注应用。前者多为一些会议论文集,当然也包括Ian Goodfellow和Yoshua Bengio等人的Deep Learning。这类书籍的读者是专业的研究者和相关专业的学生,它更多的是关注基础理论和最新的前沿进展。这类书籍通常比较难懂,而且读完之后仍然不知道怎么动手解决问题。而另外一类书籍更关注应用,多为框架工具的介绍,偶尔提及一些理论也是点到而止,在读者看来各种算法只是一个黑盒子,虽然能跑起来,但是知其然不知其所以然,不知道怎么调优,碰到问题时更加不知道怎么解决。本书的目标是使用通俗易懂的语言来介绍基础理论和最新的进展,同时也介绍代码的实现。通过理论与实践的结合使读者更加深入的理解理论知识,同时也把理论知识用于指导实践。因此本书的一大特点就是每介绍完一个模型都会介绍它的实现,读者阅读完一个模型的介绍之后就可以运行、阅读和修改一下这些代码,从而可以更加深刻的理解理论知识。

本书第二个比较大的特点就是内容的广度,本书覆盖听觉、视觉、语言和强化学习四大领域。从章节的命名读者也可以看到作者的”野心”,本书覆盖了深度学习的大部分常见应用方向。市面上的书大部分只介绍视觉和语言的内容,而且一般也只限于CNN用于简单的图像分类或者RNN、seq2seq模型在NLP中的应用。本书的视觉部分除了介绍CNN以及最新的ResNet和Inception模型之外,还介绍了用于目标检测的R-CNN、Fast R-CNN、Faster R-CNN模型;用于实例分割的Mask R-CNN模型;用于人脸识别的FaceNet;还包括Neural Style Transfer和GAN(包括DCGAN和Cycle GAN)。语言部分除了很多书都有的RNN/LSTM/GRU等基础模型,用于机器翻译、chatbot的seq2seq模型和Attention机制之外还包括最新的ELMo、OpenAI GPT和BERT等模型,此外本书还介绍了NLP的很多经典任务,包括语言模型、词性标注、成分句法分析、依存句法分析和机器翻译。除了介绍深度学习的解决方案之外也会介绍传统的基于统计机器学习的方法,让读者能够了解这个领域的发展过程。而听觉和强化学习是目前市面上大部分书都很少提及的内容。大家都知道2012年AlexNet在视觉领域的突破,但是深度学习最早的突破其实发生在语音识别方向。本书会详细介绍经典的基于HMM-GMM的语音识别系统,包括基于WFST的解码器和Kaldi的用法。接着会介绍HMM-DNN系统,然后到最新的End-to-End的语音识别系统,主要会介绍CTC模型,包括CTC用于验证码识别的示例和DeepSpeech系统。最后会介绍使用CNN实现简单的语音关键词识别,这个简单的例子在智能设备上会非常有用。国内关于强化学习的书籍不多,因此本书首先用一章的篇幅介绍强化学习的基本概念,包括MDP、动态规划、蒙特卡罗方法、TD学习和Policy Gradient。接着会介绍DQN、基于深度学习的Policy Gradient算法,最后是介绍AlphaGo、AlphaGo Zero和Alpha Zero算法。

当然由于时间和作者的水平所限,这些领域都遗漏了很多内容,比如听觉只包括了语音识别,但是没有语音合成、Music等;深度强化学习也没有最新的Imitation Learning、Inverse Reinforcement Learning和Meta Learning等内容。但是读者在了解了本书的基本概念和基本模型之后,要学习更新的内容也会比较容易,作者以后有时间和精力也会持续更新这些内容。

最后还包含一章哲学的内容,主要是作者对于人工智能是否可以实现的一些个人观点。本书的大部分内容都是来自别人的知识,最多是加上了我自己的一些理解。如果要在这本书里寻找一点“原创性”内容的话,最有可能就是在这一章了。里面有很多荒诞无稽的观点,但是读者不妨在饭后茶余当成消遣的文章看看也并无太大坏处,看后有什么想法也可以在后面留言和作者交流。

本书的内容参考了很多论文、书籍以及开源代码,感谢他们的工作!作者会尽量在文章加入相关链接,如果原作者认为有版权问题,请联系作者。

由于涉及的内容很广,再加上作者比较啰嗦的写作方式(作者喜欢阅读英文书,因为很多英文书的作者把读者当小白,总是不厌其烦的解释,而大多数中文书不知道是作者水平太高还是太低,总会有太多”显然”、”易证”的东西。作者写书也是假设读者什么都不懂,所以会很啰嗦),所以几年下来写的内容竟然上千页。出版社的编辑说这么厚的书得卖多少钱啊,这没法出版。因此把这本书拆分成了两本:《深度学习理论与实战:基础篇》和《深度学习理论与实战:提高篇》。基础篇已经在编辑出版中,预计年中可以和读者见面。提高篇则更加专业,不同的人可能只关注不同的方向,为了小部分内容而购买整本书似乎不合算。所以作者把提高篇免费开放出来,希望对读者的学习和工作有所裨益。本文会持续更新,敬请关注!

草稿目录

下面是《深度学习理论与实战:提高篇》草稿的目录截图,感谢ElegantLaTeX免费提供的Latex模板。作者在整理时可能会有所调整,因此仅供参考。

img

img

img

img

哲学

人工智能能否实现? 长文慎入!

听觉

语音识别简介

MFCC特征提取

基于HMM的语音识别(一)

基于HMM的语音识别(二)

基于HMM的语音识别(三)

WFST简介

HMM和WFST代码示例

深度学习在语音识别中的应用

Kaldi简介

CTC理论和实战

DeepSpeech理论与实战

使用Tensorflow识别语音关键词

一个轻量级的RNN语音唤醒引擎

PyTorch-Kaldi简介

视觉

视觉任务简介

目标检测

实例分割

Fast/Faster/Mask R-CNN总结

Faster R-CNN代码简介

Mask R-CNN代码简介

人脸识别简介

Neural Style Transfer

语言

Word Embedding教程

语言模型教程

文本分类算法

序列标注算法(一)

序列标注算法(二)

成分句法分析

依存句法分析

基于神经网络的依存句法分析

Stanford Core NLP用法简介

OpenAI GPT-2大新闻解读

使用PyTorch实现Chatbot

Transformer图解

Transformer代码阅读

BERT模型详解

BERT代码阅读

强化学习

强化学习简介(一)

强化学习简介(二)

强化学习简介(三)

强化学习简介(四)

强化学习简介(五)

强化学习简介(六)

Deep Q-Learning

AlphaGo

AlphaGo Zero

AlphaZero

用AlphaZero来玩Connect4游戏

其它

自动微分

Xgboost算法

在Docker中使用Tensorflow Serving

Tensorflow简明教程

PyTorch简明教程

本文转载自李理的博客:http://fancyerii.github.io/2019/03/14/dl-book/

来了,老弟
-------------    本文结束  感谢您的阅读    -------------
0%