超越kmeans:聚类算法概述
kmeans屬于聚類算法當(dāng)中最早也是最經(jīng)典一個(gè)算法,但是我們可以發(fā)現(xiàn)kmeans算法屬于剛性聚類,例如,一則談?wù)撜螌ι镄畔⒓夹g(shù)影響的新聞報(bào)道,既可以歸類于政治類別,也可以歸類于生物技術(shù)類別,但不能同時(shí)歸于這兩個(gè)類別。既然我們需要優(yōu)化相關(guān)文章的這個(gè)特性,那就需要允許重疊或模糊信息。我們也許還需要對數(shù)據(jù)點(diǎn)分布建模,這些都是超出了kmeans設(shè)計(jì)的初衷。
不同類型的聚類問題
排他性聚類
有重疊聚類
層次聚類
概率聚類
下面逐一介紹
1. 排他性聚類
在排他性聚類中,一個(gè)物品屬于一個(gè)類別。kmeans實(shí)現(xiàn)就是這種排他性的聚類,因此聚類問題需要這個(gè)約束,kmeans通常可以解決。
2. 有重疊聚類
如果我們想做是非排他性聚類,即可以把哈利波特歸入小說而且也可以歸入年輕人類別的玄幻小說。有重疊聚類算法,如模糊kmeans算法就很容易實(shí)現(xiàn)這點(diǎn)。
3. 層次聚類
現(xiàn)在假設(shè)有兩個(gè)簇分別代表不同類型書籍,其中一個(gè)是玄幻,另一個(gè)是太空旅行。但是這兩個(gè)簇都可以看作是小說的子簇,因此通過合并這兩個(gè)簇以及一些相似的簇可以構(gòu)建一個(gè)小說簇。
4. 概率模型
一個(gè)概率模型通常是一個(gè)n維平面內(nèi)一組點(diǎn)的分布或形狀特征。有很多適合不同數(shù)據(jù)模式的概率模型。概率聚類算法設(shè)法為數(shù)據(jù)集擬合出一個(gè)概率模型,通過調(diào)整模型的參數(shù)來適應(yīng)數(shù)據(jù)集。因?yàn)樯儆型耆珳?zhǔn)確擬合,所以這些算法通常給出了一個(gè)百分比或者概率值來表示概率模型對簇的擬合程度。
不同聚類算法使用不同的策略。可以將其大致分為如下幾類:
確定的中心個(gè)數(shù)
自底向上的方法(通過組合將點(diǎn)合并為簇)
自頂向下的方法(拆分大簇成小簇方法)
雖然這些算法看起來簡單,但是要找到數(shù)據(jù)點(diǎn)集合最佳劃分并不容易。此外大部分此類算法都不能直接轉(zhuǎn)化為mapreduce的形式,因此mahout中并沒有包含這些算法。
一個(gè)自頂向下的聚類例子就是譜聚類,在譜聚類(譜聚類博文)中我們尋找一條分界線或平面將數(shù)據(jù)劃分為兩個(gè)集合,使得兩個(gè)集合邊界盡可能大。
自頂向下和自底向上方法優(yōu)缺點(diǎn):
這兩個(gè)方法誘人之處在于不需要用戶輸入簇的數(shù)目,這意味著對于數(shù)據(jù)點(diǎn)分布未知的數(shù)據(jù)集,這兩類算法僅僅只需要根據(jù)相似性度量給出聚類結(jié)果。在很多應(yīng)用中都是行之有效的。然后這些方法很多在研究當(dāng)中,而且這些算法無法以mapreduce框架執(zhí)行。
轉(zhuǎn)載于:https://www.cnblogs.com/huruzun/p/5423890.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的超越kmeans:聚类算法概述的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [WPF]xml序列化以及反序列化数据
- 下一篇: CentOS 7.0 上安装和配置 VN