1. 程式人生 > >文字關鍵詞提取演算法

文字關鍵詞提取演算法

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow

也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!

               

http://www.cnblogs.com/onlytiancai/archive/2008/05/11/1192780.html

1.TF-IDF

昨天給大家演示簡單的文字聚類,但要給每個聚類再提取一兩個關鍵詞用於表示該聚類。我們還是用TFIDF演算法來做,因為這是比較簡單的提取特徵演算法,不過這裡的TF是指某詞在本聚類內所有文章的詞頻,而不是本文章內出現的次數,IDF還是在所有文章裡出現的倒文件頻率。
原理:1、先給本聚類內的所有文件進行分詞,然後用一個字典儲存每個詞出現的次數
2、遍歷每個詞,得到每個詞在所有文件裡的IDF值,和在本聚類內出現的次數(TF)相乘的值
3、用一個字典(key是詞,value是TF*IDF權重)來儲存所有的詞資訊,然後按value對字典排序,最後取權重排名靠前的幾個詞作為關鍵詞。


2.基於語義的統計語言模型

文章關鍵詞提取基礎件能夠在全面把握文章的中心思想的基礎上,提取出若干個代表文章語義內容的詞彙或短語,相關結果可用於精化閱讀、語義查詢和快速匹配等。

採用基於語義的統計語言模型,所處理的文件不受行業領域限制,且能夠識別出最新出現的新詞語,所輸出的詞語可以配以權重。

文章關鍵詞提取元件的主要特色在於:
1、速度快:可以處理海量規模的網路文字資料,平均每小時處理至少50萬篇文件;
2、處理精準:Top N的分析結果往往能反映出該篇文章的主幹特徵;
3、精準排序:關鍵詞按照影響權重排序,可以輸出權重值;
4、開放式介面:文章關鍵詞提取元件作為TextParser的一部分,採用靈活的開發介面,可以方便地融入到使用者的業務系統中,可以支援各種作業系統,各類呼叫語言。

主要介面:
/*-----------------------------------------------------------------------
* 功能:初始化
* 引數:sLicenseCode - 授權碼
* 返回:true - 成功;false - 失敗
* 備註:在程序中此函式必須在其他函式之前呼叫(只需執行一次)
------------------------------------------------------------------------*/
KWEXTRACT_API bool KDT_Init(const char*sLicenseCode=0);

/*-----------------------------------------------------------------------
* 功能:分析文字內容
* 引數:sText - [IN] 文字內容(以'\0'結束的字串)
* nMaxCount - [IN] 最多抽取多少個關鍵詞
* bWeightFlag - [IN] 是否輸出權重
* 返回:特徵詞字串(以\t分隔,詞和權重間用空格分隔);出錯返回空串
* 備註:在程序中此函式可以在特徵詞抽取之前執行多次
------------------------------------------------------------------------*/
KWEXTRACT_API const char* KDT_ParseContent(constchar *sText, int nMaxCount, bool bWeightFlag=false);

//退出,釋放資源;程序結束前須呼叫它釋放所佔用的記憶體資源
KWEXTRACT_API void KDT_Exit();

//獲得錯誤訊息
KWEXTRACT_API const char* KDT_GetLastErrMsg();

下載地址:

http://www.lingjoin.com/download/LJParser.rar 
參考地址:http://www.lingjoin.com/product/ljparser.html

3.TF-IWF文件關鍵詞自動提取演算法

針對現有TF-IWF的領域文件關鍵詞快速提取演算法.該演算法使用簡單統計並考慮詞長、位置、詞性等啟發性知識計算詞權重,並通過文件淨化、領域詞典分詞等方法提高了關鍵詞提取的速度及準確度.對523篇學生心理健康領域文件的實驗結果表明,該演算法提取的文件關鍵詞質量優於TF-IDF方法,且能在O(n)時間內完成.

4.基於分離模型的中文關鍵詞提取演算法研究

關鍵詞提取在自動文摘、資訊檢索、文字分類、文字聚類等方面具有十分重要的作用。通常所說的關鍵詞實際上有相當一部分是關鍵的短語和未登入詞,而這部分關鍵詞的抽取是十分困難的問題。該文提出將關鍵詞提取分為兩個問題進行處理:關鍵單詞提取和關鍵詞串提取,設計了一種基於分離模型的中文關鍵詞提取演算法。該演算法並針對關鍵單詞提取和關鍵詞串提取這兩個問題設計了不同的特徵以提高抽取的準確性。實驗表明,相對於傳統的關鍵詞提取演算法,基於分離模型的中文關鍵詞提取演算法效果更好。


5.基於高維聚類技術的中文關鍵詞提取演算法
關鍵詞提取是中文資訊處理技術的熱點和難點,基於統計資訊的方法是其中一個重要分支。本文針對基於統計資訊關鍵詞提取方法準確率低的問題,提出基於高維聚類技術的中文關鍵詞提取演算法。演算法通過依據小詞典的快速分詞、二次分詞、高維聚類及關鍵詞甄選四個步驟實現關鍵詞的提取。理論分析和實驗顯示,基於高維聚類技術的中文關鍵詞提取方法具備更好的穩定性、更高的效率及更準確的結果。 

6.基於語義的中文文字關鍵詞提取(SKE)演算法

為克服傳統關鍵詞提取演算法侷限於字面匹配、缺乏語義理解的缺點,提出一種基於語義的中文文字關鍵詞提取(SKE)演算法。將詞語語義特徵融入關鍵詞提取過程中,構建詞語語義相似度網路並利用居間度密度度量詞語語義關鍵度。實驗結果表明,與基於統計特徵的關鍵詞提取演算法相比,SKE演算法提取的關鍵詞能體現文件的主題,更符合人們的感知邏輯,且演算法效能較優。

7.基於樸素貝葉斯模型的中文關鍵詞提取演算法研究

提出了一種基於樸素貝葉斯模型的中文關鍵詞提取演算法。該演算法首先通過訓練過程獲得樸素貝葉斯模型中的各個引數,然後以之為基礎,在測試過程完成關鍵詞提取。實驗表明,相對於傳統的if*idf方法,該演算法可從小規模的文件集中提取出更為準確的關鍵詞,而且可靈活地增加表徵詞語重要性的特徵項,因而具有更好的可擴充套件性。



           

給我老師的人工智慧教程打call!http://blog.csdn.net/jiangjunshow

這裡寫圖片描述