NLP學習路徑(五) NLP關鍵詞提取演算法

2021-09-13 16:37:54 字數 1204 閱讀 3402

2、tf/idf演算法(無監督)

tf-idf演算法是一種基於統計的計算方法,常用於評估在乙個文件集中乙個詞對某份文件的重要程度。

tf演算法是統計乙個詞在一篇文件**現的頻次;idf演算法是統計乙個詞在文件集的多少個文件**現,基本思想是:如果乙個詞在文件**現的次數越少,則其對文件的區分能力也就越強(要對每個詞分配乙個」重要性」權重。最常見的詞給予較小的權重,較少見的詞給予較大的權重)。

1)詞頻(tf)=某個詞在文章**現的次數/文章的總詞數

2)逆文件頻率(idf) = log(語料庫的文件數/(包含該詞的文件數+1))

+1是為了拉普拉斯平滑,避免有部分新詞沒有在語料庫**現過而導致分母為0的情況出現。

3)tf-idf = 詞頻(tf)*逆文件頻率(idf)

3、textrank演算法4、lsa/lsi/lda演算法(主題模型演算法)

lsa演算法(潛在語義分析)主要步驟如下:

1)使用bow模型將每個文件表示為向量

2)將所有的文件詞向量拼接起來構成詞–文件矩陣(m*n)

3)對詞–文件矩陣進行奇異值分解(svd)操作

4)對svd分解後的矩陣進行降維

5)使用降維後的矩陣構建潛在語義空間

lsa詳細解釋

(2)lda演算法

lda演算法的理論基礎是貝葉斯理論。lda根據詞的共現資訊的分析,擬合出詞–文件–主題的分布,進而將詞、文字都對映到乙個語義空間中。

lda模型訓練過程如下:

1)隨機初始化,對語料中每篇文件中的每個詞w,隨機地賦予乙個topic編號z。

2)重新掃瞄語料庫,對每個詞w按照吉布斯取樣公式重新取樣他的topic,在語料中進行更新。

3)重複以上語料庫的重新取樣過程直到吉布斯取樣收斂。

4)統計語料庫的topic-word共現頻率矩陣,該矩陣就是lda模型。

經過上述步驟,就得到乙個訓練好的lda模型,接下來就可以按照一定方式對新文件進行topic進行預估,步驟如下:

1)隨機初始化,對當前文件中的每個詞w,隨機地賦予乙個topic編號z

2)重新掃瞄當前文件,按照吉布斯取樣公式,重新取樣他的topic

3)重複以上過程直到吉布斯取樣收斂

4)統計文件中的topic分布即為預估結果

參考:《python自然語言處理實戰 核心技術與演算法》

nlp 關鍵詞搜尋

可以嘗試修改 除錯 公升級的部分是 文字預處理步驟 你可以使用很多不同的方法來使得文字資料變得更加清潔 更好的回歸模型 根據之前的課講的ensemble方法,把分類器提公升到極致 版本1.0 日期 10.10.2019 import numpy as np import pandas as pd f...

NLP關鍵詞提取

1 tf idf詞頻逆序詞頻 2 textrank 基於圖的模型,網上很多測評說它不一定強過tf idf,其實對於沒有標註資料的情況,感覺評判好壞真的很艱難。3 lda 4 word2vec 聚類 這個方法是看以為總結的,感覺具體的實施方案還是得自己實踐,不過個人覺得這個方法有點麻煩。主要流程如下 ...

NLP學習筆記 使用jieba實現關鍵詞提取

tf idf term frequency inverse document frequency,詞頻 逆檔案頻率 是一種統計方法,用以評估乙個詞語對於乙個檔案集或乙個語料庫中的乙份檔案的重要程度,其原理可概括為 乙個詞語在一篇文章 現次數越多,同時在所有文件 現次數越少,越能夠代表該文章 計算公式...