自然语言处理
自然语言处理
5000+ 人选课
更新日期:2025/05/05
开课平台爱课程(中国大学MOOC)
开课高校西湖大学
开课教师张岳
学科专业工学计算机类
开课时间2025/03/03 - 2025/06/06
课程周期14 周
开课状态开课中
每周学时-
课程简介

自然语言处理(natural language processing, NLP)是人工智能的一个重要分支,研究算法如何自动的理解和生成人类语言。近些年,自然语言处理受到了越来越多的关注,从智能检索到智能翻译、智能音箱、GPT等模型的影响十分广泛。


自然语言处理背后的基本技术是机器学习,自然语言的特性使得自然语言处理领域的机器学习技术具有自身的重要特点,而这些特点,也为整个机器学习领域的发展提供了重要贡献。理解自然语言处理背后的机器学习基础,为深入理解语言处理技术,灵活应用相关模型工具,进行研究和技术创新提供必要条件。


本课程以机器学习理论和模型算法为核心,介绍自然语言处理技术基础。本课程适合高年级的相关专业本科生,和从事相关方向研究的硕士生和博士生。学习本课程之后,学生可以掌握自然语言处理领域的关键数学基础,轻松阅读前沿科技文献,具备深入模型设计和创新的基本条件。

课程大纲
自然语言处理领域介绍(Introduction)
1.1、自然语言处理领域介绍及其发展历史(NLP)
1.2、基础NLP任务介绍-句法分析任务
1.3、基础NLP任务介绍-语义分析任务
1.4、基础NLP任务介绍-信息抽取任务
1.5、基础NLP任务介绍-文本生成任务及其他任务介绍
1.6、使用机器学习视角学习自然语言处理的必要性
概率模型(Counting Relative Frequency)
2.1、 最大似然估算和词概率模型
2.2、概率模型理论总结
2.3、一元语言模型(Unigram LM)
2.4、贝叶斯公式推导(复习)
2.5、二元语言模型(Bigram LM)
2.6、三元语言模型和生成模型
2.7、Knessay-Ney Smoothing
2.8、Good-Turing Smoothing
2.9、朴素贝叶斯文本分类
向量数学模型(Feature Vectors)
3.1、特征向量和如何将文档映射到向量空间中
3.2、聚类(Clustering)
3.3、文本分类-支持向量机(SVM)
3.4、文本分类-感知机(Perceptron)
3.5、多分类问题
3.6、多分类支持向量机和感知机
3.7、判别式模型和特征
3.8、判别、生成与线性模型讨论
3.9、可分性、泛化性以及线性不可分问题
对数线性模型(Discriminative Linear Classifiers)
4.1、对数线性模型
4.2、对数线性模型的训练
4.3、多分类对数线性模型的训练
4.4、对数线性模型小结
4.5、利用随机梯度下降的支持向量机训练
4.6、支持向量机与感知机模型
4.7、判别式分类模型总结
4.8、多模型的比较和融合
4.9、多模型堆叠
信息论(Using Information Theory)
5.1、自然语言处理中的信息论
5.2、最大熵模型
5.3、KL散度、交叉熵与困惑度
5.4、互信息
5.5、点互信息
5.6、词的向量表示
隐变量(Hidden Variables)
6.1、隐变量
6.2、期望最大算法(Hard EM)
6.3、标准期望最大算法
6.4、EM算法应用- IBM model 1
6.5、EM算法应用-概率潜在语义分析
6.6、EM算法的推导
生成式序列标注(Generative Sequence Labeling)
7.1、序列标注任务
7.2、隐马尔可夫模型
7.3、隐马尔可夫模型的解码
7.4、计算边缘概率
7.5、无监督的隐马尔可夫模型
7.6、Precision,Recall和F1-score
判别式序列标注(Discriminative Sequence Labeling)
8.1、判别式序列标注
8.2、局部的判别式序列标注模型
8.3、最大熵马尔可夫模型的解码
8.4、标签偏置问题
8.5、条件随机场(CRF)
8.6、CRF解码问题
8.7、CRF对边缘概率的计算
8.8、CRF的训练
8.9、用于结构预测问题的感知机模型
8.10、用于结构预测问题的支持向量机模型
序列切分(Sequence Segmentation)
9.1、序列切分问题
9.2、序列切分问题的序列标注方法
9.3、对序列切分任务直接建模
9.4、序列切分中的解码问题
9.5、半马尔可夫条件随机场
9.6、半马尔可夫条件随机场的训练
9.7、最大边缘模型
9.8、感知机模型和柱搜索
9.9、柱搜索和感知机模型的训练
贝叶斯网络(Bayesian Network)
10.1、贝叶斯网络(Bayesian Network)
10.2、贝叶斯网络的训练和最大似然估算
10.3、最大后验的训练方式(Maximum a Posteriori)
10.4、共轭先验(Conjugate Priors)
10.5、贝叶斯估算(Bayesian Estimation)
10.6、贝叶斯一元语言模型(Bayesian Unigram LM)
10.7、模型推断(Inference)
10.8、LDA主题模型
10.9、贝叶斯IBM Model 1
神经网络(Neural Networks)
11.1、深度学习介绍及多层感知机模型(MLP)
11.2、使用多层感知机(MLP)进行文本分类
11.3、多层感知机(MLP)的训练
11.4、MLP的训练-反向传播(Back-Propagation)和推导
11.5、基于神经网络的文本分类器
11.6、序列编码(Sequence Encoding)-池化和卷积
11.7、神经网络的输出层和模型训练
11.8、如何更好地训练神经网络
11.9、改进SGD来更好地训练神经网络
表示学习(Representative Learning)
12.1、表示学习
12.2、循环神经网络(RNN)
12.3、长短期记忆网络(LSTM)
12.4、LSTM的扩展(Bi-LSTM)、简化(GRU)和堆叠,注意力机制(Attention Mechanism)
12.5、QKV attention和自注意力网络
12.6、树状结构的表示(Representing Tree)以及树状LSTM
12.7、图的表示(Representing Graph)以及图神经网络(GNN)
12.8、神经网络隐藏层表示的分析
12.9、神经网络的训练技巧
基于神经网络的结构预测(Neural Structured Prediction)
13.1、神经结构预测问题
13.2、神经序列标注
13.3、神经依存句法分析
13.4、神经成分句法分析
13.5、局部的基于转移的模型和模型1
13.6、局部的基于转移的模型2和模型3
13.7、全局的结构模型
13.8、全局模型与基于转移的神经网络模型的结合
序列到序列的神经网络(Working with Two Texts)
14.1、如何处理两个文本和Seq2Seq模型
14.2、使用注意力机制的LSTM序列到序列模型
14.3、如何从源端拷贝文本
14.4、BPE(Byte-Pair Encoding)编码
14.5、Transformer
14.6、文本匹配(Text Matching)
14.7、基于Attention的文本匹配模型
14.8、非对称的文本匹配
14.9、多步推理任务和记忆网络
预训练(Pre-training)
15.1、迁移学习和预训练
15.2、Noisy Contrastive Estimation
15.3、从结构上优化预训练语言模型
15.4、预训练词嵌入表示
15.5、GloVe词嵌入
15.6、词嵌入的评估
15.7、词嵌入模型中的OOV问题
15.8、ELMo,GPT,BERT和BART
15.9、迁移学习
深度隐变量模型(Deep Latent Variable Models)
16.1、隐变量与神经网络的关系
16.2、离散隐变量神经网络模型-具有隐变量的词袋模型
16.3、离散隐变量神经网络模型-具有隐变量的RNN模型
16.4、引入结构化的隐变量-序列标注
16.5、引入结构化的隐变量-句子切分
16.6、引入结构化的隐变量-成分句法
16.7、引入连续的隐变量
16.8、变分自编码器
16.9、变分自编码器—Gumbel-max方法
16.10、VAE的应用—主题模型
16.11、VAE的应用—语言建模