聚類分析及其原理介紹(一個(gè)公式也沒有)

聚類分析,顧名思義,就是聚集并分類,它是一種對(duì)數(shù)據(jù)進(jìn)行分類的方法。你輸入一組有很多參數(shù)的數(shù)據(jù),并指定分類組數(shù)。通過聚類分析,就能將其分成你指定的組數(shù)

聚類分析是干什么用的呢,拿B站用戶舉個(gè)例子:
作為一名某站萌新用戶,你有很多個(gè)人特征,從最基本的個(gè)人信息如性別、年齡、地區(qū),到你的觀看特征,如??吹囊曨l種類、關(guān)注的UP主類型、追的番劇……甚至還可以有更細(xì)化的特征:如上站時(shí)間段、滑動(dòng)屏幕速度……
好了,現(xiàn)在有很多很多的用戶信息,你想把這些用戶分類,以推薦用戶感興趣的視頻給他們,該怎么做呢?可以用聚類分析啦!
我們把每個(gè)人的數(shù)據(jù)(性別、年齡、地區(qū)、……)作為高維空間的坐標(biāo)輸入程序,系統(tǒng)會(huì)根據(jù)這些坐標(biāo),通過某些算法進(jìn)行分類。
好了,下個(gè)定義吧:
維基百科:
提一嘴,什么叫“無監(jiān)督學(xué)習(xí)”啊?戰(zhàn)術(shù)后仰
那就得提一句有監(jiān)督學(xué)習(xí)是什么了 好像跑題了
機(jī)器學(xué)習(xí)分為有監(jiān)督學(xué)習(xí)、無監(jiān)督學(xué)習(xí)、半監(jiān)督學(xué)習(xí)。
有監(jiān)督學(xué)習(xí)呢,顧名思義就是有人監(jiān)督。就是有100個(gè)水果,你拿出一半來,人工標(biāo)記上它們是否是蘋果,然后你再把50個(gè)是否是蘋果的結(jié)果告訴電腦,這就是所謂訓(xùn)練集,也就是用來給程序構(gòu)建數(shù)學(xué)模型的集合。
另一半呢,用來做測(cè)試,也就是不標(biāo)記它們是不是蘋果,直接讓電腦用剛才生成的模型去判斷,這就是測(cè)試集。用于評(píng)估程序好壞。

而無監(jiān)督學(xué)習(xí)呢,顧名思義就是無人監(jiān)督。直接把數(shù)據(jù)丟進(jìn)程序,讓程序根據(jù)寫好的分類方法去分類。這樣的分類結(jié)果,可能和人的常理不同。這個(gè)時(shí)候就需要人發(fā)揮口胡思維,去解釋機(jī)器的分類結(jié)果了。

好了扯回來,聚類分析。聚類分析就是無監(jiān)督學(xué)習(xí),因此你需要去口胡分類結(jié)果。
常用的研究方法是依照A、B、C三個(gè)特征分類,但去看D特征在不同分類組的結(jié)果。
接下來簡(jiǎn)單介紹一下聚類分析的算法。
我最近使用的是分層分類法,因?yàn)樗雌饋砗苡羞壿嫞?span style="text-decoration: line-through;">而且也比較簡(jiǎn)單好講。分層聚類通過創(chuàng)建聚類樹或樹狀圖來對(duì)數(shù)據(jù)進(jìn)行分組。
簡(jiǎn)單來說分層聚類就是將數(shù)據(jù)不斷從根部分叉成二叉樹,每個(gè)二叉樹的子節(jié)點(diǎn)由分叉成二叉樹……直到最后每個(gè)數(shù)據(jù)都自成一類。最后,同一個(gè)根節(jié)點(diǎn)上的數(shù)據(jù)就歸為一類,而同層的、長(zhǎng)在另一個(gè)根的數(shù)據(jù),就是另一類。


當(dāng)然,如果總是分叉,最后的分類結(jié)果會(huì)很復(fù)雜,我們還要對(duì)二叉樹進(jìn)行合理的剪枝。剪枝依據(jù)是讓剪枝造成的損失最小化。
具體的數(shù)學(xué)算法需要一些信息學(xué)知識(shí),都可以寫好幾篇專欄了,這里就先打住。
聚類分析常用軟件是spss,matlab也可以實(shí)現(xiàn),之后我會(huì)用matlab做一個(gè)可視化。
參考資料:
維基百科
matlab說明文檔