2

我尝试使用 SVM 进行集群。我有社交网络图表数据。在我的数据节点中相互连接。我想使用图邻接矩阵作为 SVM 输入数据。我的 SVM 输入数据如下。我的主要问题是图形数据中的社区检测。

是否可以使用 SVM 对图形数据进行聚类。你能给我一些方法来做到这一点。我是 SVM 的初学者。

1 1:0 2:1 3:1 4:1 5:1

2 1:1 2:0 3:1 4:1 5:0

3 1:1 2:1 3:0 4:1 5:0

4 1:1 2:1 3:1 4:0 5:0

5 1:1 2:0 3:0 4:0 5:0
4

4 回答 4

1

SVM 无法进行聚类,您可以找到多类 SVM 和其他变体。另一方面,存在支持向量聚类,它是一种与 SVM 略有不同但接近的方法。我不知道有什么包提供这个算法,到目前为止它不是很有名。

于 2013-09-12T22:09:33.680 回答
1

正如许多人所指出的,一般来说,SVM 是用于分类的。尽管存在基于 SVM 的聚类算法,它与最初的 SVM 类似,可以使用内核技巧,它允许您处理各种类型的数据,包括图形(图形内核)。Adjcacency 矩阵是图相似性的相当糟糕的表示(除非您实际上对非常简单的现象感兴趣,但是使用基于 SVM 的方法似乎有点太多了。相信奥卡姆剃刀 - 我建议最简单的方法是最好的方法寻找/使用更简单的聚类方法,如果它们不够用,则考虑切换到 SVM 聚类。

我强烈建议阅读有关该主题的论文,因为它并不像看起来那么容易,但它是经过深入研究的主题:

  • 关于图挖掘和图内核的介绍
  • Michel Neuhaus,Horst Bunke:源自图形编辑距离的随机游走内核。SSPR/SPR 2006:191-199
  • SVN Vishwanathan、Karsten M. Borgwardt、Nicol N. Schraudolph:图内核的快速计算。NIPS 2006:1449-1456

对于实现本身,matlab 库(已经提到)位于:https ://sites.google.com/site/daewonlee/research/svctoolbox

于 2013-09-13T09:18:08.250 回答
0

有几篇论文谈到了支持向量聚类;这是我要评估的一个:http: //jmlr.org/papers/volume2/horn01a/rev1/horn01ar1.pdf

另外,在这里找到了一个 R 包:http ://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.190.9809

于 2014-09-10T16:28:20.300 回答
0

您可以执行以下操作

  1. 对数据应用尽可能多的聚类算法。

  2. 确定您需要拥有多少个集群(或使用任何生成的集群中的多个集群)。

  3. 优化产生的输出,使聚类算法的输出与所需的集群数量(以及那些确切的集群)相匹配。这是一个棘手的部分!

  4. 向 SVM 提供由集群产生的数据,例如质心、平均值等。

  5. 最后,使用经过训练的 SVM 根据您最初输入的数据生成集群。

因此,我们的想法是在其他聚类模型的基础上,用 SVM 开发一个通用的聚类模型……这样,你就可以拥有无​​监督的 SVM 聚类。需要注意的是,您需要尽可能多的聚类数据行才能使 SVM 工作(否则,SVM 将为您提供的每个输入输出单个数字)。

资料来源:目前正在研究这种方法。

编辑:语法等

于 2014-08-15T14:21:53.067 回答