深度学习(DL, Deep Learning)是机器学习(ML, Machine Learning)领域中一个新的研究方向,它被引入机器学习使其更接近于最初的目标——人工智能(AI, Artificial Intelligence)。
本书由四部分构成。第一部分介绍本书中将使用的基本学习机制,包括有,监督学习、
多层感知器、基于梯度的训练以及用于实现和训练神经网络的计算图抽象。第二部分将第
一部分介绍的机制与语言进行关联,介绍处理语言时所能用到的主要信息源,并解释如何
将它们与神经网络机制进行整合。同时讨论词嵌入算法和分布式假设,以及将前馈方法用
于语言模型。第三部分处理特殊的结构以及它们在语言数据中的应用,包括用于处理
ngram 的一维卷积网络、用于建模序列和梭的循环神经网络CR>JN ) 。第三部分描述最多
的RNN 是针对语言数据的神经网络应用的主要创新,包括强大的条件生成框架以及基于
注意力的模型。第四部分是各种新进展的集合,包括用于建模树的递归网络、结构化预测
模型以及多任务学习。
约阿夫.戈尔德贝格《基于深度学习的自然语言处理》中文pdf
《基于深度学习的自然语言处理》中文pdf, 274页,带目录,文字可复制
下载:https://pan.baidu.com/s/1GrOYN_gtigopQbhN4YGdt
提取码:7cuq
机器学习内容庞杂,理论精深,学好不容易,以下是几点学习建议
- 不要从头开始学数学
如果不是一点数学都不会,你没有必要从零学起。用上一小段时间,把微积分、线性代数、以及概率统计复习一遍就够了。不要过度投入到数学领域,打好基础即可。举个栗子,你想当个司机,你需要去了解汽油发动机原理吗? 不需要。 因为你开的车,有可能是电动车。
- 代码能力要过关
除了Python,请至少学习1-2门底层语言,比如C/C++,Java。
此外,如果你的目标是算法工程师,那么数据结构与算法、计算机系统、内存机制、网络编程、大数据框架也要着手学习。
- 不要过分深入
深度学习,底层结构很复杂,理论知识读懂即可,书也可以跳着看。除了自己感兴趣的部分,其他不需要深入。
- 不要重复造轮子
在开始入门的时候,认认真真自己实现一遍基础算法的底层代码就足够了,对于更多复杂的算法实现,如非必要,请不要浪费时间,要记住,你只是入门,不需要专精这个领域。
现如今,对于大多数深度模型调用,代码量基本不过百行。除非你的方向是大规模、高可用深度学习系统的底层开发、架构开发,那么没有必要深入底层代码。
对于还处于入门阶段的人来说,基础还没有学好,直接读框架源代码,往往是做无用功,效率不会太高,需要循序渐进。
- 不要报培训班
这一点仁者见仁。但我认为,网络上的公开课足够你学的了,比如Coursera,斯坦福CS231,可汗学院等等。
要强调的是,有的同学会觉得花了钱,自然就会心疼,就会坚持学下去。这个想法很好,但太天真,国内这一块的教学体系才刚起步,很多985高校都是和计算机、数学系一起上课,老师自己很可能都不是研究AI出身的。校外的培训机构,会有比985还好的教学能力吗?
深度学习没有速成一说,虽然深度学习经常被诟病没有基础理论支撑,不需要数学知识,但那是说给大牛听的。你一旦深入某个方向,底层的数学照样少不了。培训班最不会教你的,它们只会利用你的兴趣,揠苗助长,然后收割学费。