当看到这些材料时,一个明显的问题可能会出现:“为什么还要写一本深度学习和自然语言处理的书呢?”一些优秀的论文已经出版,涵盖了深度学习的理论和实践方面,以及它在语言处理中的应用。然而,从我教授自然语言处理课程的经验来看,我认为,尽管这些书的质量非常好,但大多数都不是针对最有可能的读者。本书的目标读者是那些在机器学习和自然语言处理之外的领域有经验的人,并且他们的工作至少部分地依赖于对大量数据,特别是文本数据的自动化分析。这些专家可能包括社会科学家、政治科学家、生物医学科学家,甚至是对机器学习接触有限的计算机科学家和计算语言学家。
现有的深度学习和自然语言处理书籍通常分为两大阵营。第一个阵营专注于深度学习的理论基础。这对前面提到的读者肯定是有用的,因为在使用工具之前应该了解它的理论方面。然而,这些书倾向于假设一个典型的机器学习研究者的背景,因此,我经常看到没有这种背景的学生很快就迷失在这样的材料中。为了缓解这个问题,目前存在的第二种类型的书集中在机器学习从业者;也就是说,如何使用深度学习软件,而很少关注理论方面。我认为,关注实际方面同样是必要的,但还不够。考虑到深度学习框架和库已经变得相当复杂,由于理论上的误解而滥用它们的可能性很高。这个问题在我的课程中也很常见。
因此,本书旨在为自然语言处理的深度学习搭建理论和实践的桥梁。我涵盖了必要的理论背景,并假设读者有最少的机器学习背景。我的目标是让任何上过线性代数和微积分课程的人都能跟上理论材料。为了解决实际问题,本书包含了用于讨论的较简单算法的伪代码,以及用于较复杂体系结构的实际Python代码。任何上过Python编程课程的人都应该能够理解这些代码。读完这本书后,我希望读者能有必要的基础,立即开始构建真实世界的、实用的自然语言处理系统,并通过阅读有关这些主题的研究出版物来扩展他们的知识。
http://clulab.cs.arizona.edu/gentlenlp/gentlenlp-book-05172020.pdf