如何通关自然语言处理面试?

来点直接的,先看看一些常见自然语言处理面试题:

  • RNN 为什么会发生梯度消失?如何改进?

  • LSTM 的模型结构是什么?

  • 为什么说 LSTM 具有长期记忆功能?

  • LSTM 为什么能抑制梯度衰减?

  • 什么是 Word2Vec?如何训练?

  • Word2vec,CBOW 和 Skip-gram 的区别是什么?

  • 什么是 seq2seq 模型?有哪些优点?

  • 什么是注意力机制?

  • 为什么要使用注意力机制,有什么优点?

  • CNN 的原理是什么?有哪些优缺点?

  • BERT 的模型结构是什么?如何应用?...

之前有些朋友会向我咨询为什么自学了名校的专栏认真做了笔记,却还是会在面试时回答不出来问题?

因为其实很多优秀的专栏和书籍侧重点不同,理论上可能只是讲个思想,所以来龙去脉并不会讲得很深。实战中可能只是给出基础的代码,为什么要进行哪一步也没有讲得很细。关于面试的书也只是给出答案,到底为什么要这么回答也没有给出详细的解释。

而在面试时,面试官们通常会把最基础的东西问得很透彻,比如手推反向传播,手推 LSTM,改进 SkipGram 模型等等,所以单单学完一门课或看完一本书可能并不会真正掌握知识。

为什么要学习深度学习自然语言处理?

让我们来想象这样一个画面:

当清晨被闹钟叫醒,睁开朦胧的双眼,摸起手机说“siri,帮我设一个五分钟的闹钟”,随之又进入了梦乡。五分钟后很快就到了,总算精神了一些,看看今天每小时的天气预报如何,起床准备开始一天的工作。早餐时间,一边吃着美味的早餐一边打开了邮箱,看到又多了几封垃圾邮件。

一切准备就绪,出发去上班,在路上,兴致勃勃地看一篇今天特别感兴趣的外语文章,发现有个单词不认识,于是打开了翻译软件。

忽然想到有个包裹怎么还没到,打开购物软件,和他们的聊天机器人客服聊了起来。

上面这些事情可能就发生在每日日常的一个小时内,但却用到了语音识别、时间序列预测、垃圾邮件识别、机器翻译、聊天机器人等技术。

你是否好奇是什么技术实现了这些便利的功能?是否也想自己也可以 DIY 一些人工智能应用来解决自己平日遇到的问题?

那么《自然语言处理面试基础》就可以为你的奇思妙想奠定基础。这门专栏不仅仅包含实战,还有深入的模型理论讲解,尤其是面试中常遇问题的详细解答。

放眼宏观环境,人工智能已经被列入国家战略目标:2020 要让人工智能和应用达到世界先进水平,2025 年使其成为引导经济转型的主要动力。而自然语言处理则是人工智能入口之争的主要技术之一,它将会是未来人机交互的主要方式,于是很多大公司或者新创公司都下大力度进行这方面的研究。

无论是出于兴趣,还是在职业规划目标之内,如果你了解或学习过自然语言处理的经典模型原理和实践,那么你在未来就可以找到更多机会参与到人工智能创新的浪潮中来

在本专栏中我们会帮助大家解决这样的问题:以能够回答出面试题为基准,但不死记硬背答案,而是建立在透彻理解模型原理的基础上,并有数学公式推导作为理论支撑,做到真的理解模型。这样当面试官们变换问题时,或者要求提出改进方案或者拓展时,你都能够根据自己的理解给出解答。

除了理论还有实战。专栏设计的实战项目有热门应用,如情感分、聊天机器人等都是现在很多公司正在应用的;也有 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 来实现,这两个框架是很多公司在招聘时优先考虑的技术。通过专栏中一些小项目的练习,可以进行强化训练,由于都是序列模型,还可以进行横向比较,从而了解实现不同项目的共同点和区别。这样在以后应用这些深度学习框架来处理新的任务时,你也能做到得心应手。

适宜人群

  • 自然语言处理方向的求职者

  • 对人工智能感兴趣的学生

  • 想亲手打造相关产品的开发者

订阅专栏,即可入群与作者交流

另:新的一年,GitChat 大会员上线啦,敬请关注入手学习吧!


点击阅读原文,查看更多试读内容

猜你喜欢

转载自blog.csdn.net/GitChat/article/details/103813499