2013-02-16 72 views
1

我想几千文件进行分类,每个几行。我之前使用过一些常用的单词,但这次想使用哈希算法,而且我无法理解实现。有在我周围的数据8000独特的话,所以我的数字128 * 128应该足够如何在python中实现一揽子词语功能哈希?

我使用的大多是这些来源:

http://blog.someben.com/2013/01/hashing-lang/ http://www.hpl.hp.com/techreports/2008/HPL-2008-91R1.pdf

这里是我的功能generatve特征向量每个文档:

import mmh3 

def add_doc(text): 
    text = str.split(text) 
    d_input = dict() 
    for word in text: 
     hashed_token = mmh3.hash(word) % 127 
     d_input[hashed_token] = d_input.setdefault(hashed_token, 0) + 1 
    return(d_input) 

现在我必须做一些错误的,或者不理解一些地方,因为那里似乎是一个巨大的碰撞量。任何帮助,将不胜感激

+1

你想找到127个在文本最常用的词:['collections.Counter(text.split()).most_common(127)'](http://docs.python.org/2/library/ collections.html#collections.Counter)? – jfs 2013-02-16 23:43:57

回答

0

你不应该被127%地改装散,只会产生127个输出,其中你似乎要128^2可能的输出,按您的独特的8000字的推理。

+0

谢谢,是的,这条线是在循环中,我必须粘贴它的错误。我只是修复了主要帖子。 – nyc0202034 2013-02-16 23:20:21