一个好的分词器

时间:2015-02-03 07:14:06

标签: nlp

我有一组短字符串(平均长度<12)。 字符串主要是英语单词序列(名称,字典等)。 但是这两个词之间没有分隔符。我想将每个字符串分成单个单词。我试过谷歌,但没有找到任何东西。

有没有标准方法可以做到这一点?另外我在哪里可以获得字典,其中还包括人名,以及其他英语单词。

请注意:字符串可能不符合英语的语法规则。

字符串示例如下:
dontdisturb
ilovejane
iamagoodperson

1 个答案:

答案 0 :(得分:1)

这是Twitter内容/主题标签的一个已知问题,尽管没有标准/普遍接受的解决方法。 (我还建议将主题更改为&#34; hashtag splitter&#34;如果这是你的问题,那么更多的人将能够找到它。)

我建议的算法是通常用于中文分词的算法(它有一个非常类似的问题)。这是一个想法:

1.尝试找到可以在字典中找到的所有子字符串,给它们最高分。

2.然后添加一些较低分数的英语启发式接受的序列。

3.最后输入剩下的单个字母或音节,得分最低。

4.使用Viterbi algorithm(或here)查找得分最高的字符串的最佳非重叠覆盖率。