免费的NLP学习资源,了解一下

EleanorDave 发布于10月前
0 条问题

自然语言处理表示计算机系统理解人类语言的能力,它是人工智能的一部分。网上有很多种资源可以帮助你从零开始学习NLP。本文列出了适用于初学者和从业者的一些相关资源。

给初学者的自然语言资源

对于初学者,可以采用两种传统的方法—机器学习和深度学习来开始自然语言处理。这两种方法是不同的,你可以点击 这里 来查看它们之间的区别。

传统机器学习

传统的机器学习算法比较复杂,不太容易理解。个人建议使用深度学习来做N LP 更快捷。

深度学习(Deep Learning)

深度学习是机器学习的一个分支领域,由于人工神经网络的引入,深度学习比传统机器学习的表现要好得多。可以通过深度学习来学习NLP,对于初学者可以查看以下的资源 :

·  CS224n: 这是从零开始通过深度学习来学习NLP的最佳课程。本课程由斯坦福大学主办,可以点击 这里 访问;

·  YoavGolberg的免费和付费的书,是在NLP中开始深度学习的好资源。免费书籍可以在 这里 访问;

·  在Jacob Einsenstein的关于GATECH的NLP类的笔记中,覆盖了所有NLP的算法,而NLP类几乎能处理所有的NLP方法,点击 这里 可以访问他的笔记;

给从业者的自然语言处理的学习资源

如果你是一个数据专家,可能需要如下三种类型的资源 :

1、 快速入门指南

2、特定问题的检查方法

3、 时常阅读文章

快速入门指南

· 对于 NLP的概述,可以从 Daniel W. Otter 等人的深度学习报告开始,点击 这里 访问。

·  Tom  Young等人的一篇调查报告总结了基于深度学习的NLP中的所有最新内容,建议从业者开始使用NLP,点击 这里 查看报告。

·  这有一篇不错的论文,让我们了解了如何隐藏循环神经网络(R ecurrent N eural N etwork s,RNNs)的状态。我还推荐如下两篇博文 : 

o  了解LSTM( Long Short-Term Memory )网络

o  扩展的递归神经网络

·  卷积神经网络( Convolutional Neural Networks ,CNNs/ConvNets)也可以被用来理解自然语言处理。通过阅读 这篇 论文 ,你可以想象CNNs如何在NLP中进行应用;

·  ShaojieBai 等人在 一篇 论文 中强调了如何将CNNs和RNNs进行比较。PyTorch张量库所有的代码是开放的,点击 这里 可以 查看。

特定问题的处理方法

从业者需要的另一种类型的资源是,如果要选择一个算法来执行任务,那么能够应用的最好的方法有哪些呢?

文本分类

文本分类方面的种类居多,可以是将文本分成不同的类别或检测文本中的观点/情感的形式。

我想介绍一个容易理解的我们前些时候在 ParallelDots 博客 上做的情感分析技术的调查报告。虽然这项调查是关于情感分析技术的,但是它包含了大多数的文本分类问题。

我们的调查技术性没有那么强,但很有趣,并且能够指导你利用更好的资源来理解概念。有一些Arxiv调查报告技术性非常强,这就需要你阅读其它的一些论文来深入理解主题。我建议的方法是使用本文中的链接来熟悉,并享受其中的乐趣,但之后建议阅读我提供的指南。记住,虽然兴趣很重要,但技巧有时也很重要,否则很难在新的环境中应用概念。另一个情感分析算法的调查报告可以在 这里 访问。

如果你还没听说过迁移学习,其实它正在快速地深入到深度学习领域之中。就像在图片里利用ImageNet分类来训练模型,还可以针对任何分类任务进行微调,在Wikipedia网站上训练NLP模型,用于语言建模,目前可以在相对较少的数据量上传输学习文本分类。现在我们还没有关于这个问题的调查报告,但是我可以告诉你在OpenAI上Reuder和Howard的两篇论文,它们涉及下面所提到的技术 :

·  面向文本分类的通用语言模型的微调

·  生成性预训练提高语言理解能力

Fast.ai 上有详细的方法使用文档。

如果你正在进行两个不同任务的迁移学习, 这里 将介绍使用Convnets的技巧。恕我直言,这些技术将逐渐地采用其它的分类方法。我们还发布了Zero Shot文本分类上的工作成果,并得到了不错的准确性,没有任何数据集上的训练,而且正在致力于后面深入的工作。我们已经建了一个通常称为自定义分类器的文本分类API,你可以在其中定义自己的类别,可以点击查看 demo

序列标注

序列标注是一个给字词加属性的工作,其中包括词性标注、命名的实体识别、关键词标注等。我们写了一个有趣的任务检验方法,请点击查看 这里

关于这些问题,你可以查看今年COLING大会上的一篇论文,它给出了训练序列标注算法的最优准则,可以点击 这里 查看。

机器翻译

