一、提取關鍵字技術簡介
關鍵字提取技術一般也可以分為有監督和無監督
,分別是tf-idf演算法、textrank演算法和主題模型演算法(包括lsa、lsi、lda等)。
tf-idf演算法
tf-idf(term frequency-inverse document frequency,詞頻-逆文件頻次演算法)是一種基於統計的計算方法,常用於評估在乙個文件集中乙個詞對某份文件的重要程度。
tf-idf = tf*idf
tf-idf由兩部分組成:tf演算法、idf演算法。
tf演算法是統計乙個詞在一篇文件**現的頻次,其基本思想是乙個詞在文件**現的次數越多,則其對文件的表達能力能力也就越強。
idf演算法是乙個詞在文件集的多少個文件**現,其基本思想是如果乙個詞在越少的文件**現,則其對文件的區分能力也就越強。
例如:一篇文件為「世界獻血日,學校團體、獻血服務志願者等可到血液中心參觀檢驗加工過程,我們會對檢驗結果進行公示,同時血液的**也將進行公示。」
1)對上面文件中的文字進行分詞,文件的總詞數是30,其中「獻血」、「血液」、「進行」、「公示」等詞出現的頻率均為2。
根據tf公式:
tf(獻血)=n(獻血)/n(總詞數)=2/30≈0.067
tf(獻血) = tf(血液) =tf(進行)= tf(公示) ≈0.067
實際上「獻血」、「血液」對這篇文件來說更重要,此時需要idf出場了。從詞頻、逆文件詞頻兩個角度對詞的重要性進行衡量。
根據idf公式:
idf(獻血)=log(1000/10)=2
同理可得,idf(血液)=1.824,idf(進行)=1,idf(公示)=1.301。
3)根據tf-idf公式計算每個詞的if-idf值
tf-idf(獻血) =tf(獻血)*idf(獻血)≈0.134
tf-idf(血液) =tf(血液)*idf(血液)≈0.122
tf-idf(進行) =tf(進行)*idf(進行)≈0.067
tf-idf(公示) =tf(公示)*idf(公示)≈0.087
2、textrank演算法
3、主題模型演算法
NLP關鍵詞提取
1 tf idf詞頻逆序詞頻 2 textrank 基於圖的模型,網上很多測評說它不一定強過tf idf,其實對於沒有標註資料的情況,感覺評判好壞真的很艱難。3 lda 4 word2vec 聚類 這個方法是看以為總結的,感覺具體的實施方案還是得自己實踐,不過個人覺得這個方法有點麻煩。主要流程如下 ...
NLP學習路徑(五) NLP關鍵詞提取演算法
2 tf idf演算法 無監督 tf idf演算法是一種基於統計的計算方法,常用於評估在乙個文件集中乙個詞對某份文件的重要程度。tf演算法是統計乙個詞在一篇文件 現的頻次 idf演算法是統計乙個詞在文件集的多少個文件 現,基本思想是 如果乙個詞在文件 現的次數越少,則其對文件的區分能力也就越強 要對...
關鍵詞提取演算法
傳統的tf idf演算法中,僅考慮了詞的兩個統計資訊 出現頻次 在多少個文件出現 因此,其對文字的資訊利用程度顯然也是很少的。演算法本身的定義是死的,但是結合我們的應用場景,對演算法進行合適的重塑及改造,使之更適應對應場景的應用環境,無疑能對我們想要得到的結果起到更好的指導作用。textrank演算...