如果我有一个给定的文本(长或短),您通常会使用哪种方法检测它所写的语言?
很明显:
我想到的最简单的事情是:
但我想还有更好的方法。我不是在寻找现有项目(这些问题已经得到解答),但是对于像Hidden-Markov-Models,Neural Networks这样的方法,......可以用于此任务。
答案 0 :(得分:2)
在我正在研究的产品中,我们使用基于字典的方法。 计算训练语料库中所有单词的第一相对概率,并将其存储为模型。
然后逐字处理输入文本以查看特定模型是否给出最佳匹配(比其他模型好得多)。
在某些情况下,所有型号都提供了非常糟糕的匹配。
几点有趣:
另外为了更好的检测,我们正在考虑添加每个字符的模型,如您所述(某些语言具有某些独特的字符)
顺便说一句,我们使用ICU库来分割单词。适用于欧洲和东方语言(目前我们支持中文)
答案 1 :(得分:0)
检查 Cavnar和Trenkle 算法。