【导读】我们之前介绍了一系列卡耐基梅隆大学的课程,今天,我们又带来了CMU2018春季最新的课程“Neural Networks for NLP”介绍,该课程是CMU语言技术学院和计算机学院联合开课,主要内容是教学生如何用神经网络做自然语言处理。本文中,我们梳理了该课程的主要内容:神经网络、词向量、语言模型、CNNs和RNNs在NLP中的应用等等,课程涉及几乎全部NLP问题,内容非常全面,强烈推荐给从事NLP研究的读者。
专知内容组附上上一次CMU2018和CMU2017年课程:深度学习的内容:
NeuralNetworks for NLP
神经网络自然语言处理课程
▌课程描述
神经网络为语言建模提供了强大的工具,并且已经被用来改善一些语言建模任务,解决过去不容易处理的新问题。 本课程(卡内基梅隆大学语言技术学院 Language Technology Institute)将首先对神经网络进行简要概述,然后花费大部分课时来演示如何将神经网络应用于自然语言问题(NLP)。 每一节课将介绍自然语言中的一个特定的问题或现象,描述其难以建模的原因,并展示若干用于解决这个问题的模型。 在学习的过程中,课程将涵盖不同的用于创建神经网络模型的技术,包括处理可变大小和结构化句子、大数据的高效处理、半监督和无监督学习、结构化预测和多语言建模。
▌课程安排
课程简介:
神经网络介绍
示例任务及其挑战
神经网络可以干什么?
http://phontron.com/class/nn4nlp2018/schedule/class-introduction.html
一个简单的练习:预测句子中的下一个单词:
计算图
前馈神经网络语言模型
度量模型性能:似然和困惑度(Likelihood and Perplexity)
http://phontron.com/class/nn4nlp2018/schedule/predicting-the-next-word.html
分布语义和词向量:
使用相邻词来描述当前词
计数和预测
Skip-grams和CBOW
词向量的评价和可视化
词向量的前沿方法
http://phontron.com/class/nn4nlp2018/schedule/word-vectors.html
卷积神经网络的文本分析:
BOW、Bag of n-grams、卷积
卷积应用:上下文窗口和句子建模。
Stacked and Dilated Convolutions
结构化的卷积
句子对的卷积模型
CNNs可视化
http://phontron.com/class/nn4nlp2018/schedule/cnn.html
用循环神经网络建模句子或语言:
循环网络
梯度消失和LSTMs
句子建模中循环的优点和缺点
RNNs的预训练
http://phontron.com/class/nn4nlp2018/schedule/rnn.html
提高神经网络效率的技巧:
Softmax的近似:负采样,分层Softmax
并行训练
在GPUs上训练的技巧
http://phontron.com/class/nn4nlp2018/schedule/efficiency-tricks.html
使用和评价句子的表示:
句子相似度
文本
文本的完整性
释义识别
检索
http://phontron.com/class/nn4nlp2018/schedule/using-sentence-representations.html
条件生成(Conditioned Generation):
编码器-解码器模型
条件生成和搜索
Ensembling
评估
数据类型的条件
http://phontron.com/class/nn4nlp2018/schedule/conditioned-generation.html
注意力:
注意力
我们注意什么?
注意力机制的改善
注意力机制的变种(Specialized Attention Varieties)
案例研究:“Attention is All You Need”
http://phontron.com/class/nn4nlp2018/schedule/attention.html
调试神经网络(用于NLP):
问题定义
调试训练时间问题
调试测试时间问题
http://phontron.com/class/nn4nlp2018/schedule/debugging.html
基于搜索的结构预测:
结构化感知器
结构化max-margin目标
Simple Remedies to Exposure Bias
http://phontron.com/class/nn4nlp2018/schedule/structured-prediction.html
强化学习:
什么是强化学习?
梯度策略和强化学习
稳定的强化学习
基于价值的强化学习
http://phontron.com/class/nn4nlp2018/schedule/reinforcement-learning.html
具有局部独立假设的结构化预测:
为什么用局部独立假设?
条件随机场
http://phontron.com/class/nn4nlp2018/schedule/local-independence.html
基于变换的解析模型:
什么是Transition-based Parsing?
Shift-reduce解析/前馈网络
堆叠的LSTM
Transition-based Models for Phrase Structure
一个简单的选择:线性树
http://phontron.com/class/nn4nlp2018/schedule/transition-parsing.html
使用动态规划解析:
什么是基于图的解析?
最小生成树的解析
结构化训练以及其他改进
短语结构解析的动态规划方法
http://phontron.com/class/nn4nlp2018/schedule/dp-parsing.html
神经语义解析:
组合范畴文法和Lambda演算
用于语义的图模型
浅层语义:语义角色标记
http://phontron.com/class/nn4nlp2018/schedule/semantic-parsing.html
潜在的随机变量:
生成式 vs 判别式,确定变量 vs 随机变量
变分自编码器
处理离散潜在变量
NLP中变分自编码器的例子。
http://phontron.com/class/nn4nlp2018/schedule/latent-random-variables.html
用于文本分析的对抗方法:
生成对抗网络
哪里可以使用对抗方法:特征 vs 输出
离散输出上的GANs
离散输入上的对抗方法
http://phontron.com/class/nn4nlp2018/schedule/adversarial.html
无监督和半监督结构学习:
特征学习 vs 结构学习
半监督学习方法
无监督学习方法
无监督模型的设计决策
无监督学习的例子
http://phontron.com/class/nn4nlp2018/schedule/unsupervised-semisupervised.html
共指关系与演讲解析:
共指关系模型
话语解析
http://phontron.com/class/nn4nlp2018/schedule/discourse-models.html
对话模型:
基于聊天的对话
基于任务的对话
http://phontron.com/class/nn4nlp2018/schedule/dialog.html
知识图谱(Knowledge Graphs):
什么是知识图/本体论?
从嵌入中抽取关系
从关系中学习嵌入
http://phontron.com/class/nn4nlp2018/schedule/knowledge.html
基于神经网络的机器阅读:
http://phontron.com/class/nn4nlp2018/schedule/machine-reading.html
高级搜索算法:
定向搜索
A*Search
Search w/ Future Costs
http://phontron.com/class/nn4nlp2018/schedule/search.html
多任务多语种学习模型:
什么是多任务学习?
多任务学习方法
NLP的多任务目标
http://phontron.com/class/nn4nlp2018/schedule/multilingual.html
课程代码:
https://github.com/neubig/nn4nlp-code
领取专属 10元无门槛券
私享最新 技术干货