2014-01-08 35 views
15

我已经运行了https://github.com/percyliang/brown-cluster以及python实现https://github.com/mheilman/tan-clustering的棕色聚类算法。他们都给每种独特的令牌提供某种二进制和另一个整数。例如:布朗聚类算法输出意味着什么?

0  the  6 
10  chased  3 
110  dog  2 
1110  mouse  2 
1111  cat  2 

二进制和整数是什么意思?

从第一link,二进制称为一个bit-string,看到http://saffron.deri.ie/acl_acl/document/ACL_ANTHOLOGY_ACL_P11-1053/

但我怎么从输出告诉dog and mouse and cat是一个集群,the and chased是不一样的集群中?

+1

,它说,每一行是:<簇表示为一个位串><在输入中出现单词的次数> !! – carla

+1

它甚至意味着什么?簇表示为位串? – alvas

+0

你可以提供一些关于你想要分类的细节吗?在这种情况下,我可以尝试寻找一些参考。否则,可能没有任何一般程序,我想这更多是关于专家知识和/或预定义的措施。 –

回答

15

如果我理解正确的话,该算法给你一棵树,你需要在一定程度上截断它得到集群。在这些位串的情况下,您应该先取第一个L个字符。

例如,在第二字符切给你两个集群

10   chased  

11   dog   
11   mouse  
11   cat   

在第三个字符,你得到

110   dog   

111   mouse  
111   cat   

切割策略是不同的主题虽然。

+0

您有关于“切割”策略的任何链接/教程吗? – alvas

+0

有时候你有一些专家知识,只有'K'群集,并且只要你得到它们就切割。否则,你可以定义一些度量,[wikipedia文章](http://en.wikipedia.org/wiki/Hierarchical_clustering)是一个很好的开始。 –

0

我的猜测是:

根据图2 Brown et al 1992,聚类是分层的,并从根本上得到你必须做出一个向上/向下决定每个字的“叶子”。如果up为0,down为1,则可以将每个单词表示为一个位串。

https://github.com/mheilman/tan-clustering/blob/master/class_lm_cluster.py

# the 0/1 bit to add when walking up the hierarchy 
# from a word to the top-level cluster 
+0

是的但那不给我集群,它只会给我相似的权利? – alvas

+0

该单词所包含的集合集合与位串前缀集合相同。因此,字符串为1110的字包含在簇1,11和111中。 – cyborg

1

整数是单词在文档中看到的次数。 (我在Python实现测试此。)

从在Python实现的顶部的意见:

代替使用窗口(例如,如在Brown等人,仲4。 ),这个 代码使用两个随机选择的来自同一文档的 群集将是c1和c2的概率计算PMI。另外,由于 群集令牌和对的总数是不同的,所以此代码使用计数而不是概率。

从python实现中的代码中,我们看到它输出单词,位串和单词计数。

def save_clusters(self, output_path): 
    with open(output_path, 'w') as f: 
     for w in self.words: 
      f.write("{}\t{}\t{}\n".format(w, self.get_bitstring(w), 
              self.word_counts[w])) 
4

在珀西梁的实现(https://github.com/percyliang/brown-cluster)时,-C参数允许您指定词簇的数量。输出包含语料库中的所有单词,以及用以下格式注释群集和单词频率的位串:<bit string> <word> <word frequency>。输出中不同位串的数量等于所需簇的数量,并且具有相同位串的单词属于同一簇。

4

更改运行:./wcluster --text input.txt中--c 3

--c数

这个数字意味着集群的数量,默认值是50。你可以用”由于缺省输入只有三个句子,所以不能区分不同的词组群。将50个群集更改为3个群集,您可以分辨差异。

我输入以下三个鸣叫到输入和得到3作为簇参数

enter image description here

在你呈现第一链路