使用 TensorFlow 的自然語言處理簡介
在此課程模組中,我們將探索以不同的神經網路結構來處理自然語言文字。 在最近幾年,自然語言處理 (NLP) 的領域出現快速成長,其原因在於語言模型結構上的改進,以及使用與日俱增的文字語料庫對其進行定型。 因此,其「了解」文字的能力已大幅改進,且例如 BERT 的大型預先定型模型已越來越廣泛使用。
我們將著重於 TensorFlow 中以張量表示 NLP 的基本層面,以及傳統的 NLP 結構,例如使用詞袋、內嵌和循環神經網路。
自然語言工作
我們可以使用神經網路來解決數種 NLP 工作:
- 當我們需要將文字片段分類成數個預先定義的類別之一時,就會使用文字分類。 範例包括垃圾電子郵件偵測、新聞分類、將支援要求指派到其中一種類別等等。
- 意圖分類 是文字分類的一個特定案例,我們想要將交談 AI 系統中的輸入語句對應至其中一個意圖,這些意圖代表片語語的實際意義或使用者的意圖。
- 情感分析 是回歸工作,我們想要瞭解指定文字片段的積極性程度。 我們可以將資料集的文字從最負面 (-1) 標記到最正面 (+1),並將模型定型成可以輸出代表輸入文字之正面性的數字。
- 具名實體辨識 (NER) 是從文字中擷取實體的工作,例如日期、位址、人員名稱等。與意圖分類一起,NER 通常會用於對話系統中,從用戶的語句中擷取參數。
- 關鍵詞擷取的類似工作可用來尋找文字內最有意義的單字,然後可用來做為標記。
- 文字摘要 會擷取最有意義的文字片段,為使用者提供原始文字的壓縮版本。
- 「問答 」是從一段文字中擷取答案的工作。 此模型會採用文字片段和問題作為輸入,然後在文字內找到包含解答的確切位置。 例如,文字為「John 是 22 歲的學生,喜歡使用 Microsoft Learn」,問題為「John 幾歲」,答案會是 22。
在本課程模組中,我們主要著重於 文字分類 工作。 不過,我們將了解於未來處理更困難工作所需的所有重要概念。
學習目標
- 了解針對 NLP 工作的文字處理方法
- 了解循環神經網路 (RNN) 和生成神經網路 (GNN)
- 瞭解注意力機制
- 瞭解如何建立文字分類模型
必要條件
- Python 的知識
- 對機器學習的基本了解