近年來,基于深度學習方法的自然語言處理(NLP)已逐漸成為主流。本書共8章,主要介紹自然語言處理任務中的深度學習技術,包含深度學習理論基礎、深度學習的軟件框架、語言模型與詞向量、序列模型與梯度消失/爆炸、卷積神經(jīng)網(wǎng)絡在NLP領域的應用、Seq2Seq模型與Attention機制、大規(guī)模預訓練模型、預訓練語言模型BERT,還給出了自然語言處理技術的高級應用和開發(fā)實例,并收錄了基于PyTorch深度學習框架的部分實踐項目。
本書既可作為人工智能、計算機科學、電子信息工程、自動化等專業(yè)的本科生及研究生教材,也可作為自然語言處理相關領域的研究人員和技術人員的參考資料。
前言
第1章深度學習理論基礎
1.1深度學習概況
1.1.1深度學習的歷史
1.1.2“無所不能”的深度學習
1.2深度學習神經(jīng)網(wǎng)絡
1.2.1神經(jīng)網(wǎng)絡
1.2.2隱藏層
1.2.3梯度下降
1.2.4激活函數(shù)
1.2.5權重初始化
1.2.6正則化
1.2.7歸一化
第2章深度學習的軟件框架
2.1環(huán)境配置
2.1.1Anaconda
2.1.2英偉達GPU驅(qū)動+CUDA+cuDNN
2.1.3PyTorch安裝
2.1.4Python IDE選擇
2.2PyTorch 入門
2.2.1Tensor基本概念
2.2.2Tensor的運算
2.3PyTorch自動求梯度
2.3.1基本概念
2.3.2Tensor樣例
2.3.3梯度計算
2.4PyTorch nn模塊
第3章語言模型與詞向量
3.1語言模型
3.1.1無處不在的語言模型
3.1.2神經(jīng)網(wǎng)絡語言模型
3.2詞向量
3.2.1one-hot
3.2.2word2vec
3.2.3GloVe
3.3代碼實戰(zhàn)
3.3.1任務1:應用PyTorch搭建Skip-Gram
3.3.2任務2:基于GloVe的大規(guī)模中文語料的詞向量訓練
第4章序列模型與梯度消失/爆炸
4.1循環(huán)神經(jīng)網(wǎng)絡
4.1.1模型結(jié)構(gòu)及計算過程
4.1.2應用PyTorch搭建并訓練RNN模型
4.2梯度消失與爆炸
4.2.1產(chǎn)生原因
4.2.2解決方法
4.3改進方法
4.3.1LSTM
4.3.2GRU
4.4代碼實戰(zhàn):搭建LSTM/GRU的文本分類器
第5章卷積神經(jīng)網(wǎng)絡在NLP領域的應用
5.1卷積神經(jīng)網(wǎng)絡的概念
5.1.1輸入層
5.1.2卷積層
5.1.3池化層
5.1.4全連接層
5.2空洞卷積神經(jīng)網(wǎng)絡
5.2.1空洞卷積的基本定義
5.2.2空洞卷積在NLP中的應用
5.2.3空洞卷積相關代碼
5.2.4多層卷積
5.3代碼實戰(zhàn):CNN情感分類實戰(zhàn)
5.3.1數(shù)據(jù)處理
5.3.2程序主干部分
5.3.3模型部分
5.3.4模型訓練與評估
第6章Seq2Seq模型與Attention機制
6.1Encoder-Decoder結(jié)構(gòu)
6.1.1Encoder
6.1.2Decoder
6.1.3Encoder-Decoder存在的問題
6.2Attention機制
6.3Seq2Seq訓練與預測
6.3.1模型訓練
6.3.2模型預測
6.3.3BLEU模型評估法
6.4代碼實戰(zhàn):應用PyTorch搭建機器翻譯模型
第7章大規(guī)模預訓練模型
7.1ELMo
7.1.1模型結(jié)構(gòu)
7.1.2模型效果
7.1.3ELMo的優(yōu)點
7.1.4利用ELMo+CNN進行分類的示例
7.2Transformer
7.2.1Encoder端及Decoder端總覽
7.2.2Encoder端各個子模塊
7.2.3Decoder端各個子模塊
7.2.4其他模塊
7.2.5完整模型
第8章預訓練語言模型BERT
8.1BERT的基本概念
8.2BERT的工作原理
8.2.1BERT的預訓練
8.2.2BERT模型結(jié)構(gòu)
8.2.3BERT的微調(diào)
8.3BERT的可解釋性
8.4其他預訓練模型
8.4.1XLNet
8.4.2RoBERTa
8.4.3ALBERT
8.5代碼實戰(zhàn):預訓練模型
參考文獻