摘 要:在當今海量數據充斥人類生活方方面面的情況下,如何從中發現有用信息,為我們所有,成為人們要解決的一個重點研究方向。本文中著重探討數據挖掘的主要技術,以便更好的開發出高效精確的數據挖掘產品。
關鍵詞:數據挖掘;聚類;聚類算法
中圖分類號:TP311.13 文獻標識碼:A 文章編號:1674-7712 (2014) 22-0000-01
隨著計算機和網絡技術的發展,我們工作學習和生活之中的數據量急劇增長,而93%以上的數據在進入業務系統后,從未得到使用。海量的信息意味著巨大的競爭。企業比任何時候都需要更快更好的作決策。我們希望通過數據挖掘技術從這些數據當中挖掘出具有決策意義的信息。
數據挖掘是一門相對較新的、綜合性的學科,包括數據庫技術、機器學習、統計學、模式識別、信息檢索、神經網絡等。到20世紀80年代末,數據庫用來提高市場競爭力,數據庫中的知識發現(KDD)用于描述所有從已知數據中發現關系和規則的方法。隨著數據挖掘概念的建立,逐漸變成整個推斷知識過程的同義詞。
聚類[1]是數據挖掘中的一種主要技術,是把一組個體按照相似性歸成若干類別,即“物以類聚”。它的目的是使得屬于同一類別的個體之間的距離盡可能的小,而不同類別上的個體間的距離盡可能的大。
在統計方法中聚類稱聚類分析,它主要研究基于幾何距離的聚類。傳統統計聚類分析方法包括系統聚類法、分解法、加入法、動態聚類法、有序樣品聚類、有重疊聚類和模糊聚類等。
在機器學習中聚類稱作無監督或無教師歸納。機器學習領域中的概念聚類算法通過符號屬性來進行聚類,并得出聚類的概念描述。當聚類對象可以動態增加時,概念聚類則稱是概念形成。概念聚類由兩部分組成:(1)發現合適的類;(2)形成對每個類的描述。
聚類分析問題描述為:給定m維空間Rm中的n個向量,把每個向量歸屬到S聚類中的某一個,使得每個向量與其聚類中心的“距離”最小。聚類分析問題的實質是一個全局最優問題。在這里,m可認為是樣本參與聚類的屬性個數,n是樣本的個數,S是由用戶預先設定的分類數目。
數據聚類正在蓬勃發展,有貢獻的研究領域包括數據挖掘、統計學機器學習、空間數據庫技術、生物學,以及市場營銷。由于數據庫中收集了大量的數據,聚類分析已經成為數據挖掘研究領域中一個非常活躍的研究課題。
隨著數據挖掘研究的深入,出現了很多的聚類算法[2]。常見的聚類算法有五大類。即劃分法、分層法、基于密度的方法、基于網格的方法和基于模型的方法。
一、劃分方法(partitioning method)
給定要構建的劃分的數目k,創建一個初始劃分。每個劃分表示一個簇,每個簇至少包含一個數據對象,同時,每個數據對象只能屬于一個簇(模糊聚類中可放寬約束)。然后采用一種迭代的重定位技術,嘗試通過對象在劃分間移動來改進劃分,直到以局部最優結束。一個好的劃分的準則是:在同一類中的對象之間盡可能“接近”或相關,而不同類中的對象之間盡可能的遠離或不同。
最著名與常用的劃分方法是K-means、K-medoids以及它們的變種。
二、層次方法(hierarchical method)
層次式聚類算法對給定數據對象集合進行層次的分解,根據層次分解形成的方向又可以分成凝聚式和分列式兩種。前者采用自底向上的方法,先將每個對象歸為單獨底組,然后逐漸合并相近的對象或組,直到所有的組合并為一個,或者達到一個中止條件。后者則采用自頂向下的方法,初始將所有的對象置于一個組中,然后在迭代的過程中,每個組被分裂為更小的組,直到最終每個對象在單獨一個組中,或者達到一個中止條件。
層次式聚類算法的缺陷在于,一旦完成一個合并或分裂的步驟后,即使是錯誤的,也無法被撤銷,且影響其后的聚類過程。
CURE算法就是采用了層次聚類算法,解決了絕大多數聚類算法偏好球形和相似大小的問題,在處理孤立點上也更加健壯。但CURE不能處理分類屬性。
三、基于密度的方法(density-based method)
基于距離的聚類方法只能發現球狀的簇,而在發現任意形狀的簇上遇到了困難,為此提出了基于密度的聚類。其中心思想是:只要臨近區域的密度(對象或數據點的數目)超過某個閥值就繼續聚類。也就是說,對類中的每個數據點,在一個給定范圍的區域中必須至少包含某個數目的點。這種方法可以用來過濾噪聲數據,發現任意形狀的簇。
DBSCAN算法是一種基于密度的空間數據聚類算法。該算法利用基于密度的聚類(或者類cluster)概念。這一算法的顯著優點是聚類速度快,且能夠有效處理噪聲點(outliers)和發現任意形狀的空間聚類。但是它又兩個比較明顯的弱點:(1)當數據量增大時,要求較大的內存支持,I/O消耗也很大;(2)當空間聚類的密度不均勻,聚類間距離相差很大時,聚類質量較差。
四、基于網格的方法(grid-based method)
基于網格的方法把對象空間量化為有限數目的單元,形成一個網格結構,所有的聚類操作都在這個網格結構(即量化空間)上進行。
CLIQU算法綜合了基于密度和基于網格的聚類方法,利用自頂向上方法求出各個子空間的聚類單元,主要用于找出高維數據空間中存在的低維聚類。但為了求出K維空間聚類,則必須組合給出所有K-1維子空間的聚類,導致其算法的空間和時間效率都很低,而且要求用戶輸入兩個參數,數據聚值空間等間隔距離ξ和密度閥值τ。這些數據與樣本數據緊密相關,用戶一般難以確定。但它對數據的輸入順序不敏感。
五、基于模型的方法(model_based method)
基于模型的方法為每個聚類假定了一個模型,然后去尋找能夠很好滿足這個模型的數據集。一個基于模型的算法可以通過構造反映數據點空間分布的密度函數來定位聚類,也可以基于標準的統計數字自動決定聚類的數目。
參考文獻:
[1]彭木根.數據倉庫技術與實現[M].北京:電子工業出版社,2002(06):4-5,406-409.
[2]張云濤,龔玲.數據挖掘原理與技術[M].北京:電子工業出版社,2004(04).
[作者簡介]邢培,女,信息工程系,講師,碩士,研究方向:的計算機軟件和數據庫研究與教學工作。