天然语言处理(NLP)入门学习资源清单

Melanie Tosik目前就任于旅游搜索公司WayBlazer,她的工做内容是经过天然语言请求来生产个性化旅游推荐路线。回顾她的学习历程,她为指望入门天然语言处理的初学者列出了一份学习资源清单。html

 

displaCy网站上的可视化依赖解析树git

github

 

记得我曾经读到过这样一段话,若是你以为有必要回答两次一样的问题,那就把答案发到博客上,这多是一个好主意。根据这一原则,也为了节省回答问题的时间,我在这里给出该问题的标准问法:“个人背景是研究**科学,我对学习NLP颇有兴趣。应该从哪提及呢?”web

 

在您一头扎进去阅读本文以前,请注意,下面列表只是提供了很是通用的入门清单(有可能不完整)。 为了帮助读者更好地阅读,我在括号内添加了简短的描述并对难度作了估计。最好具有基本的编程技能(例如Python)。算法

 

在线课程编程

 

• Dan Jurafsky 和 Chris Manning:天然语言处理[很是棒的视频介绍系列]网络

架构

 

• 斯坦福CS224d:天然语言处理的深度学习[更高级的机器学习算法、深度学习和NLP的神经网络架构]机器学习

分布式

 

• Coursera:天然语言处理简介[由密西根大学提供的NLP课程]

 

图书馆和开放资源

 

• spaCy(网站,博客)[Python; 新兴的开放源码库并自带炫酷的用法示例、API文档和演示应用程序]

网站网址:

博客网址:

演示应用网址: 

 

• 天然语言工具包(NLTK)(网站,图书)[Python; NLP实用编程介绍,主要用于教学目的]

网站网址:

图书网址: 

 

• 斯坦福CoreNLP(网站)[由Java开发的高质量的天然语言分析工具包]

网站网址: 

 

活跃的博客

 

• 天然语言处理博客(HalDaumé)

博客网址:

 

• Google研究博客

博客网址:

 

• 语言日志博客(Mark Liberman)

博客网址:

 

书籍

 

• 言语和语言处理(Daniel Jurafsky和James H. Martin)[经典的NLP教科书,涵盖了全部NLP的基础知识,第3版即将出版]

 

• 统计天然语言处理的基础(Chris Manning和HinrichSchütze)[更高级的统计NLP方法]

 

• 信息检索简介(Chris Manning,Prabhakar Raghavan和HinrichSchütze)[关于排名/搜索的优秀参考书]

 

• 天然语言处理中的神经网络方法(Yoav Goldberg)[深刻介绍NLP的NN方法,和相对应的入门书籍]

入门书籍: 

 

其它杂项

 

• 如何在TensorFlow中构建word2vec模型[学习指南]

 

• NLP深度学习的资源[按主题分类的关于深度学习的顶尖资源的概述]

 

• 最后一句话:计算语言学和深度学习——论天然语言处理的重要性。(Chris Manning)[文章]

 

• 对分布式表征的天然语言的理解(Kyunghyun Cho)[关于NLU的ML / NN方法的独立讲义]

 

• 带泪水的贝叶斯推论(Kevin Knight)[教程工做簿]

 

• 国际计算语言学协会(ACL)[期刊选集]

 

• 果壳问答网站(Quora):我是如何学习天然语言处理的?

 

DIY项目和数据集

资料来源:

 

• Nicolas Iderhoff已经建立了一份公开的、详尽的NLP数据集的列表。除了这些,这里还有一些项目,能够推荐给那些想要亲自动手实践的NLP新手们:

数据集:

 

• 基于隐马尔可夫模型(HMM)实现词性标注(POS tagging).

 

• 使用CYK算法执行上下文无关的语法解析

 

• 在文本集合中,计算给定两个单词之间的语义类似度,例如点互信息(PMI,Pointwise Mutual Information)

 

• 使用朴素贝叶斯分类器来过滤垃圾邮件

 

• 根据单词之间的编辑距离执行拼写检查

 

• 实现一个马尔科夫链文本生成器

 

• 使用LDA实现主题模型

 

• 使用word2vec从大型文本语料库,例如维基百科,生成单词嵌入。

 

NLP在社交媒体上

 

• Twitter:#nlproc,NLPers上的文章列表(由Jason Baldrige提供)

 

• Reddit 社交新闻站点:/r/LanguageTechnology

 

• Medium发布平台:Nlp

 

原文连接:

相关文章
相关标签/搜索