《從零開始!90 分鐘帶你完整了解自然語言處理》
自然語言是人類為了溝通而創造出來的工具,隨著時間演化而成的結晶 像是:文字、語言、音樂等等都是自然語言。 自然語言處理 Natural Language Process,簡單來說就是透過電腦、機器
內容簡介
作者介紹
適合人群
你將會學到什麼
購買須知
-
NLP自然語言處理-斷詞
由高浩銓老師帶領大家認識,NLP自然語言處理第一步:斷詞
-
CH1 【自然語言是什麼?】
自然語言是人類為了溝通而創造出來的工具,隨著時間演化而成的結晶像是:文字、語言、音樂等等都是自然語言。自然語言處理 Natural Language Process,簡單來說就是透過電腦、機器解析自然語言資料之中的涵義,來獲得我們想要的資訊學習更多程式知識,Cupoy官方網站:https://www.cupoy.com
-
自然語言處理是什麼?
程式語言 為計算機而設的語言,依應用目的會使用不同程度語言。 例如:JavaScript,Python,PHP 自然語言 人類為了溝通而創造的語言,有結構性語法(Grammar),形式包含文字、語言、音樂等。
-
CH2 【常見的NLP任務】
自動語音辨識 Automatic Speech Recongnition 命名實體辨識 Named Entity Recongnition 語法標註 Part-of-speech Tagging 語法分析 Syntactic Parsing 文本分類 Text Categorization 指代消解 Coreference Resolution 機器翻譯 Machine Translation 文字轉語音系統 Text-to-speech NLU(Natural Language Understanding),是包含在NLP之中,而自然語言處理的最終目標是希望機器可以理解人類的語言,所以NLU其實是NLP之中更困難的部分。 NLU常見的任務有: 關係提取、自然語言推理、語意解析、對話系統、情感分析、問答系統、本文摘要等等。
-
常見的NLP任務
機器翻譯(Machine Translation) 文本分類(Text Classification) 垃圾郵件偵測(Spam Mail detection) 文本摘要(Text Summarization) 語音辨識(Speech recognition) 命名實體識別(Named Entity Recognition)
-
CH3 【如何讓機器看得懂文字】
獨熱編碼 One-hot encoding 建立一個字典,再把詞下去做篩選,使它數值化, 但缺點是當詞量過多時會耗損太多的容量 整數編碼 Integer encoding 可以改善讀熱編碼耗損太多容量的問題,但仍無法找出詞彼此之間的關係 詞向量嵌入 Word embedding Word2Vec -CBOW:透過分析一個詞前後的詞,來判斷該詞的意思 -Skip-gram:透過一個詞來分析其前後的詞 Glove 做 WordVec 的延伸,透過向量空間了解詞之間的關係
-
如何讓機器看得懂文字
獨熱編碼(One-hot encoding) 整數編碼(interger encoding) 詞向量嵌入(Word embedding) Word2Vec GloVe
-
CH4 【斷詞】
電腦沒有辦法直接解讀一個句子所代表的涵意、情緒等等,所以我們會需要把句子切成詞, 好讓電腦去理解、分析,而把句子切成詞的這個過程就是斷詞。
-
斷詞
把句子切開!→ 斷詞 English This is a simple example. → This/is/a/simple/example /. Japanese 昼ご飯を食べています。→ 昼ご飯/を/食べ/て/います/ 。 Chinese 振興五倍卷今天開始預約。 → 振興/五倍卷/今天/開始/預約/ 。 Chinese 振興五倍卷今天開始預約 → 振/興/五/倍/卷/今/天/開/始/預/約 (X) 振興五倍卷今天開始預約 → 振興/五倍卷/今天/開始/預約 Difficulty 振興五倍卷今天開始預約 → 振/興/五/倍/卷/今/天/開/始/預/約 振興五倍卷今天開始預約 → 振興/五倍卷/今天/開始/預約 常見的 Python 斷詞 Package English str.split() NLTK (Natural Language Tool Kit) Japanese Fugashi nagisa Chinese Jieba Ckiptagger
-
CH5 【斷詞方法的基本介紹】
詞典分詞法 機器學習法 深度學習法
-
斷詞的方法
目前斷詞的主流方法有以下幾種: 基於詞典的分詞法 基於統計的機器學習算法 基於深度學習的算法
-
CH6 【詞典斷詞法】
Trie Tree 基於辭典做建構,在根節點通過所有分節點的路徑上所有的字元連接起來, 就是一個節點所對應的字串。 DAG 有向無環圖,從任何一個點出發,他沒有辨法回到原本的的點。 透過Trie Tree 字典查詢生成有向無環圖,列出所有可能的句子切分來找出斷詞。
-
詞典斷詞法
Trie Tree DAG (Directed Acyclic Graph) 我愛機器學習 我/愛/機器/學習
-
CH7 【機器學習斷詞法】
HMM 馬可夫模型 是具有狀態的隨機過程,透過條件機率來從原始狀態轉換到下一個狀態, 其狀態轉移矩陣不會受到外因干擾而改變, 所以下一個狀態是和上ㄧ個狀態以及狀態轉移矩陣有關。 隱馬可夫模型 透過機率的運算來從已知現象去推測那些隱藏狀態, 比如說我們會不知道某一些隱藏狀態 (ex:晴天、雨天), 所以我們就可以透過一些現象來進行推測。
-
基於統計的機器學習算法
馬可夫模型 隱馬可夫模型 Sunny, Sunny, Sunny:0.4*0.6*0.6*0.6*0.6*0.6 = 0.031104 Rainy, Sunny, Sunny:0.6*0.1*0.3*0.6*0.6*0.6 = 0.003888 維特比演算 (Viterbi) 隱藏狀態:BMES,B(開頭),M(中間),E(結尾)、S(獨立成詞) 觀察狀態:可以看到的字 例:我喜歡吃巧克力 - SBESBME
-
CH8 【深度學習斷詞法】
RNN的改良版,透過詞、成詞方向來找出這個句子的斷詞
-
深度學習斷詞法
-
CH9 【斷詞實作教學】
斷詞實作教學
-
-
程式碼檔案下載區
斷詞的實作練習,歡迎各位同學來下載~