文本表示法

分詞與詞頻

自然語言處理(NLP)是人工智慧的一個子領域,旨在使計算機能夠理解、解釋和生成自然語言。

NLP 結合了計算機科學、語言學和統計學的技術,應用於語音識別、文本分析、情感分析等領域。

隨著深度學習技術的發展,NLP 的性能有了顯著提升,並在許多實際應用中取得了成功。

工作流:
資料收集前處理→ 特徵工程→ 模型選擇與訓練→ 模型評估→ 模型部署與優化

Jieba 分詞/詞頻 (Jieba無實體識別)


工作階段:資料收集前處理(分詞)→ 特徵工程(詞頻) 實作範例程式碼📖

Spacy 分詞/詞頻/實體識別


工作階段:資料收集前處理(分詞)→ 特徵工程(詞頻、實體識別)
  • SPACY NLP
  • 讀取文本
  • 分詞
  • 分析詞頻
  • 繪製文字雲
  • 實體識別
實作範例程式碼📖

詞袋模型 (Bag of Words, BoW)


工作階段:資料收集前處理→ 特徵工程(詞袋模型)
  • tensorflow.keras.preprocessing.text.Tokenizer以文字訓練詞袋模型,並將文本轉換為數字序列。
  • 詞袋模型是一種簡單的文本表示方法,它將文本轉換為詞頻向量,忽略了詞語的順序和語法結構。
  • 詞袋模型有詞彙與索引對照表,將句子的詞語轉換為對應的索引,並計算每個詞語在句子中的出現次數。
  • 同樣的方法有sklearn.feature_extraction.text.CountVectorizer,將文本轉換為詞頻矩陣。
  • 現今的應用場景很少使用詞袋模型。
實作範例程式碼📖

N-Grams


工作階段:資料收集前處理→ 特徵工程(N-Grams)
  • N-Grams是一種文本處理技術,用於將文本分解為連續的n個詞語或字元組合。
  • N-Grams有考慮文本詞彙的前後順序
實作範例程式碼📖

TF-IDF (Term Frequency-Inverse Document Frequency)


工作階段:資料收集前處理→ 特徵工程(TF-IDF)
  • TF-IDF是一種文本表示方法,用於衡量詞語在文本中的重要性。
  • TF-IDF考慮了詞語在文本中的頻率和在整個語料庫中的稀有性。
  • TF-IDF可以用於文本分類、信息檢索等任務。
  • 現今的應用場景很少使用TF-IDF,因為深度學習模型已經取代了它的功能。
實作範例程式碼📖