它或许可以成为你学习自然语言处理的第一本书

Posted 二爷鉴书

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了它或许可以成为你学习自然语言处理的第一本书相关的知识,希望对你有一定的参考价值。

今天推荐的是一本硬核算法书《自然语言处理入门》,书的封底上有一句宣言是:「你一定能看懂的自然语言处理入门书」。

我看了,朋友们,并不是那么一定。所以我觉得首先应该澄清一下,这不是一本老少咸宜的科普读物,如果你没有任何编程基础或基本的数学常识,恐怕想要读懂它还是有些难度。

但《自然语言处理入门》这本书确实大幅度地拉低了学习 NLP 的门槛,作为一个读过若干相关书、论文、资料,以及视频教程的半个外行,我觉得这本书的内容在算法的数学原理和工程实践之间取到了一个对初学者非常友好的平衡。

它走的路线既不是古板的学术论文,通篇不知所云的公式;也不是整本的代码,import 一个什么东西进来就开始画龙。而是理论和实践恰到好处互相穿插的结构,我读起来感觉很像是在上一门实践课,让人很容易就能读进去。

另外,虽然以「入门」为己任,但作者并没有在书中引入过多不知所云的类比。我觉得这是我读到很多人工智能相关科普资料的一个很大的误区。很多并不从事相关工作的人了解这个领域的基础概念,最大的价值就是掌握一种过去没有的思维方式,结果看了半天只记住了一堆不伦不类的类比,还不如算了。

真正的高手讲究的是深入浅出,用严肃的方式,通俗易懂地把严肃话题解释清楚。而不是过分依赖跨领域的类比。但同时又不装大尾巴狼,故作高深,把简单内容复杂化。

从这个方面来说,这本书可以算是上乘之作。

《自然语言处理入门》围绕 NLP 中的典型问题展开(比如中文分词、NER、IE 等等),从简单直接也易懂的方法开始,逐渐过渡到更复杂的方法,很有体系感,知道每种方法是为了解决什么问题而出现的,在实践中又有什么样的优劣。

说到实践,书中的各种算法讲解都会有 Python 和 Java 的代码段,可以动手试,我虽然没试(实在没有那个条件),但看到这些代码就觉得挺安心,知道这些东西都不是空中楼阁,而是可以跑起来的。

这本书的作者是何晗,他是著名的 NLP 开源项目 HanLP 的作者。作为众多中文 NLP 工具包之一,HanLP 的影响力相当可观,据说在 GitHub 上的 star 数超过了很多老牌 NLP 项目。

看了他的一些访谈和介绍,少年感十足,他并非科班出身(大学时学的是日语),兴趣驱动他走上了 NLP 的道路,所以他也曾尝过在入门路上的苦涩,当他最终成为领域专家之后,回过头写下了这样一本帮助初学者的书。

他在前言中是这样说的
我曾经也是一无所知的外行,自学时走过不少弯路,深知数学语言的艰深晦涩,并且痛恨罗列公式故作高深的文章,也不喜欢大而全的综述书籍。因此,我写了这本不太一样的入门书,将阅读体验排在学术规范之前。尽量用自然的语调讲几个具体算法,把每个算法讲清楚,力争做到让你在地铁上也能把书读完读懂。
我很喜欢这本书的立意和态度,也希望它能帮助到有一定编程基础,又对自然语言处理感兴趣的朋友,如果这说的是你,可以找来读读看~