久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

R語言Kmeans聚類,、PAM、DBSCAN,、AGNES,、FDP、PSO粒子群聚類分析iris數(shù)據(jù)結果可視化比較

 拓端數(shù)據(jù) 2023-03-28 發(fā)布于浙江

全文鏈接:http:///?p=32007

本文以iris數(shù)據(jù)和模擬數(shù)據(jù)為例,,幫助客戶了比較R語言Kmeans聚類算法,、PAM聚類算法、 DBSCAN聚類算法,、 AGNES聚類算法,、 FDP聚類算法、 PSO粒子群聚類算法在 iris數(shù)據(jù)結果可視化分析中的優(yōu)缺點點擊文末“閱讀原文”獲取完整代碼數(shù)據(jù),。

相關視頻

結果:聚類算法的聚類結果在直觀上無明顯差異,,但在應用上有不同的側重點。在 研究中,,不能僅僅依靠傳統(tǒng)的統(tǒng)計方法來進行聚類分析,,而應該采用多種數(shù)據(jù)挖掘手段相結合,綜合利用各種方法的優(yōu)勢,,分析不同的數(shù)據(jù)集,,從中找到適合自己研究需要的聚類分析方法。

查看數(shù)據(jù)

head(y)

#
#  y 1   y 2   y 3   y 4   y 5   y 6   y 7
## [1,] 2.386422 1.528006 2.013216 1.522790 2.530115 2.127977 2.654109
## [2,] 1.740713 2.013977 2.322683 1.956941 1.799946 2.298104 2.146921
## [3,] 2.072196 2.129213 2.087725 2.146289 2.213800 2.459264 2.319424
## [4,] 2.418096 1.852121 1.668246 2.418176 2.513029 2.048056 1.996828
## [5,] 1.485875 2.072700 1.921772 1.645422 1.655471 1.840675 2.368683
## [6,] 2.111412 1.868223 2.022289 2.310057 1.716986 2.031257 2.069675
##  y 8   y 9  y 10
## [1,] 1.964454 2.050723 1.755493
## [2,] 2.255674 1.836552 2.432906
## [3,] 1.859537 1.527330 2.227598
## [4,] 1.460083 2.033105 1.743962
## [5,] 2.364364 2.123679 1.741008
## [6,] 2.211410 2.073793 1.424886

Kmeans算法聚類

k均值聚類算法(k-means clustering algorithm)是一種迭代求解的聚類分析算法,,其步驟是,,預將數(shù)據(jù)分為K組,,則隨機選取K個對象作為初始的聚類中心,然后計算每個對象與各個種子聚類中心之間的距離,,把每個對象分配給距離它最近的聚類中心,。聚類數(shù)為2,將數(shù)據(jù)聚成2個類別:

查看模型結果

  
summary(cl)

#
#  Length Class  Mode  
## cluster   2000   -none- numeric
## centers  20   -none- numeric
## totss  1   -none- numeric
## withinss     2   -none- numeric
## tot.withinss    1   -none- numeric
## betweenss    1   -none- numeric
## size   2   -none- numeric
## iter   1   -none- numeric
## ifault    1   -none- numeric


pch1=rep("1",1000)#類標號
pch2=rep("2",1000)

PAM算法聚類

pam聚類算法 PAM (Partitioning Around Medoids) 聚類算法屬于基于質心的聚類算法,它是K-Medoids算法的一種變體,。


點擊標題查閱往期內容

R語言APRIORI關聯(lián)規(guī)則、K-MEANS均值聚類分析中藥專利復方治療用藥規(guī)律網(wǎng)絡可視化

左右滑動查看更多

01

02

03

04

DBSCAN算法聚類

DBSCAN(Density-Based Spatial Clustering of Applications with Noise,具有噪聲的基于密度的聚類方法)是一種很典型的密度聚類算法,。

