字符串聚类(使用trigrams?)

时间:2014-10-08 11:25:25

标签: machine-learning cluster-analysis trigram

我有一个字符串列表,我想将其分类为组。然后我想在每个小组的字符串上显示。

说我的列表如下:

  • 快速的棕色狐狸跳过懒狗
  • 快速的棕色狐狸跳过懒狗!!!!
  • 棕色的狐狸跳过懒狗
  • Zing,dwarf jocks vex lymph
  • 矮人运动员vex lymph123
  • 我爱饼干

然后我想展示这样的东西(每个类中有一个字符串):

  • 快速的棕色狐狸跳过懒狗
  • 矮人运动员vex lymph123
  • 我爱饼干

我知道三元组是一种非常简单有用的解决方案,用于将字符串分类为“相似的字符串”和“不同的字符串”。我也很确定它们可以用来将字符串列表分成类,但我不确定如何。

这里的任何人都可以帮助我,或者我应该使用完全不同的东西吗?

我更喜欢一种简单且可维护的方法,而且精度高。

2 个答案:

答案 0 :(得分:0)

您几乎可以使用任何群集技术,只需从每个群集中选择一个代表。最简单的方法之一是在你的文本的n-gram空间使用k-medoids,并打印出聚类的质心(因为k-medoids需要质心作为训练集的一部分)

答案 1 :(得分:0)

您还没有提到用于字符串群集的标准。您的问题不清楚什么是分组标准。我可以想象任何标准:

  • 字符串长度在某个范围内
  • 在字符串
  • 中显示(或未显示)的一些字母
  • 在字符串
  • 中显示(或未显示)的一些单词
  • 字符串靠近某个指标(例如Levenstein距离)
  • 字符串接近感觉
  • 还有数百人..

请准确提及您案例中的分类标准。