25

我最近参加了coursera上关于“自然语言处理”的课程,我学到了很多关于解析、IR 和 Q&A 等其他有趣方面的知识。虽然我很好地掌握了这些概念,但我实际上并没有得到任何实际的知识。谁能推荐我关于自然语言处理的优秀在线教程或书籍?

谢谢

4

6 回答 6

34

您可以阅读 Jurafsky 和 ​​Martin 的语音和语言处理(2008 年版),这是该领域的标准教科书。它很长,而且有各种各样的主题,所以我建议只阅读真正适用于你兴趣的章节。

此外,最好的学习方式几乎可以肯定是从头开始实际实现 NLP 算法。您可以选择一些标准任务(语言建模、文本分类、POS 标记、NER、解析)并从头开始实施各种算法(ngram 模型、HMM、朴素贝叶斯、MaxEnt、CKY),以真正了解它们的工作原理。找到一些免费的数据集来测试你的实现也不应该太难。

最后,还有很多针对特定 NLP 算法的优秀教程。例如,如果你想构建一个 HMM,我建议Jason Eisner 的教程,该教程还涵盖了使用 EM 进行平滑和无监督训练。如果你想为无监督的朴素贝叶斯训练实现 Gibbs 采样,我建议Philip Resnik 的教程

于 2012-08-09T21:23:36.330 回答
9

除了 Jurafsky 和 ​​Martin 的书外,Christopher D. Manning 和 Hinrich Schütze 的Foundations of Statistical Natural Language Processing也被广泛使用。对于 IR,Manning 等人。还写了信息检索简介,可以在他们的网站上在线阅读或下载。

于 2012-08-10T11:51:15.990 回答
7

如果您想了解如何使用自然语言的实用知识,您应该开始实施它。我建议在 Python 中使用 NLTK(自然语言处理工具包)。它很容易在 python 中实现 NLP。

你可以参考这个链接 http://nltk.org/

或者您可以在 http://cst.dk/online/pos_tagger/uk/上在线试用

于 2013-08-29T03:58:06.710 回答
1

与其阅读特定的书,不如深入研究论文的海洋可能是一个好主意。例如,http: //www.aclweb.org 包含许多关于 NLP 的主题。通过这些论文,您可以获得更多论文的引用,其中一些是 NLP 某个分支的基础。而且因为它们是由不同的作者写的,所以你不太可能受到一种观点的影响。

于 2014-11-26T07:55:36.473 回答
1

如果您是 Java 开发人员,那么在http://alias-i.com/lingpipe/demos/tutorial/read-me.html上有大量关于如何使用 LingPipe 构建 NLP 系统组件的教程列表。完全披露我写了其中一些教程和下面的一本书。

有几本书更面向工业:

1) Richard M Reese 用 Ja​​va 进行自然语言处理

这涵盖了如何使用一系列开源工具包(包括 LingPipe)来完成一些常见任务。

2) Breck Baldwin、Krishna Dayanidhi 用 Ja​​va 和 LingPipe Cookbook 平装的自然语言处理

本书是“构建组件”级别的任务驱动,涵盖了驱动大多数文本驱动的 NLP 系统的主要技术。它不包括翻译。它比第一本书更详细,覆盖范围比 LingPipe 教程更广泛,但有时不如教程详细。

布雷克

于 2015-11-25T22:59:48.023 回答
0

有一个名为TeLeMaCo的教学和学习材料中心。您可以找到 NLP 的许多方面的资源,并且您可以轻松地添加您在网络上找到的更多材料。

于 2016-05-20T09:51:53.297 回答