·  近来NLP最大的进步是提供了将文本从一种语言翻译成另一种语言的算法。Google的系统是一个16层的LSTM,并给出了最优翻译结果;

·  关于机器翻译的更多教程,你可以参考Philip Koehn的 论文 。点击 这里 可以查看有关利用深度学习来进行机器翻译的详细资料。

这里有两篇我非常喜欢的论文 :

·  当你有足够多的数据时, Google 论文 会告诉你如何全面完整地解决问题;

·  Facebook 的卷积机器翻译系统和相关代码作为一个库发布在 这里

·  https://marian-nmt.github.io/ , 这是一个关于快速翻译的C++语言框架, http://www.aclweb.org/anthology/P18-4020

·  http://opennmt.net/ , 使每个人都能训练自己的机器翻译系统;

常见问题

·  SQuAD 数据集 是一个问答数据集,它用来测试算法阅读理解和回答问题的能力。微软今年早些时候发布了一篇论文,声称他们在这一领域的NLP成果已经达到了相当于人类水平的准确性,可以在 这里 查看论文。另一个重要的算法是 Allen AI BiDAF ( Bi-Directional Attention Flow );

·  另一个重要算法是关于视觉问答的,给出了关于图像问题的答案。在2017年的VQA挑战赛上, Teney 等人发表的论文是一个很好的基础入门资料,可以在GITHUB上找到相关的实现 代码

·  在现实生活中,对大型文档的提取式问答可以利用迁移学习来实现,点击 这里 可以查到相关论文。这里有一篇非常好的 论文 驳斥了问答算法的“理解”,如果你正从事相关的工作,强烈建议阅读。

释义、语句相似度或推理

语句对比的工作, NLP 有三个不同的任务 : 语句相似度 , 释义检测和自然语言推理( Natural Language Inference , NLI) ,为此,每一个任务都需要有比以前更多的语义理解。 MultiNLI 及其子集Stanford NLI是最著名的基准数据集,并且在最近成为了研究的热点。还有用于释义检测的 MS Paraphrase Corpus 和 Quora Corpus 以及用于STS(语义文本相似性)的 SemEval 数据集。在这个领域关于高级模型的调查报告点击 这里 可以访问到。

在这个领域中,我非常喜欢的论文有以下几篇 :

·  Omar Levy小组的一篇 论文 表明了即使是简单的算法也能够执行操作,这是因为算法没有学习“推理”。

·  BiMPM (双边多角度句子匹配)是一个预测释义的好模型,可以点击 这里 查看。

·  还有一项用于释义检测的新工作,它把关系网络应用到语句表示上面了,并在今年的AINL会议上得到了认可,可以点击 这里 阅读相关信息。

其它领域

·  语言建模 (LM)— 语言建模是关于学习一种语言的无监督表示的过程,这是通过给出一个语句中前n个词来预测第(n+1)个词完成的。这些模型有两个重要的实际环境应用,一个是自动完成建模,另外一个是作为上文中提到的用于文本分类的迁移学习基础模型。点击 这里 可以查看一个比较长的调查报告。如果你对如何在手机或者搜索引擎中根据搜索历史记录自动完成LSTMs感兴趣,这里推荐一篇很好的 论文

·  关系提取 关系提取是指在一个句子中抽取实体之间关系的行为。因此,所给句子中“A是作为r到B的关联”,你会得到三重关系(A,r,B)。在该领域中研究工作的调查报告可以点击 这里 查看。我还发现了一篇 论文 非常不错,是使用 BiDAF 进行 Zero Shot 关系提取的。

·  对话系统 随着聊天机器人的出现,对话系统现在非常流行。许多人将对话系统作为意图检测、关键词检测、问题回答等模型的实现,而一些人则试着进行全面建模。我也顺便提一下 Parl.ai ,这是 Facebook AI 的一个人工智能对话技术框架。

·  文本摘要 文本摘要是从文档中获取浓缩的文本。有两种方法可以完成这个工作:提取摘要和抽象概括。提取摘要是从文章中抽取出最具信息含量的句子,而抽象概括的目的是像人一样写摘要。这个来自 Eintein AI 的 demo 将抽象概括带进了主流研究。

·  自然语言生成 (NLG)— 自然语言生成是关于计算机旨在像人类一样写作的研究,这可以是写故事、诗歌、图片的标题等等。其中,目前的研究已经能够在图片标题上做的很好,LSTM和注意机制的结合已经给出了可以用在实际生活中的成果。 这里 是相关技术的调查报告。

本文由北邮 @爱可可-爱生活  老师推荐, 阿里云云栖社区 组织翻译。

文章原标题《List of free resources to learn Natural Language Processing

作者: Shashank Gupta

译者: 奥特曼 ,审校:袁虎。

文章为简译,更为详细的内容,请查看 原文

  • bigrabbit
  • crazybear
  • ticklishelephant
  • beautifulfrog
需要 登录 后回复方可回复, 如果你还没有账号你可以 注册 一个帐号。