日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

ML之HierarchicalClustering:自定义HierarchicalClustering层次聚类算法

發(fā)布時(shí)間:2025/3/21 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ML之HierarchicalClustering:自定义HierarchicalClustering层次聚类算法 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

ML之HierarchicalClustering:自定義HierarchicalClustering層次聚類(lèi)算法

?

?

目錄

輸出結(jié)果

實(shí)現(xiàn)代碼


?

?

輸出結(jié)果

更新……

?

實(shí)現(xiàn)代碼

# -*- encoding=utf-8 -*-from numpy import *class cluster_node: #定義cluster_node類(lèi),類(lèi)似Java中的構(gòu)造函數(shù)def __init__(self,vec,left=None,right=None,distance=0.0,id=None,count=1):self.left=left self.right=rightself.vec=vecself.id=idself.distance=distanceself.count=count #only used for weighted average def L2dist(v1,v2): return sqrt(sum((v1-v2)**2))def L1dist(v1,v2): return sum(abs(v1-v2))def hcluster(features,distance=L2dist): #cluster the rows of the "features" matrixdistances={} currentclustid=-1 # clusters are initially just the individual rowsclust=[cluster_node(array(features[i]),id=i) for i in range(len(features))]while len(clust)>1: lowestpair=(0,1) closest=distance(clust[0].vec,clust[1].vec)for i in range(len(clust)):for j in range(i+1,len(clust)):# distances is the cache of distance calculationsif (clust[i].id,clust[j].id) not in distances: distances[(clust[i].id,clust[j].id)]=distance(clust[i].vec,clust[j].vec)d=distances[(clust[i].id,clust[j].id)] if d<closest: closest=dlowestpair=(i,j) mergevec=[(clust[lowestpair[0]].vec[i]+clust[lowestpair[1]].vec[i])/2.0 \for i in range(len(clust[0].vec))]newcluster=cluster_node(array(mergevec),left=clust[lowestpair[0]],right=clust[lowestpair[1]],distance=closest,id=currentclustid)currentclustid-=1 del clust[lowestpair[1]]del clust[lowestpair[0]]clust.append(newcluster)return clust[0]def extract_clusters(clust,dist): #(clust上邊的樹(shù)形結(jié)構(gòu),dist閾值)# extract list of sub-tree clusters from hcluster tree with distance<distclusters = {}if clust.distance<dist:# we have found a cluster subtreereturn [clust] else:# check the right and left branchescl = [] cr = []if clust.left!=None: cl = extract_clusters(clust.left,dist=dist)if clust.right!=None: cr = extract_clusters(clust.right,dist=dist)return cl+cr def get_cluster_elements(clust): #用于取出算好聚類(lèi)的元素# return ids for elements in a cluster sub-treeif clust.id>=0: # positive id means that this is a leafreturn [clust.id]else:# check the right and left branchescl = []cr = []if clust.left!=None: cl = get_cluster_elements(clust.left)if clust.right!=None: cr = get_cluster_elements(clust.right)return cl+crdef printclust(clust,labels=None,n=0): #將值打印出來(lái)# indent to make a hierarchy layoutfor i in range(n): print (' '),if clust.id<0: # negative id means that this is branchprint ('-')else: # positive id means that this is an endpointif labels==None: print (clust.id)else: print (labels[clust.id])if clust.left!=None: printclust(clust.left,labels=labels,n=n+1)if clust.right!=None: printclust(clust.right,labels=labels,n=n+1)def getheight(clust): #樹(shù)的高度,遞歸方法# Is this an endpoint? Then the height is just 1if clust.left==None and clust.right==None: return 1# Otherwise the height is the same of the heights of# each branchreturn getheight(clust.left)+getheight(clust.right)def getdepth(clust): #樹(shù)的深度,遞歸方法if clust.left==None and clust.right==None: return 0return max(getdepth(clust.left),getdepth(clust.right))+clust.distance

?

相關(guān)文章
ML之H-clustering:自定義HierarchicalClustering層次聚類(lèi)算法

總結(jié)

以上是生活随笔為你收集整理的ML之HierarchicalClustering:自定义HierarchicalClustering层次聚类算法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 韩国无码av片在线观看网站 | 国产精品www | たちの熟人妻av一区二区 | 精品蜜桃一区二区三区 | 日韩成人免费av | 白嫩初高中害羞小美女 | 久久久免费观看视频 | 不卡av免费在线观看 | 午夜综合 | 国产激情视频在线 | 日韩中文字幕免费在线观看 | 91在线精品入口 | 91娇羞白丝网站 | 午夜福利视频合集1000 | 麻豆视频免费在线 | 亚洲AV无码精品国产 | 精品一区精品二区 | 色中色在线视频 | av在线播放免费 | а√天堂中文在线资源8 | 岛国二区三区 | 在线观看国产成人 | 成人免费va视频 | 久久亚洲a v | 中国国语农村大片 | 在线黄色免费网站 | 欧美成年人在线观看 | 深喉口爆一区二区三区 | 精品无码久久久久久久久成人 | 精品一区二区毛片 | 熟妇一区二区三区 | 三年大全国语中文版免费播放 | 国产a视频免费观看 | 国产在线欧美在线 | 在线免费观看福利 | 日本免费黄色小视频 | 无遮挡国产 | 成人短视频在线免费观看 | 亚洲五十路 | 欧美黑人一级爽快片淫片高清 | 国产精品久久伊人 | 国产精品卡一卡二 | 99视频网址 | 中国女人一级片 | 亚洲乱熟女一区二区三区小说 | 正在播放一区 | 一区免费视频 | 免费观看av的网站 | 四虎5151久久欧美毛片 | 五月婷婷基地 | 毛片高清 | 国产一区二区三区精品愉拍 | 深夜天堂| 二区欧美 | 98久久 | 白丝开裆喷水 | 国产激情视频 | 午夜看片福利 | 欧美福利在线视频 | 丁香视频在线观看 | 久久综合伊人77777麻豆最新章节 | 日韩sese | 精品国产一区二区三区久久久 | 欧美区国产区 | 五月的婷婷 | 日产精品一区 | 欧美自拍亚洲 | 成人手机在线视频 | 操久久久 | 成人在线高清视频 | 中文字幕第80页 | 欧美日韩精品一区二区在线播放 | 欧美一级二级视频 | 在线观看一区二区视频 | 国产高清一区二区三区 | 久操社区| 亚洲a视频在线 | 野外(巨肉高h) | 国产探花在线精品一区二区 | 黄a在线 | 国产不卡av在线 | 亚洲交性网 | 国产国产乱老熟女视频网站97 | 欧美久久久久久久久久久久久久 | 国产一区亚洲 | 国产吞精囗交久久久 | 日韩人妻无码精品久久久不卡 | 4hu在线观看| 永久免费视频网站 | 91免费视频网址 | 国产精品ⅴa有声小说 | 免费视频国产 | 日韩午夜视频在线观看 | 国产伦精品一区二区三区88av | 亚洲影视在线观看 | 日本熟妇一区二区 | 国产女人和拘做受视频免费 | 操模特 | 成年人小视频在线观看 |