1.簡(jiǎn)介
數(shù)據(jù)挖掘主要研究?jī)?nèi)容有:分類模式钢猛、聚類模式伙菜、回歸模式、關(guān)聯(lián)模式命迈、序列模式贩绕、偏差模式等等火的。
?1)分類模式:分類就是構(gòu)造一個(gè)分類函數(shù)(分類模型),把具有某些特征的數(shù)據(jù)項(xiàng)映射到某個(gè)給定的類別上淑倾。
該過程由2步構(gòu)成:模型創(chuàng)建和模型使用馏鹤。Step1:通過對(duì)訓(xùn)練數(shù)據(jù)集的學(xué)習(xí)來建立分類模型; step2:用分類模型對(duì)測(cè)試數(shù)據(jù)和新的數(shù)據(jù)進(jìn)行分類娇哆。
?其中的訓(xùn)練數(shù)據(jù)集是帶有類標(biāo)號(hào)的湃累,也就是說在分類之前,要?jiǎng)澐值念悇e是已經(jīng)確定的迂尝。通常分類模型是以分類規(guī)則脱茉、決策樹或數(shù)學(xué)表達(dá)式的形式給出的。
2)聚類模式:聚類就是將數(shù)據(jù)項(xiàng)分組成多個(gè)類或簇垄开,類之間的數(shù)據(jù)差別應(yīng)盡可能大琴许,類內(nèi)的數(shù)據(jù)差別應(yīng)盡可能小,即為“最小化類間的相似性溉躲,最大化類內(nèi)的相似性”原則榜田。
與分類模式不同的是,聚類中要?jiǎng)澐值念悇e是未知的锻梳,它是一種不依賴于預(yù)先定義的類和帶類標(biāo)號(hào)的訓(xùn)練數(shù)據(jù)集的非監(jiān)督學(xué)習(xí)箭券,無需背景知識(shí),其中類的數(shù)量由系統(tǒng)按照某種性能指標(biāo)自動(dòng)確定疑枯。
聚類是一種無監(jiān)督的學(xué)習(xí)方式(事先沒有任何訓(xùn)練樣本辩块,而需要直接對(duì)數(shù)據(jù)進(jìn)行建模);分類是典型的有監(jiān)督學(xué)習(xí)(通過已有的訓(xùn)練樣本去訓(xùn)練得到一個(gè)最優(yōu)模型)
聚類涉及的數(shù)據(jù)集合其特征是未知的荆永,并且在開始聚類之前废亭,用戶并不知道要把數(shù)據(jù)劃分成幾類,也不清楚分組的標(biāo)準(zhǔn)具钥;分類實(shí)際上就是從數(shù)據(jù)庫(kù)對(duì)象中發(fā)現(xiàn)共性豆村,并將數(shù)據(jù)對(duì)象分成不同類別的一個(gè)過程。
2.聚類算法
(1)基于分層的聚類(hierarchical methods)
? 將給定的數(shù)據(jù)集進(jìn)行逐層分解骂删,直到滿足某種條件為止掌动。具體可分為“自底向上”和“自頂向下”兩種方案。在“自底向上”方案中宁玫,初始時(shí)每個(gè)數(shù)據(jù)點(diǎn)組成一個(gè)單獨(dú)的組粗恢,在接下來的迭代中,按一定的距離度量將相互鄰近的組合并成一個(gè)組欧瘪,直至所有的記錄組成一個(gè)分組或者滿足某個(gè)條件為止眷射。代表算法有:BIRCH,CURE,CHAMELEON等凭迹。
(2)基于劃分的聚類(partitioning methods)
給定包含n個(gè)點(diǎn)的數(shù)據(jù)集罚屋,劃分法將構(gòu)造k個(gè)分組,每個(gè)分組代表一個(gè)聚類嗅绸,這里每個(gè)分組至少包含一個(gè)數(shù)據(jù)點(diǎn)脾猛,每個(gè)數(shù)據(jù)點(diǎn)屬于且僅屬于一個(gè)分組。對(duì)于給定的值鱼鸠,算法先給出一個(gè)初始的分組方法猛拴,然后通過反復(fù)迭代的方法改變分組,使得每一次改進(jìn)之后的分組方案較前一次好蚀狰,這里好的標(biāo)準(zhǔn)在于同一組中的點(diǎn)越近越好愉昆,不同組中的點(diǎn)越遠(yuǎn)越好。代表算法有:K-means麻蹋,K-medoids跛溉,CLARANS。
(3)基于密度的聚類(density-based methods)
基于密度的方法的特點(diǎn)是不依賴于距離扮授,而是依賴于密度芳室,從而克服基于距離的算法只能發(fā)現(xiàn)“球形”聚簇的缺點(diǎn)。其核心思想在于只要一個(gè)區(qū)域中點(diǎn)的密度大于某個(gè)閾值刹勃,就把它加到與之相近的聚類中去堪侯。代表算法有:DBSCAN,OPTICS荔仁,DENCLUE伍宦,WaveCluster。
(4)基于網(wǎng)格的聚類(gird-based methods)
這種方法通常將數(shù)據(jù)空間劃分成有限個(gè)單元的網(wǎng)格結(jié)構(gòu)乏梁,所有的處理都是以單個(gè)的單元為對(duì)象次洼。這樣做起來處理速度很快,因?yàn)檫@與數(shù)據(jù)點(diǎn)的個(gè)數(shù)無關(guān)掌呜,而只與單元格個(gè)數(shù)有關(guān)滓玖。代表算法有:STING坪哄,CLIQUE质蕉。
(5)基于模型的聚類(model-based methods)
基于模型的方法給每一個(gè)聚類假定一個(gè)模型,然后去尋找能很好的擬合模型的數(shù)據(jù)集翩肌。模型可能是數(shù)據(jù)點(diǎn)在空間中的密度分布函數(shù)或者其它模暗。這樣的方法通常包含的潛在假設(shè)是:數(shù)據(jù)集是由一系列的潛在概率分布生成的。通常有兩種嘗試思路:統(tǒng)計(jì)學(xué)方法和神經(jīng)網(wǎng)絡(luò)方法念祭。其中兑宇,統(tǒng)計(jì)學(xué)方法有COBWEB算法、GMM(Gaussian Mixture Model)粱坤,神經(jīng)網(wǎng)絡(luò)算法有SOM(Self Organized Maps)算法隶糕。
3.kmeans算法
1)算法只能找到局部最優(yōu)的聚類瓷产,而不是全局最優(yōu)的聚類。而且算法的結(jié)果非常依賴于初始隨機(jī)選擇的聚類中心的位置枚驻。我們需要通過多次運(yùn)行算法濒旦,使用不同的隨機(jī)生成的聚類中心點(diǎn)運(yùn)行算法,然后對(duì)各自結(jié)果C通過evaluate(C)函數(shù)進(jìn)行評(píng)估再登,選擇多次結(jié)果中evaluate(C)值最小的那一個(gè)尔邓。
2)關(guān)于性能問題。原始的算法锉矢,每一次迭代都要計(jì)算每一個(gè)觀測(cè)點(diǎn)與所有聚類中心的距離梯嗽,導(dǎo)致效率不高。有沒有方法能夠提高效率呢沽损?是有的灯节,可以使用k-d tree或者ball tree這種數(shù)據(jù)結(jié)構(gòu)來提高算法的效率。特定條件下绵估,對(duì)于一定區(qū)域內(nèi)的觀測(cè)點(diǎn)显晶,無需遍歷每一個(gè)觀測(cè)點(diǎn),就可以把這個(gè)區(qū)域內(nèi)所有的點(diǎn)放到距離最近的一個(gè)聚類中去壹士。
kmeans算法在圖像分割上也有應(yīng)用磷雇。
4.kNN算法
1)相似度計(jì)算方法:歐式距離、皮爾遜相關(guān)系數(shù)躏救、余弦相似度唯笙、馬氏距離、切比雪夫距離盒使、曼哈頓距離
2)KNN算法:文本分類崩掘、產(chǎn)品推薦、人臉識(shí)別少办、異常行為檢測(cè)
異常行為檢測(cè):建立系統(tǒng)或用戶的正常行為特征輪廓(Profile)苞慢,通過比較當(dāng)前的系統(tǒng)或用戶的行為是否偏離正常的行為特征輪廓來判斷是否發(fā)生了入侵行為。異常行為檢測(cè)也是對(duì)被檢測(cè)的未知行為分類的過程英妓,未知行為與已知的正常行為相似挽放,則該行為是正常行為,否則是入侵行為蔓纠。
5.聚類算法的應(yīng)用
1)協(xié)同過濾算法(推薦系統(tǒng))
2)向量空間模型
使用向量空間模型對(duì)文本進(jìn)行結(jié)構(gòu)化的基本想法是,根據(jù)“貝葉斯假定”,不考慮文本中各個(gè)特征項(xiàng)的位置信息,假定特征項(xiàng)之間相互獨(dú)立,由若干個(gè)字辑畦、詞語(yǔ)特征項(xiàng)組合成一個(gè)文本。文本集中出現(xiàn)的所有特征項(xiàng)共同構(gòu)造出一個(gè)高維的向量空間腿倚。向量空間的每個(gè)維度即為一個(gè)特征項(xiàng),而每個(gè)文本被看作向量空間中的一個(gè)特性向量纯出。
選取特征項(xiàng)-特征權(quán)值計(jì)算(布爾全中、詞語(yǔ)頻率、TF-IDF權(quán)重)