首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >半无监督学习

半无监督学习
EN

Data Science用户
提问于 2022-03-02 13:09:00
回答 1查看 26关注 0票数 1

给定包含n个向量的数据(m×1 )。我想根据距离对数据进行聚类。此外,数据中的每个向量都被标记为某个类别。我使用kmeans算法(在Matlab中)对数据进行聚类。我希望非集群将只包括一个类别的数据。有什么方法可以添加这个约束,或者任何算法可以这样做吗?谢谢!

EN

回答 1

Data Science用户

发布于 2022-03-02 23:30:15

您没有提到是否必须获得特定数量的集群k。假设没有,确保集群中没有一个只包含一个类别的一个简单选项是减少集群k的数量:

  • 首先,使用大型k-means运行k,例如50 (根据数据选择此值)。
  • 检查是否任何群集只包含一个类别。如果是,运行k'-means和k'=k-1
  • 重复,直到满足条件。

同样的思想也可以用于分层聚类。分层聚类的优点是只运行一次算法,然后可以选择在集群层次结构中停止哪个级别。

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/108683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档