让咱们先看看一些常见天然语言处理面试题:面试
- RNN 为何会发生梯度消失?如何改进?
- LSTM 的模型结构是什么?
- 为何说 LSTM 具备长期记忆功能?
- LSTM 为何能抑制梯度衰减?
- 什么是 Word2Vec?如何训练?
- Word2vec,CBOW 和 Skip-gram 的区别是什么?
- 什么是 seq2seq 模型?有哪些优势?
- 什么是注意力机制?
- 为何要使用注意力机制,有什么优势?
- CNN 的原理是什么?有哪些优缺点?
- BERT 的模型结构是什么?如何应用?…
以前有些朋友会向我咨询为何自学了名校的专栏认真作了笔记,却仍是会在面试时回答不出来问题,由于其实不少优秀的专栏和书籍侧重点会不一样,理论上可能只是讲个思想,前因后果并不会讲的很深。网络
实战中可能只是给出基础的代码,为何要进行哪一步也没有讲的很细,关于面试的书也只是给出答案,到底为何要这么回答也没有给出详细的解释,而在面试时面试官们一般会把最基础的东西问得很透彻,好比手推反向传播,手推 LSTM,改进 SkipGram 模型等等,因此单单学完一门专栏看完一本书可能并不会真正地掌握知识。框架
为何要学习深度学习天然语言处理
让咱们来想象这样一个画面:机器学习
当清晨被闹钟叫醒,睁开朦胧的双眼,摸起手机说“siri,帮我设一个五分钟的闹钟”,随之又进入了梦乡。 五分钟后很快就到了,总算精神了一些,看看今天每小时的天气预报如何,起床准备开始一天的工做。 早餐时间,一边吃着美味的早餐一边打开了邮箱,看到又多了几封垃圾邮件。 一切准备就绪,出发去上班,在路上,兴致勃勃地看一篇今天特别感兴趣的外语文章,发现有个单词不认识,因而打开了翻译软件。 突然想到有个包裹怎么还没到,打开购物软件,和他们的聊天机器人客服聊了起来。性能
上面这些事情可能就发生在每日平常的一个小时内,但却用到了语音识别,时间序列预测,垃圾邮件识别,机器翻译,聊天机器人等技术。学习
你是否好奇是什么技术实现了这些便利的功能?是否也想本身也能够 DIY 一些人工智能应用来解决本身平日遇到的问题呢?优化
那么这门专栏就能够为你的奇思妙想奠基基础,这门专栏不只仅是实战,还有深刻的模型理论讲解,尤为是面试中常遇问题的详细解答。职业规划
放眼宏观环境,人工智能已经被列入国家战略目标,2020要让人工智能和应用达到世界先进水平,2025年使其成为引导经济转型的主要动力,而天然语言处理是人工智能入口之争的主要技术之一,它将会是将来人机交互的主要方式,不少大公司或者新创公司都下大力度进行这方面的研究,不管是出于兴趣,仍是早在职业规划目标以内,学习一下天然语言处理的经典模型原理和实践,将来能够找到更多机会参与到人工智能创新的浪潮中来。人工智能
一样在本门专栏中会帮助你们解决这样的问题,咱们会以可以回答出面试题为基准,而且是创建在透彻理解模型原理的基础上,而不是死记硬背答案,还会有数学公式推导做为理论支撑,作到真的理解模型,这样当面试官们变换问题时,或者要求提出改进方案或者拓展时,都可以根据本身的理解给出解答。spa
除了理论还有实战,本专栏设计的实战项目有热门应用,如情感分析,聊天机器人等都是如今不少公司所须要的;也有 NER,POS 等基础应用,是天然语言处理项目中必备的。面试官们会对项目的每一个环节都问的比较细,数据清洗,预处理,特征,建模,模型评估等等,因此咱们的项目解释也很全,包括数据在模型里是如何变化的,每一步代码干了什么发生了什么都会内心有数。
固然在这一门专栏中确定没法涵盖天然语言处理的各个角落,咱们会先主要覆盖 NLP 工程师面试所需的深度学习基础部分,将基础的经典的模型理论紧紧掌握,会针对真实的面试题给出详细的讲解。
每一个模型的公式是什么,怎么训练模型,怎么优化模型都会提到,在实战中遇到的特别技术概念也会给出详细的讲解。
专栏亮点
内容新: 本专栏涵盖 RNN,LSTM,GRU,word2vec,CNN 这些基础,还包括多层,双向等拓展,有 Seq2seq 和 Attention,再到最近流行的 Transformer,ELMo,BERT,层层递进掌握经典模型。
实战多: 包括 14 个项目的代码及详细的讲解,从命名实体识别,词性标注,到情感分析,聊天机器人,机器翻译,再到图片文字摘要,动手实现有趣的智能应用。
讲的细: 每篇文章用黄金圈 why,how,what 的结构详细讲解模型原理,对面试中常考问题给出解答和理论依据,深入理解经典模型解决问题的思想。
专栏思路和内容大纲
第 1 部分:深度学习基础知识
由于本专栏是关于深度学习在天然语言处理中的应用,因此专栏开始部分咱们会归纳性地介绍什么是深度学习项目的通常流程和所需基本概念,深度学习在天然语言处理领域主要有哪些热门应用,还会介绍本专栏项目所需的 Keras 和 TensorFlow 2.0 基础,有了这样一个全局观,在后面学习具体模型和项目的时候会更有掌控性。
第 2 部分:循环神经网络基础
这一部分会很是详细地介绍 RNN 和 LSTM 的原理,它们是深度天然语言处理的基础模型,掌握它们对学习并理解后面更复杂的模型结构有很好的帮助,并且专栏中会有面试常考问题的详细解答和公式推导,从数学的层次作到真正理解经典模型的特性。
第 3 部分:词嵌入
在这里咱们会介绍 Word2vec 的方法,包括 CBOW,Skip-gram,GloVe 的理论和应用。词嵌入是天然语言处理任务中很重要的一步,它可让模型更好地学习到单词之间的关系和单词地含义,使模型表现地更好。
第 4 部分:循环神经网络的改进
这一部分咱们将学习如何改进基础的 RNN 和 LSTM,经过前面对基础理论的深刻了解,咱们能够知道它们具备哪些不足,因而经过改善门控单元,搜索结果,增长方向等方法来使模型进一步获得改善。
第 5 部分:Seq2seq 和 Attention
这一部分模型的结构进一步升级,Seq2seq 是一个 Encoder–Decoder 结构的网络,它最重要的地方在于输入序列和输出序列的长度是可变的,不过由于无论输入的长度多长都会被它压缩成一个几百维的中间向量,就会形成任务质量的降低,而 Attention 又进一步解决了 Seq2seq 存在的问题,有了这些改进使得模型在情感分析,聊天机器人,机器翻译等任务中的性能提高。
第 6 部分:卷积神经网络的应用
卷积神经网络被你们熟知的是在图像领域的重要模型,这一部分就会介绍它其实也能够用于天然语言处理的任务中,经过学习这种“跨界”的模型,不只能够更了解到任务和模型的本质,还有助于开拓解决问题的思路。
第 7 部分:Transformer,ELMo,BERT
BERT 是2018年10月11日由 Google AI Language 发布的模型,当时在问答,推理等 11 个 天然语言处理任务上的表现都刷新了记录,目前为止有不少优秀的模型都是在其基础上进行改进,因此这部分将介绍 Transformer,ELMo,BERT 这一系列的原理和应用。
你将收获什么
面试必备知识点
在天然语言处理相关职位的面试中,面试官会对模型的结构,原理,数学推导,优缺点,改进方法等进行细致地提问,不少外文原版书籍或者名校专栏中都不会作特别详细地解答,最后看了不少书学了不少专栏,可能到面试的时候仍是答不出来问题,在本专栏中就会对这些知识点进行深刻地讲解,让你们可以真正理解每一个模型,知其然知其因此然。
本专栏将用通俗易懂的方式讲解模型的原理,用图解的方式画出模型中数据的走向,对关键步骤的计算,例如前向计算,反向传播,会有详细的手写推导。以及一些核心问题的探究,例如为何循环神经网络具备记忆功能,LSTM 为何能够缓解梯度消失,为何用双向 LSTM,Encoder–Decoder 的结构是什么样的,为何须要 Attention 机制等。
动手实践,编写有趣的项目
不管是出于兴趣仍是想要找到高薪的工做,最后都要落实到有能力解决问题。因此本专栏在每一个模型的原理以后,都有相应的项目代码,并且有很是详细的代码讲解,理论与实践结合,真正把模型用起来,除了用序列模型处理其余模型能作到的分类和预测的任务,还能够构建一些好玩的,例如自动生成某个大师风格的文章,根据电影评论分析一下观众对它的评价,作个简易的聊天机器人,再或者平时常常用的翻译软件,本身也能够学习到机器翻译模型的构建方法。
熟练地使用 TensorFlow/Keras
本专栏在每一个模型后都配有应用代码,都是用 TensorFlow 或 Keras 来实现,这两个框架也是不少公司在招聘时优先考虑的技术,经过专栏中一些小项目的练习,能够进行强化训练,而且因为都是序列模型,还能够进行横向比较,了解实现不一样项目的共同点和区别,这样在之后应用这些深度学习框架来处理新的任务时能够驾轻就熟。
做者介绍
杨熹,数学系硕士,目前从事数据科学方面的工做。曾任 Intel 成本分析师,日本 TRIAL 数据分析师,美国 Trilogy 数据科学培训师,参与销量预测,成本分析,推荐系统等多个项目,擅长机器学习,深度学习,天然语言处理。
适宜人群:
- 将来想从事天然语言处理方向的求职者。
- 对人工智能感兴趣的学生。
- 想亲手打造相关产品的开发者。