ds<-dbscan(y

其中黑色的2代表分類錯誤的第2個類別,,因此可以看到該數(shù)據(jù)集中dbscan的分類結果最好。

iris數(shù)據(jù)

Iris數(shù)據(jù)集是常用的分類實驗數(shù)據(jù)集,,由Fisher, 1936收集整理,。Iris也稱鳶尾花卉數(shù)據(jù)集,,是一類多重變量分析的數(shù)據(jù)集,。數(shù)據(jù)集包含150個數(shù)據(jù)樣本,分為3類,,每類50個數(shù)據(jù),,每個數(shù)據(jù)包含4個屬性??赏ㄟ^花萼長度,,花萼寬度,花瓣長度,,花瓣寬度4個屬性預測鳶尾花卉屬于(Setosa,,Versicolour,Virginica)三個種類中的哪一類,。

#查看數(shù)據(jù)  

head(y)

#
#   Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1    5.1   3.5    1.4   0.2  setosa
## 2    4.9   3.0    1.4   0.2  setosa
## 3    4.7   3.2    1.3   0.2  setosa
## 4    4.6   3.1    1.5   0.2  setosa
## 5    5.0   3.6    1.4   0.2  setosa
## 6    5.4   3.9    1.7   0.4  setosa

Kmeans算法聚類

聚類數(shù)為3,,將數(shù)據(jù)聚成3個類別

plot(y[,1:2],col= (cl$cluster

DBSCAN算法聚類

ds<-dbscan(y[,1:4]

結果比較圖

plot(y,col=cl$cluste

AGNES算法

“算法是凝聚的層次聚類方法。AGNES最初將每個對象作為一個簇,,然后這些簇根據(jù)某些準則被一步一步地合并,。例如,在簇A中的一個對象和簇B中的一個對象之間的距離是所有屬于不同簇的對象之間最小的,,AB可能被合并,。

agn1 <- agnes(votes
pres <- apcluster(neg

#
# create two Gaussian clouds
 ## APResult object
##
## Number of samples  =  150
## Number of iterations  =  138
## Input preference   =  -31.0249
## Sum of similarities   =  -45.0528
## Sum of preferences    =  -124.0996
## Net similarity  =  -169.1524
## Number of clusters    =  4
##
## Exemplars:
##    8 64 81 103
## Clusters:
##    Cluster 1, exemplar 8:
##    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
##    27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
##    50
##    Cluster 2, exemplar 64:
##    51 52 53 55 56 57 59 62 64 66 67 69 71 72 73 74 75 76 77 78 79 84 85

plot(apres, x)

PSO 粒子群聚類算法

“PSO是粒子群優(yōu)化算法(——Particle Swarm Optimization)的英文縮寫,是一種基于種群的隨機優(yōu)化技術,由Eberhart和Kennedy于1995年提出。粒子群算法模仿昆蟲,、獸群,、鳥群和魚群等的群集行為,這些群體按照一種合作的方式尋找食物,群體中的每個成員通過學習它自身的經(jīng)驗和其他成員的經(jīng)驗來不斷改變其搜索模式。

myPSO <- function(x, k,  w) {
#創(chuàng)建隨機質心


centroid_acak <- sample(c(1:length(x[,1])), k, replace = FALSE)
centroid <- x[centroid_acak,1:length(x)]

#計算歐幾里得距離
hitung_jarak <- function(x){
sqrt(
for(i in 1:length(x)) {
euclidean <- ((x[i] - centro

FDP 聚類算法

針對密度峰值算法 FDP在找到聚類中心后,,分配其余數(shù)據(jù)時存在的漏洞,,提出了基于密度聚類算法 DBSCAN的改進方法,。具體做法是求出聚類中心后利用DBSCAN 算法將其余數(shù)據(jù)分配到正確的類別中,保證了在分配其余數(shù)據(jù)時考慮到數(shù)據(jù)和數(shù)據(jù)之間的關聯(lián)性,而不是直接簡單的將所有數(shù)據(jù)分配到離得最近的那個中心所在的類別中,。所提算法和原始FDP算法相比,,可處理非凸數(shù)據(jù)、能得到更好的聚類結果,。

fdp<-function(X,G,p=rep(FALSE){
if(is.null(TstX)==TRUE) TstX<-X
n<-nrow(TstX)
belong<-matrix(

plot(iris,col=cl

    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多