matlab绝对均值,在K-Means算法中使用绝对皮尔逊相关作为距离(MATLAB)
這是為什么你不應(yīng)該將k-means與其他距離函數(shù)一起使用的一個(gè)很好的例子.
k-means不會(huì)使距離最小化.它最小化了平方一維偏差(SSQ)的總和.
這在數(shù)學(xué)上等于歐氏距離的平方,所以它確實(shí)最小化歐幾里德距離,作為數(shù)學(xué)副作用.它不會(huì)最小化任意其他距離,這不等于方差最小化.
在你的情況下,很高興看到它失敗的原因;我必須記住這是一個(gè)演示案例.
您可能知道,k-means(Lloyds,即)包含兩個(gè)步驟:通過最小平方偏差分配,然后重新計(jì)算均值.
現(xiàn)在問題是,重新計(jì)算均值與絕對(duì)皮爾森相關(guān)性不一致.
讓我們?nèi)蓚€(gè)向量,它們是-1相關(guān)的:
+1 +2 +3 +4 +5
-1 -2 -3 -4 -5
并計(jì)算平均值:
0 0 0 0 0
繁榮.它們的平均值并不完全相關(guān).事實(shí)上,Pearson相關(guān)性甚至不再適用于此向量,因?yàn)樗姆讲顬榱恪?/p>
為什么會(huì)這樣?因?yàn)槟惆裬-means誤解為基于距離.它實(shí)際上是基于算術(shù)平均值的.算術(shù)平均值是最小二乘(!!)估計(jì)量 – 它最小化偏差平方和.這就是為什么平方歐幾里德距離起作用的原因:它優(yōu)化了與重新計(jì)算均值相同的數(shù)量.在兩個(gè)步驟中優(yōu)化相同的目標(biāo)使得算法收斂.
而不是使用k-means,考慮使用k-medoids aka PAM,它可以在任意距離上工作.或許多其他聚類算法之一,包括DBSCAN和OPTICS.
總結(jié)
以上是生活随笔為你收集整理的matlab绝对均值,在K-Means算法中使用绝对皮尔逊相关作为距离(MATLAB)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BarTender批量打印序列号SN
- 下一篇: matlab 提取最小值,MATLAB中