簡要的談談文本數據挖掘的通常步驟

   

     數據挖掘領域一直都很是的火。如今炒的很是熱的大數據,其實也是數據挖掘的一個應用而已,無論工程師用的是Hadoop仍是其餘平臺,其實都是對一堆的數據進行分析,計算,而後獲得咱們但願獲得的結果。因此咱們能夠知道,文本數據挖掘的必要性是由於信息技術,特別是網絡的頻繁使用,自媒體的愈來愈多,從大海中找到同一類,和用戶期待的一類信息愈來愈重要,而人工完成幾乎不可能,因此,文本挖掘就應運而生。html

 

     數據挖掘中的文本挖掘與咱們的生活息息相關,好比說,百度上的新聞,固然,他少不了編輯人員的做用,可是在衆多網絡信息中,尋找到熱點,離開機器的做用幾乎是不可能完成的。還有最近一款很是熱的app,<<頭條>>。其實也是文本挖掘的應用。固然,其中還有推薦系統(這裏咱們不作討論,若是你們有興趣,我能夠另寫一博文普及一下相關知識)。還有,文本挖掘對百度,google等搜索引擎其實也起到很是大的重要。算法

     好的,瞭解到了這些的話,咱們就能夠講講文本挖掘的一本步驟,這裏以網絡文本爲例。數據挖掘就是作一道菜,通過各類加工,最後成爲一道美食。數據庫

 

     1、獲取文本網絡

     通常來講網絡文本的獲取,主要是網頁的形式。咱們要把網絡中的文本獲取造成一個文本數據庫(數據集)。利用一個爬蟲(這是另一個知識點),抓取到網絡中的信息。爬取的策略有廣度和深度爬取;根據用戶的需求,爬蟲能夠有主題爬蟲和通用爬蟲之分,主題爬取主要是在相關站點爬取或者爬取相關主題的文本,而通用爬蟲則通常對此不加限制。爬蟲能夠本身寫,固然如今網絡上已經存在不少開源的爬蟲系統。固然若是須要定製,本身寫仍是能夠的。app

 

     2、對文本進行預處理工具

     經過上面的步驟,咱們已經得到了作菜的材料了,能夠說,有了它,作出一道菜已是順利成當了。可是,菜好很差吃,可不可口,還須要通過不少步驟的。oop

     咱們知道,網頁中存在不少沒必要要的信息,好比說一些廣告,導航欄,html、js代碼,註釋等等,咱們並不感興趣的信息,能夠delete掉。因此,咱們還須要對文本中的信息進行篩選。這個步驟至關於咱們作菜的洗菜過程,洗掉泥土等,吃起來纔會口感好,不然,沒有清洗過的菜,就算再牛逼的大廚,我想也很難作出佳餚吧。大數據

 

    3、分詞系統搜索引擎

      通過上面的步驟,咱們會獲得比較乾淨的素材。咱們知道,文本中起到關鍵做用的是一些詞,甚至主要詞就能起到決定文本取向。好比說一篇文章講的是體育仍是娛樂,確定是對文章中的中心詞進行分析獲得的結果。那麼怎麼樣才能找到那些可以影響中心意思的詞語呢?google

      別忘了,在找出中心詞以前,咱們首先得在每一個文本中獲得全部詞吧。這裏就會用到一個分詞系統或者說分詞工具。如今針對中文分詞,出現了不少分詞的算法,有最大匹配法、最優匹配法、機械匹配法、逆向匹配法、雙向匹配法等等(能夠參考各種文獻)。咱們常常用到的中科院的分詞工具ICTCLAS,該算法通過衆多科學家的認定是當今中文分詞中最好的,而且支持用戶自定義詞典,加入詞典,;對新詞,人名,地名等的發現也具備良好的效果。

      經過不少分詞工具分出來的出會出現一個詞,外加該詞的詞性。好比說啊是語氣助詞。

      好比咱們對:(咱們都是牛逼的中國人。)進行分詞,獲得的結果是

      咱們/rr 都/d 是/vshi 牛/n 逼/v 的/ude1 中國/ns 人/n 。/wj

 

     4、去除停頓詞等

     通過上面的步驟,咱們已經把全部的詞進行了分類。可是這些全部的詞,並不都是咱們所須要的,好比說句號(。)顯然,句號對意思的表達沒有什麼效果。還有"是"、「的」等詞,也沒有什麼效果。由於這些詞在全部的文章中都大量存在,並不能反應出文本的意思,能夠處理掉。固然針對不一樣的應用還有不少其餘詞性也是能夠去掉的,好比形容詞等。

 

    5、特徵選擇

    通過上面的步驟,咱們基本可以獲得有意義的一些詞。可是這些全部的詞都有意義嗎?顯然不是這樣的,有些詞會在這個文本集中大量出現,有些只是出現少數幾回而已。他們每每也不能決定文章的內容。還有一個緣由就是,若是對全部詞語都保留,維度會特別高,矩陣將會變得特別特別稀疏,嚴重影響到挖掘結果。那麼對這些相對有意義的詞語選取哪一本分比較合理呢?針對特徵選擇也有不少種不一樣的方式,可是改進後的TF*IDF每每起到的效果是最好的。tf-idf 模型的主要思想是:若是詞w在一篇文檔d中出現的頻率高,而且在其餘文檔中不多出現,則認爲詞w具備很好的區分能力,適合用來把文章d和其餘文章區分開來。

 

    下面是百度對TF、IDF的解釋:

    在一份給定的文件裏,詞頻 (term frequency, TF) 指的是某一個給定的詞語在該文件中出現的次數。這個數字一般會被歸一化,以防止它偏向長的文件。(同一個詞語在長文件裏可能會比短文件有更高的詞頻,而無論該詞語重要與否。)
    逆向文件頻率 (inverse document frequency, IDF) 是一個詞語廣泛重要性的度量。某一特定詞語的IDF,能夠由總文件數目除以包含該詞語之文件的數目,再將獲得的商取對數獲得。
    某一特定文件內的高詞語頻率,以及該詞語在整個文件集合中的低文件頻率,能夠產生出高權重的TF-IDF。所以,TF-IDF傾向於保留文檔中較爲特別的詞語,過濾經常使用詞

   經過計算,對詞進行排序,選取合適的詞數當作特徵。

 

    6、利用算法進行挖掘

    通過上面的步驟以後,咱們就能夠把文本集轉化成一個矩陣。咱們可以利用各類算法進行挖掘,好比說若是要對文本集進行分類,咱們能夠利用KNN算法,貝葉斯算法、決策樹算法等等。

     以上六個步驟,就是通常文本挖掘的主要步驟,但願對你們有所幫助。謝謝!

 

    版權全部,歡迎轉載,可是轉載請註明出處:瀟一

相關文章
相關標籤/搜索