定義
文本挖掘是抽取有效、新穎、有用、可理解的、散布在文本檔案中的有價值知識,並且利用這些知識更好地組織信息的過程。1998年底,國家重點研究發展規劃首批實施項目中明確指出,文本挖掘是“圖像、語言、自然語言理解與知識挖掘”中的重要內容。
文本挖掘是信息挖掘的一個研究分支,用於基於文本信息的知識發現。文本挖掘利用智慧型算法,如神經網路、基於案例的推理、可能性推理等,並結合文字處理技術,分析大量的非結構化文本源(如文檔、電子表格、客戶電子郵件、問題查詢、網頁等),抽取或標記關鍵字概念、文字間的關係,並按照內容對文檔進行分類,獲取有用的知識和信息。
文本挖掘是一個多學科混雜的領域,涵蓋了多種技術,包括數據挖掘技術、信息抽取、信息檢索,機器學習、自然語言處理、計算語言學、統計數據分析、線性幾何、機率理論甚至還有圖論。
技術發展
數據挖掘技術本身就是當前數據技術發展的新領域,文本挖掘則發展歷史更短。傳統的信息檢索技術對於海量數據的處理並不盡如人意,文本挖掘便日益重要起來,可見文本挖掘技術是從信息抽取以及相關技術領域中慢慢演化而成的。
隨著網路時代的到來,用戶可獲得的信息包含了從技術資料、商業信息到新聞報導、娛樂資訊等多種類別和形式的文檔,構成了一個異常龐大的具有異構性、開放性特點的分散式資料庫,而這個資料庫中存放的是非結構化的文本數據。結合人工智慧研究領域中的自然語言理解和計算機語言學,從數據挖掘中派生了兩類新興的數據挖掘研究領域:網路挖掘和文本挖掘。
網路挖掘側重於分析和挖掘網頁相關的數據,包括文本、連結結構和訪問統計(最終形成用戶網路導航)。一個網頁中包含了多種不同的數據類型,因此網路挖掘就包含了文本挖掘、資料庫中數據挖掘、圖像挖掘等。
文本挖掘作為一個新的數據挖掘領域,其目的在於把文本信息轉化為人可利用的知識。
預處理
文本挖掘是從數據挖掘發展而來,但並不意味著簡單地將數據挖掘技術運用到大量文本的集合上就可以實現文本挖掘,還需要做很多準備工作。文本挖掘的準備工作由文本收集、文本分析和特徵修剪三個步驟組成,
文本收集
需要挖掘的文本數據可能具有不同的類型,且分散在很多地方。需要尋找和檢索那些所有被認為可能與當前工作相關的文本。一般地,系統用戶都可以定義文本集,但是仍需要一個用來過濾相關文本的系統。
文本分析
與資料庫中的結構化數據相比,文本具有有限的結構,或者根本就沒有結構;此外文檔的內容是人類所使用的自然語言,計算機很難處理其語義。文本數據源的這些特殊性使得現有的數據挖掘技術無法直接套用於其上,需要對文本進行分析,抽取代表其特徵的元數據,這些特徵可以用結構化的形式保存,作為文檔的中間表示形式。其目的在於從文本中掃描並抽取所需要的事實
特徵修剪
特徵修剪包括橫向選擇和縱向投影兩種方式。橫向選擇是指剔除噪聲文檔以改進挖掘精度,或者在文檔數量過多時僅選取一部分樣本以提高挖掘效率。縱向投影是指按照挖掘目標選取有用的特徵,通過特徵修剪,就可以得到代表文檔集合的有效的、精簡的特徵子集,在此基礎上可以開展各種文檔挖掘工作。
關鍵技術
經特徵修剪之後,可以開展數據文本挖掘工作。從目前文本挖掘技術的研究和套用狀況來看,從語義的角度來實現文本挖掘的還很少,目前研究和套用最多的幾種文本挖掘技術有:文檔聚類、文檔分類和摘要抽取。
文檔聚類
首先,文檔聚類可以發現與某文檔相似的一批文檔,幫助知識工作者發現相關知識;其次,文檔聚類可以將一個文檔聚類成若干個類,提供一種組織文檔集合的方法;再次,文檔聚類還可以生成分類器以對文檔進行分類。
文本挖掘中的聚類可用於:提供大規模文檔集內容的總括;識別隱藏的文檔間的相似度;減輕瀏覽相關、相似信息的過程。
聚類方法通常有:層次聚類法、平面劃分法、簡單貝葉斯聚類法、K-最近鄰參照聚類法、分級聚類法、基於概念的文本聚類等。
文檔分類
分類和聚類的區別在於:分類是基於已有的分類體系表的,而聚類則沒有分類表,只是基於文檔之間的相似度。
由於分類體系表一般比較準確、科學地反映了某一個領域的劃分情況,所以在信息系統中使用分類的方法,能夠讓用戶手工遍歷一個等級分類體系來找到自己需要的信息,達到發現知識的目的,這對於用戶剛開始接觸一個領域想了解其中的情況,或者用戶不能夠準確地表達自己的信息需求時特別有用。傳統搜尋引擎中目錄式搜尋引擎屬於分類的範疇,但是許多目錄式搜尋引擎都採用人工分類的方法,不僅工作量巨大,而且準確度不高,大大限制了起作用的發揮。
另外,用戶在檢索時往往能得到成千上萬篇文檔,這讓他們在決定哪些是與自己需求相關時會遇到麻煩,如果系統能夠將檢索結果分門別類地呈現給用戶,則顯然會減少用戶分析檢索結果的工作量,這是自動分類的另一個重要套用。
文檔自動分類一般採用統計方法或機器學習來實現。常用的方法有:簡單貝葉斯分類法,矩陣變換法、K-最近鄰參照分類算法以及支持向量機分類方法等。
自動文摘
網際網路上的文本信息、機構內部的文檔及資料庫的內容都在成指數級的速度增長,用戶在檢索信息的時候,可以得到成千上萬篇的返回結果,其中許多是與其信息需求無關或關係不大的,如果要剔除這些文檔,則必須閱讀完全文,這要求用戶付出很多勞動,而且效果不好。
自動文摘能夠生成簡短的關於文檔內容的指示性信息,將文檔的主要內容呈現給用戶,以決定是否要閱讀文檔的原文,這樣能夠節省大量的瀏覽時間。簡單地說自動文摘就是利用計算機自動地從原始文檔中提取全面準確地反映該文檔中心內容的簡單連貫的短文。
自動文摘具有以下特點:
(1)自動文摘應能將原文的主題思想或中心內容自動提取出來。
(2)文摘應具有概況性、客觀性、可理解性和可讀性。
(3)可適用於任意領域。
按照生成文摘的句子來源,自動文摘方法可以分成兩類,一類是完全使用原文中的句子來生成文摘,另一類是可以自動生成句子來表達文檔的內容。後者的功能更強大,但在實現的時候,自動生成句子是一個比較複雜的問題,經常出現產生的新句子不能被理解的情況,因此目前大多用的是抽取生成法。
套用前景
利用文本挖掘技術處理大量的文本數據,無疑將給企業帶來巨大的商業價值。因此,目前對於文本挖掘的需求非常強烈,文本挖掘技術套用前景廣闊。
評估辦法
評估文本挖掘系統是至關重要的,目前已有許多方法來衡量在這一領域的進展狀況,幾種比較公認的評估辦法和標準如下:
分類正確率:通過計算文本樣本與待分類文本的機率來得出分類正確率。
(1)查準率:查準率是指正確分類的對象所占對象集的大小,
(2)查全率:查全率是指集合中所含指定類別的對象數占實際目標類中對象數的比例。
(3)支持度:支持度表示規則的頻度。
(4)置信度:置信度表示規則的強度。