当前位置: 首页 > news >正文

网站开发工具推荐百度合伙人官方网站

网站开发工具推荐,百度合伙人官方网站,怎么经营团购网站,关于网站建设公司大全目录 1.算法流程简介 2.1.K-mean算法核心代码 2.2.K-mean算法效果展示 3.1.肘部法算法核心代码 3.2.肘部法算法效果展示 1.算法流程简介 #k-means聚类方法 """ k-means聚类算法流程: 1.K-mean均值聚类的方法就是先随机选择k个对象作为初始聚类中心. 2.这…

目录

1.算法流程简介

2.1.K-mean算法核心代码

2.2.K-mean算法效果展示

3.1.肘部法算法核心代码 

3.2.肘部法算法效果展示 


1.算法流程简介

#k-means聚类方法
"""
k-means聚类算法流程:
1.K-mean均值聚类的方法就是先随机选择k个对象作为初始聚类中心.
2.这个时候你去计算剩余的对象于哪一个聚类中心的距离是最小的,优先分配给最近的聚类中心.
3.分配后,原先的聚类中心和分配给它们的对象就又会被看作一个新聚类.
4.每次进行分配之后,聚类中心又会被重新计算一次
5.直到满足某些终止条件为止:1.没有聚类中心被分配 2.达到了局部的聚类均方误差最小
"""

2.1.K-mean算法核心代码

#%%
#1.当k已知且k=4时,我们执行k-means算法
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
plt.rcParams['font.family'] = ['sans-serif']
plt.rcParams['font.sans-serif'] = ['SimHei'] #散点图标签可以显示中文
#人为大致创建一个比较明显的聚类样本
c1x=np.random.uniform(0.5,1.5,(1,200))
c1y=np.random.uniform(0.5,1.5,(1,200))
c2x=np.random.uniform(3.5,4.5,(1,200))
c2y=np.random.uniform(3.5,4.5,(1,200))
c3x=np.random.uniform(2.5,3.5,(1,200))
c3y=np.random.uniform(2.5,3.5,(1,200))
c4x=np.random.uniform(1.5,2.5,(1,200))
c4y=np.random.uniform(1.5,2.5,(1,200))
x=np.hstack((c1x,c2x,c3x,c4x))
y=np.hstack((c2y,c2y,c3y,c4y))
X=np.vstack((x,y)).T
#n_cluster设置成4(可以修改)
kemans=KMeans(n_clusters=4)
result=kemans.fit_predict(X) #训练及预测
for i in range(len(result)):print("第{}个点:({})的分类结果为:{}".format(i+1,X[i],result[i]))
x=[i[0] for i in X]
y=[i[1] for i in X]
plt.scatter(x,y,c=result,marker='*',cmap='rainbow',s=9)
plt.xlabel('x')
plt.ylabel('y')
plt.title("K-means聚类效果图",color='black')
plt.savefig('C:\\Users\\Zeng Zhong Yan\\Desktop\\K-means聚类效果图.png', dpi=500, bbox_inches='tight')
plt.show()

2.2.K-mean算法效果展示

3.1.肘部法算法核心代码 

#%%
#2.如果k未知的情况下,利用肘部法来求出最优的k
"""
肘部法也非常简答,就是假设k=1-9,分别求出k=1-9之间的平均离差.
绘图观察最陡峭/斜率变化最大的点就是最为合适的k值
"""import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
from scipy.spatial.distance import cdist
plt.rcParams['font.family'] = ['sans-serif']
plt.rcParams['font.sans-serif'] = ['SimHei'] #使折线图显示中文K=range(1,10)
meanDispersions=[]
for k in K:#假设n_clusters=k,进行聚类后kemans=KMeans(n_clusters=k)kemans.fit(X)#计算平均离差m_Disp=sum(np.min(cdist(X,kemans.cluster_centers_,'euclidean'),axis=1))/X.shape[0]meanDispersions.append(m_Disp)
result=[]
for i in range(len(meanDispersions)-1):print("从第{}个点到第{}个点的斜率绝对值为:{}".format(i+1,i+2,abs(meanDispersions[i+1]-meanDispersions[i])))result.append(abs(meanDispersions[i+1]-meanDispersions[i]))
#求解斜率最大值
result_max=max(result)
print("最大的斜率的绝对值为{}".format(result_max))
print("综上所述最为合适的k值为{}".format(result.index(result_max)+2))plt.plot(K,meanDispersions,'bx-',label='meanDispersions',color='red')
plt.xlabel('k')
plt.ylabel('平均离差')
plt.title('肘部法选择K值示意图')
plt.legend()
plt.savefig('C:\\Users\\Zeng Zhong Yan\\Desktop\\肘部法求K值.png', dpi=500, bbox_inches='tight')
plt.show()

3.2.肘部法算法效果展示 

 

http://www.mnyf.cn/news/14835.html

相关文章:

  • 响应式手机网站建设怎样自己开发一款软件
  • 在家里怎样做网站网站为什么要做seo
  • 做视频网站犯法吗网站专业术语中seo意思是
  • wordpress友情链接提交seo工资服务
  • 元氏县城有做网站广告的吗性价比高seo的排名优化
  • 网站description网上营销模式
  • 做网站网关备案b站推广网站2024mmm
  • 低成本网络营销方式seo推广平台服务
  • 如何建设合法的网站广告公司招聘
  • 做视频网站用什么语言网络推广方法有哪些
  • 做的物流网站有哪些seo诊断分析报告
  • 厦门网站建设westcy短视频培训
  • 做网站委托书备案域名查询
  • 网站用COM通信协议怎么做测试手机百度ai入口
  • 上海专业网站建设多少钱长沙网站开发制作
  • 组织建设小标题优化服务是什么意思
  • 做日结活的网站全球搜索
  • wordpress is search谷歌广告优化
  • 网站制作软件教程seo关键词优化软件
  • php开源网站 网上商城东莞seo排名公司
  • 网站建设对企业经营精准客户资源购买
  • 付公司网站费用怎么做分录渠道策略的四种方式
  • 网站建设单位不给数据库网站源码
  • 中国建筑2022校园招聘seo体系
  • 常州模板网站建设价格友情链接地址
  • 有没有高质量的网站都懂的北京seo公司华网白帽
  • 企业网站网页设计的步骤网站优化建议怎么写
  • 做网站和网页区别廊坊网络推广公司
  • 免费创建个人商城网站推广网络营销案例
  • 天津机械网站建设模板搜索引擎营销的英文简称