3、亲和力传播亲和力传播包括找到一组最能概括数据的范例。
我们设计了一种名为“亲和传播”的方法,它作为两对数据点之间相似度的输入度量。在数据点之间交换实值消息,直到一组高质量的范例和相应的群集逐渐出现
—源自:《通过在数据点之间传递消息》2007。
它是通过 affinitypropagation 类实现的,要调整的主要配置是将“ 阻尼 ”设置为0.5到1,甚至可能是“首选项”。
下面列出了完整的示例。
# 亲和力传播聚类from numpy import uniquefrom numpy import wherefrom sklearn.datasets import make_classificationfrom sklearn.cluster import affinitypropagationfrom matplotlib import pyplot# 定义数据集x, _ = make_classification(n_samples=1000, n_features=2, n_informative=2, n_redundant=0, n_clusters_per_class=1, random_state=4)# 定义模型model = affinitypropagation(damping=0.9)# 匹配模型model.fit(x)# 为每个示例分配一个集群yhat = model.predict(x)# 检索唯一群集clusters = unique(yhat)# 为每个群集的样本创建散点图for cluster in clusters: # 获取此群集的示例的行索引 row_ix = where(yhat == cluster) # 创建这些样本的散布 pyplot.scatter(x[row_ix, 0], x[row_ix, 1])# 绘制散点图pyplot.show()运行该示例符合训练数据集上的模型,并预测数据集中每个示例的群集。然后创建一个散点图,并由其指定的群集着色。在这种情况下,我无法取得良好的结果。
图:数据集的散点图,具有使用亲和力传播识别的聚类
4、聚合聚类聚合聚类涉及合并示例,直到达到所需的群集数量为止。它是层次聚类方法的更广泛类的一部分,通过 agglomerationclustering 类实现的,主要配置是“ n _ clusters ”集,这是对数据中的群集数量的估计,例如2。下面列出了完整的示例。
# 聚合聚类from numpy import uniquefrom numpy import wherefrom sklearn.datasets import make_classificationfrom sklearn.cluster import agglomerativeclusteringfrom matplotlib import pyplot# 定义数据集x, _ = make_classification(n_samples=1000, n_features=2, n_informative=2, n_redundant=0, n_clusters_per_class=1, random_state=4)# 定义模型model = agglomerativeclustering(n_clusters=2)# 模型拟合与聚类预测yhat = model.fit_predict(x)# 检索唯一群集clusters = unique(yhat)# 为每个群集的样本创建散点图for cluster in clusters: # 获取此群集的示例的行索引 row_ix = where(yhat == cluster) # 创建这些样本的散布 pyplot.scatter(x[row_ix, 0], x[row_ix, 1])# 绘制散点图pyplot.show()运行该示例符合训练数据集上的模型,并预测数据集中每个示例的群集。然后创建一个散点图,并由其指定的群集着色。在这种情况下,可以找到一个合理的分组。
图:使用聚集聚类识别出具有聚类的数据集的散点图
5、birchbirch 聚类( birch 是平衡迭代减少的缩写,聚类使用层次结构)包括构造一个树状结构,从中提取聚类质心。
birch 递增地和动态地群集传入的多维度量数据点,以尝试利用可用资源(即可用内存和时间约束)产生最佳质量的聚类。
—源自:《 birch :1996年大型数据库的高效数据聚类方法》
它是通过 birch 类实现的,主要配置是“ threshold ”和“ n _ clusters ”超参数,后者提供了群集数量的估计。下面列出了完整的示例。
# birch聚类from numpy import uniquefrom numpy import wherefrom sklearn.datasets import make_classificationfrom sklearn.cluster import birchfrom matplotlib import pyplot# 定义数据集x, _ = make_classification(n_samples=1000, n_features=2, n_informative=2, n_redundant=0, n_clusters_per_class=1, random_state=4)# 定义模型model = birch(threshold=0.01, n_clusters=2)# 适配模型model.fit(x)# 为每个示例分配一个集群yhat = model.predict(x)# 检索唯一群集clusters = unique(yhat)# 为每个群集的样本创建散点图for cluster in clusters: # 获取此群集的示例的行索引 row_ix = where(yhat == cluster) # 创建这些样本的散布 pyplot.scatter(x[row_ix, 0], x[row_ix, 1])# 绘制散点图pyplot.show()运行该示例符合训练数据集上的模型,并预测数据集中每个示例的群集。然后创建一个散点图,并由其指定的群集着色。在这种情况下,可以找到一个很好的分组。
图:使用birch聚类确定具有聚类的数据集的散点图
ORAN与传统RAN 成本怎么比较?
人工智能的跨越发展怎样实现
浅谈PCB制作工艺过程
超高亮LED迷你台灯电路
谨慎5G骗局新花样,中国铁塔辟谣集资
10种聚类算法和Python代码2
大数据产业增量蓝海市场正在逐步打开,展现出巨大潜力
微带线传输阻抗匹配实例分析
Parrot推出新款产品ANAFI:史上最安静无人机发布,售价为699 美元
苹果新iPhone可能命名为iPhone Pro或iPhone 11 Pro
SIGMA新款4,600万画素DSC采用Xilinx FPGA
想要体验HDR必须要买4K电视吗
苹果获NFC替代技术及位置服务专利
外媒:高通研发骁龙 8cx 后续桌面处理器
罗德与施瓦茨助力上海医疗器械检验院成功举办第二届可靠性论坛
我们能不能率先进入AI时代
ssi框架学习总结
加州为无人驾驶汽车发放执照 部分要求条款曝光
已经降临的8月行业旺季,是一个涨潮期的转机还是平缓期的延续呢?
江森自控:正式退出汽车零部件行业