首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于文本数据的异构聚类

基于文本数据的异构聚类
EN

Data Science用户
提问于 2020-04-04 09:34:34
回答 1查看 176关注 0票数 1

我有一个由多个用户评级组成的数据集。每一项评级看上去都类似于:

代码语言:javascript
复制
| Taste | Flavour | Look | Enjoyed | ..... | Tag    |
|-------|---------|------|---------|-------|--------|
| 4     | 2       | 2    | 3       | ..... | Banana |
| 5     | 4       | 1    | 2       | ..... | Apple  |
| 3     | 1       | 4    | 1       | ..... | Pasta  |
| ....  | ....    | .... | ....    | ....  | ....   |

列包含每一行的级别。任务是对行进行聚类,例如,我想找到类似于:

代码语言:javascript
复制
cluster 1: Banana, Apple
cluster 2: Pasta, Spagetty
....

我们使用具有编辑距离度量的HDBSCAN来查找集群,它或多或少地工作。然而,问题是功能太少(总共12个),不可能有“好的”集群。因此,我想以某种方式解释集群中“标记”中的信息。其思想是计算每个标记的嵌入,并将它们作为特性使用。

我不确定的是如何包含这些新特性?我希望聚类主要由原始特性决定。嵌入的维数远大于原始特征的维数,并且这些特征的度量是不同的(例如余弦相似性)。因此,我想回答两个问题:

  1. 将这些异构特性组合在一起的合适方法是什么?
  2. 如何正确选择“标签”功能的权重?理想情况下,我不想仅仅假设
EN

回答 1

Data Science用户

回答已采纳

发布于 2020-04-04 15:15:58

TL;

博士

在HDBSCAN中传递数据两次。

  1. 基于tag的聚类使用词嵌入和余弦距离。
  2. 使用现有的方法(使用其余的12个特性)对步骤1中的集群进行子集群。

解释

我建议您分两步完成,而不对tag特性给予权重,因为所使用的距离度量是不同的。对于字嵌入,您需要使用嵌入之间的余弦距离。至于其他12个特性,您目前使用的是另一个距离(欧几里得,我假设)。

第一步应该根据tag的语义特征对数据进行聚类。这应该把水果,肉类,蔬菜,意大利面.

然后,第二步可以将数据与其他12个特性进行子集群。但是,考虑到您的例子

第一组:香蕉,苹果第二组:意大利面,意大利面

我不明白为什么这第二步是必要的。您可以不用第二次聚类,只需使用这12个特性来排序数据点,以便进行练习。例如,在第一步中聚集在一起的“水果”是人们“最喜欢”的。

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

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

复制
相关文章

相似问题

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