我正在试验graph coloring算法。这是一种着色图形节点的方法,使得没有2个相邻节点具有相同的颜色。
假设我有以下数据我想要"颜色" (分配给组),其中每个单词都是一个节点:
我希望以下群体:
但是如果我添加我的第4只动物的名字,grey
(就像颜色一样)会怎么样?
所以第四行变为:
着色算法无法区分颜色和名称,因此black
和grey
最终会出现在不同的组中。
我如何调整算法以使其变得不那么严格"? 例如:只有当两个节点在90%以上出现在一起时,请将它们视为相邻并将它们放在同一组中。
注意:我提供的示例已经过简化。我不能只按name
或color
对我的字词进行分组,因此我需要更通用的方法。
答案 0 :(得分:0)
(希望让你的问题正确 - 你的例子并没有真正帮助)
所以目前您从输入数据中生成以下有色图表:
cat--black
| / |
| / |
grey--dog
现在,您可以为每条边分配一个整数标签,计算相应对在列表项中一起出现的频率。然后定义一些较低的阈值并删除标有较小数字的所有边。如果您现在为生成的图形着色,这些"稀有"对再次允许共同的颜色。