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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

机器学习算法加强——聚类实践

發(fā)布時(shí)間:2025/3/21 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 机器学习算法加强——聚类实践 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?

?

比我有錢的離我最近的朋友,和我的距離

求L特征值、特征向量,求它前k小的特征值所對(duì)應(yīng)的特征向量所形成的u矩陣,對(duì)它做k均值,就得到了譜聚類的最終結(jié)果?

?

?

未說明,首選隨機(jī)游走拉普拉斯矩陣

?以概率化傳,防止進(jìn)入死循環(huán)

from PIL import Image import numpy as np from sklearn.cluster import KMeans import matplotlib import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3Ddef restore_image(cb, cluster, shape):row, col, dummy = shapeimage = np.empty((row, col, 3))index = 0for r in range(row):for c in range(col):image[r, c] = cb[cluster[index]]index += 1return imagedef show_scatter(a):N = 10print('原始數(shù)據(jù):\n', a)density, edges = np.histogramdd(a, bins=[N,N,N], range=[(0,1), (0,1), (0,1)])density /= density.max()x = y = z = np.arange(N)d = np.meshgrid(x, y, z)fig = plt.figure(1, facecolor='w')ax = fig.add_subplot(111, projection='3d')ax.scatter(d[1], d[0], d[2], c='r', s=100*density, marker='o', depthshade=True)ax.set_xlabel(u'紅色分量')ax.set_ylabel(u'綠色分量')ax.set_zlabel(u'藍(lán)色分量')plt.title(u'圖像顏色三維頻數(shù)分布', fontsize=20)plt.figure(2, facecolor='w')den = density[density > 0]den = np.sort(den)[::-1]t = np.arange(len(den))plt.plot(t, den, 'r-', t, den, 'go', lw=2)plt.title(u'圖像顏色頻數(shù)分布', fontsize=18)plt.grid(True)plt.show()if __name__ == '__main__':matplotlib.rcParams['font.sans-serif'] = [u'SimHei']matplotlib.rcParams['axes.unicode_minus'] = Falsenum_vq = 60im = Image.open('flower2.png') # son.bmp(100)/flower2.png(200)/son.png(60)/lena.png(50)image = np.array(im).astype(np.float) / 255image = image[:, :, :3]image_v = image.reshape((-1, 3))model = KMeans(num_vq)show_scatter(image_v)N = image_v.shape[0] # 圖像像素總數(shù)# 選擇足夠多的樣本(如1000個(gè)),計(jì)算聚類中心idx = np.random.randint(0, N, size=1000)image_sample = image_v[idx]model.fit(image_sample)c = model.predict(image_v) # 聚類結(jié)果print('聚類結(jié)果:\n', c)print('聚類中心:\n', model.cluster_centers_)plt.figure(figsize=(15, 8), facecolor='w')plt.subplot(121)plt.axis('off')plt.title(u'原始圖片', fontsize=18)plt.imshow(image)# plt.savefig('1.png')plt.subplot(122)vq_image = restore_image(model.cluster_centers_, c, image.shape)plt.axis('off')plt.title(u'矢量量化后圖片:%d色' % num_vq, fontsize=20)plt.imshow(vq_image)# plt.savefig('2.png')plt.tight_layout(1.2)plt.show()

?

?

?

?

?

?

總結(jié)

以上是生活随笔為你收集整理的机器学习算法加强——聚类实践的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

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