问题标签 [hdbscan]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何使用 GloVe 生成向量矩阵?
我正在使用HDBSCAN算法从我拥有的文档中创建集群。但是要从单词中创建一个向量矩阵,我正在使用tf-idf算法并想使用GloVe。我搜索了帖子,但不明白如何使用这个算法。我还阅读了有关Gensim 的信息,但不明白如何使用它来实现GloVe
. 这是我正在做的事情:
正如您在上面的实现中所看到的,我已经将HDBSCAN
withtf-idf
用于文本聚类。我怎么能GloVe
代替tf-idf
呢?
python - 如何知道每个簇标签对应于哪个矩阵行?
在进行聚类之后,我最终得到了一个存储所有聚类标签的对象,如下所示:
以上通常是列表或数组。然后我总是将标签分配给原始的熊猫数据框(数据集),如下所示:
最后我假设每个元素cluster.labels_
对应于我原始数据集的每一行,这个假设是否正确?例如,从上面的列创建中,我最终得到如下内容:
python - 微调用于聚类文本文档的 hdbscan 参数
我有使用 hdbsca 进行聚类的文本文档。当我有大约 35 个文档的激光量数据和大约 14 个群集的正确值时,然后使用以下参数我得到正确的结果。
现在我只是复制数据,每个文档 100 次。并尝试微调集群,但现在我得到了 36 个集群,每个文档在不同的集群中。我尝试更改不同的参数。但聚类结果没有变化。
非常感谢任何建议或参考。
python - 对段落/doc2vec 向量进行聚类时,合适的距离度量是多少?
我的意图是使用 HDBSCAN 对来自 doc2vec 的文档向量进行聚类。我想找到存在语义和文本重复的小簇。
为此,我使用 gensim 生成文档向量。生成的 docvecs 的元素都在 [-1,1] 范围内。
为了比较两个文档,我想比较角度相似度。我通过计算向量的余弦相似度来做到这一点,效果很好。
但是,要对文档进行聚类,HDBSCAN 需要距离矩阵,而不是相似度矩阵。从余弦相似度到余弦距离的原生转换sklearn
是1-similarity
。但是,据我了解,使用此公式可以打破三角不等式,使其无法成为真正的距离度量。在搜索和查看其他人的类似任务的代码时,似乎大多数人似乎都在使用sklearn.metrics.pairwise.pairwise_distances(data, metric='cosine')
定义余弦距离的方法1-similarity
。看起来它提供了适当的结果。
我想知道这是否正确,或者我是否应该使用角距离,计算为np.arccos(cosine similarity)/pi
. 我还看到人们在 l2 归一化文档向量上使用欧几里得距离;这似乎等同于余弦相似度。
请让我知道计算聚类文档向量之间距离的最合适方法是什么:)
python - 如何将 sklearn.metrics.pairwise pairwise_distances 与可调用指标一起使用?
我正在做一些行为分析,我会随着时间的推移跟踪行为,然后创建这些行为的 n-gram。
我希望能够对这些 n-gram 进行聚类,但我需要使用自定义指标创建一个预先计算的距离矩阵。我的指标似乎工作正常,但是当我尝试使用 sklearn 函数创建距离矩阵时,出现错误:
我查看了文档https://scikit-learn.org/stable/modules/generated/sklearn.metrics.pairwise_distances.html,关于这个主题并不是特别清楚。
任何熟悉如何正确使用它的人?
完整代码如下:
snakemake - Snakemake 规则仅针对一个文件运行
我有一个snakemake
运行HDBSCAN
集群的规则。以前它是正常DBSCAN
的并且工作正常,但是在我修改它之后,不知何故问题开始了(我也Snakemake
因为其他原因修改了文件,所以很难说是什么原因造成的)。因此,当只运行一个文件HDBSCAN
并生成结果时,我开始看到这样的图片。它没有给出错误,只是下一个规则说他们正在等待丢失的文件(不是由运行的规则生成的HDBSCAN
)。以下是Snakemake
文件相关部分的外观:
以下是dbscan.py
外观:
的输入文件rule cluster
都存在并且是正确的。不知何故,除了一个之外,所有其他文件都跳过了该规则。
python - 在 R 中打印 Python 生成的图
我正在执行 HDBSCAN,并正在使用hdbscan
R 中的 python 模块执行分析。我有以下代码:
接下来,我想看看浓缩的树状图。用于此的 Python 代码将是:
翻译成R:
该命令的输出是:
AxesSubplot(0.125,0.11;0.31744x0.77)
我可以将所有这些都放在一个 RMarkdown 文件中,使用原始 python,我会得到我想要的情节。但是,这仅在编织整个文件时有效,这可能需要一些时间。特别是当我目前正在通过 HDBSCAN 的不同参数设置时,如果有一种方法可以绘制浓缩树(和其他诊断图)而不必编织整个 RMarkdown 文件,那就太好了。
有人知道我是否/如何在不使用 RMarkdown 的情况下在 R 中绘制 Python 生成的图吗?
RMarkdown 文件示例:
r - dbscan 中基于密度和阈值的聚类
我正在研究一些工业零件的热温度数据。我有一个带有温度值的部件的像素温度。我想用它dbscan
来识别每个部分都有像素簇的部分,其中簇中的所有点都超过了阈值温度。我尝试过使用dbscan
但不知道如何使用阈值温度和集群大小作为条件来识别。
我试图仅隔离超过阈值(230)的点,并尝试查看该集群是否超过一定大小。下面的代码:c(1,3)
是温度的x
,y
值,v
是温度。
完整的部分视觉:
dbscan
使用阈值温度过滤后的输出”:
hdbscan - 如何在 HDBSCAN 中打印输出结果
我有 ASCII 数据,我需要使用 HDBSCAN 对数据进行聚类。我得到了标签,但我不知道如何打印输出集群结果,即来自 hdbscan 的唯一和隔离结果。
片段:
r - R 的 HDBSCAN 因大型数据集而崩溃
我试图将 HDBSCAN 算法应用于我的数据集(50000 个 GPS 点)。但是,每次我运行代码时,R 会话都会崩溃。
这是基本信息。关于我的电脑:
这是我的数据框(df)的子集:
这是我的 HDBSCAN 代码:
我试图减少原始数据集中的点数:
这工作正常。
我发现一旦总点数超过 50000,R 就会开始崩溃。有什么解决办法吗?谢谢