学自然语言处理,必须推荐这本《自然语言处理实战》。
全方位阐述 NLP 最佳实践,并利用 Python 深入讲解最先进的 NLP 算法,从构建一个能够根据文档的含义找到文档的搜索引擎,到训练聊天机器人通过深度学习来回答问题和参与对话,本书偏实战且有完整案例,可以作为现代NLP从业者的第一本入门书。
这本书在2020年10月一上市,便备受推荐,豆瓣评论——
目前CSDN、博客园、知乎等平台都有大佬在推荐,经过同学们一波验证,基本评价如下:
【理论与实战结合,有具体的代码可以参考,对于理解算法过程有帮助;易理解,易上手】
本书亮点
1.全面覆盖基础理论与实际应用
理论讲解通俗易懂,方便快速入门;实践案例均来自实际的应用场景,用实际操作加深对理论的理解。
这本书从应用计算机处理不同语言细微差别,以及使用NLP技术构建现实世界应用展开,来告诉读者计算机是如何阅读和解释语言的,紧接着,了解如何训练基于Python的NLP机器来识别模式并从文本中提取信息。
本书从内容结构来看,主要分为3部分
第一部分是NLP基础入门,包括自然语言本身的特点、处理过程中的分词、TF-IDF向量化以及从词频向量到语义向量的转换;
第二部分讲述深度学习,包含神经网络、词向量、卷积神经网络(CNN)、循环神经网络(RNN)、长短期记忆(LSTM)网络、序列到序列建模和注意力机制等基本的深度学习模型和方法;
第三部分是实战部分,既包括信息提取、问答系统、人机对话等系统构建中的模型挑战,也包括它们遇到的性能挑战,还介绍了应对这些挑战的一些实际做法。
虽然本书给出的是一些经典的基本模型,但是对它们的深刻理解十分有助于快速掌握一些新模型(如Transformer和BERT)。
本书适合不同层次的读者阅读——
如果你是 Python 和自然语言处理的新手,那么应该首先阅读第一部分,然后阅读第三部分中感兴趣或工作中遇到的实际有挑战性的章节。
如果想快速了解深度学习支持的NLP功能,还需要按照顺序阅读第二部分,这部分内容可以帮大家建立对神经网络的初步理解,并逐步提高神经网络的复杂性和能力。
2.读者可以使用现有的 Python 包来捕获文本的含义并相应地做出响应
这本书基本上涵盖了对可扩展的自然语言处理流水线、基于规则的自然语言处理和基于数据的自然语言处理、Keras、TensorFlow、gensim 和 scikit-learn 等工具的使用等等精彩内容,这是学习自然语言处理时,经常遇到的问题。
而且,作者以例子为引导,引发同学们在实践中,有意识地去学习。
我们在学习书中的例子时,可以通过例子扩展机器学习的知识,并将其应用到一系列挑战中。比如,从构建一个能够根据文档的含义而不仅是关键词找到文档的搜索引擎,再到训练一个聊天机器人,通过深度学习来回答问题和参与对话。
另外,本书扩展了传统的自然语言处理方法,包括神经网络、现代深度学习算法和生成技术,用于解决真实世界的问题,如提取日期和名称、合成文本和回答无固定格式的问题。
3.提供源代码
本书所有代码清单中的源代码均可从异步社区(https://www.epubit.com/)和本书的GitHub下载。
其他福利可见下图——
如何阅读这本书?
本书的译者是王斌老师带领的「小米AI实验室NLP团队」,王斌老师是NLP首席科学家、小米AI实验室主任,曾译有《信息检索导论》《大数据》《机器学习实战》等书。
他给大家提供了有效的阅读方法——“三遍法”。
对于怎么来学这本书,仁者见仁,智者见智,我自己建议就可以采用一个所谓的“三遍法”,这也是我学习很多书的经常的一个做法。
第一遍就是通读,通过通读全书可以了解NLP的基本理论和知识、基本的深度学习模型和NLP领域大概有哪些基本的应用,这对于了解NLP领域的广度是非常重要的,阅读的时候我们可以先做一些笔记,这些笔记主要去记录一些疑难的、有疑问的地方,这是第一遍通读。
第二遍当然就是选择感兴趣的内容进行细读,因为一本书,这本书还是很厚的,不可能说每个地方都看得非常细,这个时候就根据自己的需要、根据自己的兴趣,选择感兴趣的模型或者是任务进行细读。我们这本书《自然语言处理实战》最重要的就是边阅读边实践,这些代码都可以下载,通过这些代码来进行实践,实验的结果可以跟书中的结果进行反复地对比,以便能够及时地发现一些问题,来检验你学习的一个效果,这是第二遍。
第三遍就是对第一遍中的疑问问题进行对照。我们通过实践,其实已经加深了对NLP基础技术的认识,这个时候我们再回过头来看一看第一遍里面的相关的一些疑问问题进行对照,看看你的理解是不是更深入一步。
上述这几个过程其实可以反复地迭代,对了,在本书的学习过程当中,读者也可以同时参考一些其他优秀的NLP的或者是深度学习的一些教程、教材,以便能够更大程度地加深对本书的一些理解,这是我对阅读本书的一些建议。
目前,NLP已成为深度学习的核心应用领域,而深度学习是NLP研究和应用中的必要工具。希望本书可以帮助更多想从事自然语言处理的同学更好地学习与进阶。