
0人評分過此書
TensorFlow自然語言處理:善用 Python 深度學習函式庫,教機器學會自然語言
- 前言
-
Chapter 1:自然語言處理簡介
-
「自然語言處理」究竟是什麼?
-
自然語言處理的任務
-
自然語言處理的傳統做法
-
瞭解傳統的做法
-
範例|針對足球比賽的結果生成文字摘要
-
傳統做法的缺點
-
自然語言處理的深度學習做法
-
深度學習的歷史
-
深度學習和NLP 當前的狀態
-
先認識一個簡單的深度模型:全連結神經網路
-
讀完本章之後,各主題概念的路線圖
-
技術工具簡介
-
工具說明
-
安裝Python 和scikit-learn
-
安裝Jupyter Notebook
-
安裝TensorFlow
-
總結
-
-
Chapter 2:TensorFlow 介紹
-
TensorFlow 究竟是什麼?
-
TensorFlow 入門
-
TensorFlow 客戶端程式詳細介紹
-
TensorFlow 架構|執行客戶端程式時,究竟會發生什麼事?
-
Cafe Le TensorFlow|用類比的方式來理解TensorFlow
-
輸入、變數、輸出和操作
-
定義TensorFlow 輸入
-
用Python 程式碼提供輸入資料
-
預先載入輸入資料並儲存為張量
-
打造一個輸入管道
-
定義TensorFlow 變數
-
定義TensorFlow 輸出
-
定義TensorFlow 操作
-
比較操作
-
數學運算操作
-
scatter 和gather 操作
-
神經網路相關操作
-
善用scope 重複使用變數
-
實作出我們的第一個神經網路
-
準備資料
-
定義TensorFlow graph 圖
-
執行神經網路
-
總結
-
-
Chapter 3:Word2vec|學習單詞內嵌
-
單詞的表達方式或含義,指的究竟是什麼?
-
學習單詞表達方式的傳統做法
-
WordNet:使用外部詞彙知識庫,學習單詞的表達方式
-
WordNet 之旅
-
WordNet 的問題
-
one-hot 編碼表達方式
-
TF-IDF 方法
-
共現矩陣
-
Word2vec:運用神經網路學習單詞表達方式
-
練習範例:皇后=國王-他+她?
-
設計損失函數、學習單詞內嵌
-
skip-gram 演算法
-
把原始文字轉換成結構化資料
-
用神經網路學習單詞內嵌
-
制定出實際的損失函數
-
有效近似損失函數
-
用TensorFlow 實作出skip-gram 模型
-
CBOW 連續單詞袋演算法
-
用TensorFlow 實作出CBOW 模型
-
總結
-
-
Chapter 4:Word2vec 進階
-
原始版skip-gram 演算法
-
實作出原始版skip-gram 演算法
-
原始版skip-gram 與改進版skip-gram 的比較
-
skip-gram與CBOW的比較
-
效能表現的比較
-
skip-gram 和CBOW 哪個比較好?
-
單詞內嵌演算法的擴展做法
-
使用unigram 分佈進行負取樣
-
實作出unigram 分佈負取樣
-
子取樣|按機率忽略掉常見單詞
-
子取樣的實作
-
CBOW 與其擴展做法的比較
-
更先進的skip-gram / CBOW 擴展演算法
-
skip-gram 演算法的局限性
-
結構化skip-gram 演算法
-
損失函數
-
連續視窗模型
-
GloVe|整體向量表達方式
-
瞭解GloVe
-
GloVe 的實作
-
使用Word2vec 進行文件分類
-
資料集
-
使用單詞內嵌對文件進行分類
-
實作|學習單詞內嵌
-
實作|根據單詞內嵌得出文件內嵌
-
文件內嵌化之後的文件集群情況,以及t-SNE 視覺化呈現結果
-
檢查幾個異常的情況
-
實作|使用K-means 對文件進行分群/歸類
-
總結
-
-
Chapter 5:CNN 卷積神經網路|句子分類
-
CNN 卷積神經網路簡介
-
CNN 基礎
-
CNN 卷積神經網路的力量
-
理解CNN 卷積神經網路
-
卷積操作
-
標準卷積操作
-
採用不同步幅的卷積操作
-
採用填充做法的卷積操作
-
轉置卷積
-
池化操作
-
最大池化
-
採用不同步幅的最大池化操作
-
平均池化
-
全連結層
-
把所有東西整合起來
-
練習:用CNN 對MNIST 圖片進行分類
-
關於資料
-
實作CNN
-
分析CNN 所生成的預測結果
-
使用CNN 進行句子分類
-
CNN 結構
-
資料轉換
-
卷積操作
-
時間池化操作
-
實作|用CNN 進行句子分類
-
總結
-
-
Chapter 6:RNN 遞迴神經網路
-
瞭解RNN 遞迴神經網路
-
正向饋送神經網路的問題
-
用RNN 遞迴神經網路來建構模型
-
RNN 的技術相關說明
-
時間反向傳播
-
反向傳播的運作原理
-
為什麼RNN 不能直接採用反向傳播的做法?
-
時間反向傳播|訓練RNN
-
截短式BPTT|更有效訓練RNN
-
BPTT 的局限性|梯度消失與梯度爆炸
-
RNN 的應用
-
一對一的RNN
-
一對多RNN
-
多對一RNN
-
多對多RNN
-
用RNN 生成文字
-
定義超參數
-
截短式BPTT 沿時間展開輸入
-
定義驗證組資料
-
定義權重和偏差
-
定義狀態持久性變數
-
使用展開的輸入計算隱藏狀態和輸出
-
計算損失
-
在新的文字片段開頭處重設狀態
-
計算驗證輸出
-
梯度的計算與最佳化
-
輸出全新生成的一段文字
-
評估RNN 所輸出的文字結果
-
困惑度:衡量文字結果的品質
-
RNN-CF:具有更長記憶的RNN
-
RNN-CF 的技術相關說明
-
實作RNN-CF
-
定義RNN-CF 超參數
-
定義輸入和輸出佔位符
-
定義RNN-CF 的權重
-
用來保留住隱藏狀態和前後文狀態的變數和操作
-
計算輸出
-
計算損失
-
計算驗證輸出
-
計算測試輸出
-
計算梯度和最佳化
-
用RNN-CF 所生成的文字
-
總結
-
-
Chapter 7:LSTM 長短期記憶網路
-
瞭解LSTM 長短期記憶網路
-
LSTM 究竟是什麼?
-
關於LSTM 更詳細的說明
-
LSTM 與標準RNN 的區別
-
LSTM 如何解決梯度消失的問題
-
改進LSTM
-
貪婪取樣
-
束搜索
-
使用單詞向量
-
雙向LSTM(BiLSTM)
-
LSTM 的其他變形做法
-
窺孔連結
-
閘控遞迴單元
-
總結
-
-
Chapter 8:LSTM 的應用:生成文字
-
我們的資料
-
關於資料集
-
資料的預處理
-
實作LSTM
-
定義超參數
-
定義參數
-
定義LSTM 單元及其操作
-
定義輸入和標籤
-
定義處理序列資料所需的序列相關計算
-
定義最佳化工具
-
隨時間遞減學習速率
-
做出預測
-
計算困惑度(損失)
-
重設狀態
-
貪婪取樣以打破單峰性
-
生成新文字
-
所生成的文字範例
-
LSTM、窺孔連結LSTM 與GRU 的比較
-
標準LSTM
-
重點回顧
-
所生成的文字範例
-
閘控遞迴單元(GRU)
-
重點回顧
-
程式碼
-
所生成的文字範例
-
帶窺孔的LSTM
-
重點回顧
-
程式碼
-
所生成的文字範例
-
訓練與驗證困惑度隨時間的變化
-
改進LSTM:束搜索
-
束搜索的實作
-
束搜索所生成的文字範例
-
改進LSTM|改用單詞取代n-gram 來生成文字
-
維度的詛咒
-
Word2vec 來救援
-
使用Word2vec 生成文字
-
LSTM-Word2vec 搭配束搜索所生成的文字範例
-
困惑度隨時間的變化
-
使用TensorFlow RNN API
-
總結
-
-
Chapter 9:LSTM 的應用:生成圖片說明
-
認識資料
-
ILSVRC ImageNet 資料集
-
MS-COCO 資料集
-
生成圖片說明的機器學習流程
-
用CNN 提取圖片特徵
-
實作|載入權重並使用VGG-16 進行推論
-
變數的構建與更新
-
輸入的預處理
-
用VGG-16 進行推論
-
提取圖片的向量化表達方式
-
用VGG-16 來預測類別機率
-
學習單詞內嵌
-
準備要送入LSTM 的圖片說明
-
生成要送進LSTM 的資料
-
定義LSTM
-
以定量的方式評估結果
-
BLEU
-
ROUGE
-
METEOR
-
CIDEr
-
模型的BLEU-4 分數隨時間的變化
-
測試圖片所生成的圖片說明
-
使用TensorFlow RNN API 搭配預訓練過的GloVe 單詞向量
-
載入GloVe 單詞向量
-
清理資料
-
透過TensorFlow RNN API 使用預訓練內嵌
-
定義預訓練內嵌層與轉接層
-
定義LSTM 單元與softmax 層
-
定義輸入和輸出
-
以不同方式處理圖片和文字
-
定義LSTM 輸出的計算方式
-
定義logit 值和預測結果
-
定義序列損失
-
定義最佳化工具
-
總結
-
-
Chapter 10:Seq2Seq 序列轉序列| NMT 神經機器翻譯
-
機器翻譯
-
簡短扼要的機器翻譯歷史之旅
-
以規則為基礎的翻譯方式
-
統計機器翻譯(SMT)
-
神經機器翻譯(NMT)
-
瞭解神經機器翻譯
-
NMT 背後的直覺概念
-
NMT 架構
-
內嵌層
-
編碼器
-
前後文向量
-
解碼器
-
為NMT 系統準備資料
-
訓練階段
-
顛倒來源句子
-
測試階段
-
訓練NMT
-
用NMT 進行推測
-
BLEU 分數|機器翻譯系統的評估
-
修改版精確率
-
短句懲罰
-
最終的BLEU 分數
-
從無到有實作出NMT|從德語翻譯成英語
-
資料簡介
-
資料的預處理
-
學習單詞內嵌
-
定義編碼器和解碼器
-
定義端到端輸出的計算方式
-
一些翻譯的結果
-
NMT 結合單詞內嵌的訓練方式
-
盡可能從預訓練內嵌中取出所有用到的單詞
-
定義內嵌層相關TensorFlow 變數
-
改善NMT
-
教師強制
-
深度LSTM
-
注意力機制
-
突破前後文向量的瓶頸
-
注意力機制詳細說明
-
注意力機制的實作
-
定義權重
-
注意力的計算
-
NMT 搭配注意力機制的一些翻譯結果
-
用視覺化方式把來源與目標句子的注意力呈現出來
-
Seq2Seq 模型的其他應用:聊天機器人
-
訓練聊天機器人
-
聊天機器人的評估:圖靈測試
-
總結
-
-
Chapter 11:NLP 自然語言處理的趨勢與未來
-
NLP 的當前趨勢
-
單詞內嵌
-
區域內嵌
-
機率型單詞內嵌
-
集成內嵌
-
主題內嵌
-
神經機器翻譯(NMT)
-
注意力機制的改進
-
混合型MT 模型
-
其他研究領域的應用
-
NLP 與電腦視覺
-
視覺問題答覆(VQA)
-
運用注意力機制,為圖片生成圖片說明
-
NLP 與強化學習
-
教導代理者使用自己的語言進行溝通
-
具有強化學習能力的對話代理者
-
NLP 與生成對抗網路
-
邁向通用人工智慧
-
用一個模型學習所有的模型
-
聯合多任務模型:針對多個NLP 任務發展出神經網路
-
第一層級:單詞層級任務
-
第二層級:句法層級任務
-
第三層級:語義層級任務
-
NLP 在社群媒體方面的應用
-
偵測出社群媒體的謠言
-
偵測出社群媒體中的情緒
-
分析推文中的政治框架
-
不斷湧現的新任務
-
偵測出諷刺性說法
-
語言背景基礎知識
-
使用LSTM 略讀文字
-
比較新的一些機器學習模型
-
階段型LSTM
-
擴張型遞迴神經網路(DRNN)
-
總結
-
參考資料
-
-
Appendix A:數學基礎和TensorFlow 進階概念
-
基本資料結構
-
純量
-
向量
-
矩陣
-
矩陣的索引方式
-
特殊型態的矩陣
-
單位矩陣
-
對角矩陣
-
張量
-
張量/矩陣運算
-
轉置
-
矩陣乘法
-
元素級乘法
-
逆矩陣
-
找出逆矩陣:奇異值分解(SVD)
-
範數
-
行列式
-
機率
-
隨機變數
-
離散隨機變數
-
連續隨機變數
-
機率質量函數/機率密度函數
-
條件機率
-
聯合機率
-
邊際機率
-
貝氏定理
-
Keras 簡介
-
TensorFlow seq2seq 函式庫簡介
-
定義編碼器和解碼器內嵌
-
定義編碼器
-
定義解碼器
-
使用TensorBoard 以視覺化方式呈現單詞內嵌
-
啟動TensorBoard
-
保存單詞內嵌並以TensorBoard 進行視覺化呈現
-
總結
-
- 出版地 : 臺灣
- 語言 : 繁體中文
評分與評論
請登入後再留言與評分