基于相似词序列的字符串聚类

数据挖掘 机器学习 Python nlp 聚类 文本挖掘
2022-02-23 11:56:26

在我的数据集中,我有一个具有以下数据的功能:

输入

特征
脑痴呆常规(Comfortone)
晨检
痴呆脑-常规(Comfortone)
脑 MRA 常规(Comfortone)
脑痴呆/常规(MRCP)
带动态的 MRCP BH****
肝脏/MRCP W/O, W/
MRCP 例程 30slice
MRCP-Routine/罗伯特博士

如何对其中包含相似单词的值进行聚类。

输出

特征
脑痴呆常规(Comfortone) 一种
晨检 C
痴呆脑-常规(Comfortone) 一种
脑 MRA 常规(Comfortone) 一种
脑痴呆/常规(Comfortone) 一种
带动态的 MRCP BH****
肝脏/MRCP W/O, W/
MRCP 例程 30slice
Dr.Robert/MRCP 常规/
1个回答

您可以使用句子嵌入模型将向量与每个输入相关联,并使用 KMeans 之类的聚类算法,或者使用字符串距离度量在字符串之间构建相似度矩阵,并使用基于相似度的算法(例如 Spectral Clustering)或凝聚聚类。

第一个使用 KMeans 的方法可能效果不佳,因为句子嵌入模型将使用与您所拥有的数据不同的数据进行训练,但它能够处理新数据。

对于第二个,因为您可以使用任何所需的字符串距离,您可以设计一个非常适合您的数据的字符串。但因为它使用基于相似性的聚类,您将无法轻松处理新数据。