內容簡介
將深度學習方法套用於各種自然語言處理任務,可以讓你的算法在速度和準確性方面提升到一個全新的水平。本書首先介紹自然語言處理領域的基本構件,接著介紹使用最先進的神經網路模型可以解決的問題。深入研究各種神經網路架構及其特定的套用領域將有助於你理解如何選擇最佳模型來滿足你的需求。隨著學習的深入,你將學到卷積神經網路、循環神經網路、遞歸神經網路以及長短期記憶網路。在後面的章節中,你將能夠使用自然語言處理技術(如注意力機制模型和集束搜尋)開發應用程式。
學完本書,你不僅能具備自然語言處理的基礎知識,還能選擇適合的文本預處理和神經網路模型來解決一些自然語言處理的問題。
本書能幫助你:
了解深度學習問題的各種預處理技術。
用word2vec和GloVe構建文本的矢量表示。
使用Apache OpenNLP創建命名實體識別器和詞性標註器。
在Keras中構建機器翻譯模型。
用LSTM開發文本生成應用程式。
使用注意力模型構建觸發詞檢測應用程式。
圖書目錄
譯者序
前言
第1章 自然語言處理 1
1.1 本章概覽 1
1.2 自然語言處理的基礎知識 1
1.3 自然語言處理的能力 3
1.4 自然語言處理中的套用 4
1.4.1 文本預處理 5
1.4.2 文本預處理技術 6
1.5 詞嵌入 13
1.6 本章小結 22
第2章 自然語言處理的套用 23
2.1 本章概覽 23
2.2 詞性標註 24
2.2.1 詞性 24
2.2.2 詞性標註器 25
2.3 詞性標註的套用 27
2.4 分塊 33
2.5 加縫 35
2.6 命名實體識別 37
2.6.1 命名實體 37
2.6.2 命名實體識別器 38
2.6.3 命名實體識別的套用 38
2.6.4 命名實體識別器類型 39
2.7 本章小結 43
第3章 神經網路 44
3.1 本章概覽 44
3.1.1 深度學習簡介 44
3.1.2 機器學習與深度學習的比較 45
3.2 神經網路 46
3.3 訓練神經網路 50
3.3.1 計算權重 51
3.3.2 損失函式 52
3.3.3 梯度下降算法 53
3.3.4 反向傳播 56
3.4 神經網路的設計及其套用 57
3.4.1 有監督神經網路 57
3.4.2 無監督神經網路 57
9.5 Flask 180
9.6 部署 182
9.6.1 對Flask網路應用程式進行更改 183
9.6.2 使用Docker將Flask網路應用程式包裝到容器中 183
9.6.3 將容器託管在亞馬遜網路服務EC2實例上 185
9.6.4 改進 190
9.7 本章小結 190
附錄 191