2010-08-25 47 views
1

也许这是不可能的,我应该放弃所有的希望。或者,也许有一种非常聪明的方式来做到这一点,我没有想到。我有多种语言的文本文件。如何有选择地删除NLTK中的一种语言?

这里是我的本钱了两个例子:

يبس - ييبس(yabisa, yaybasu)YBS] [ي,ب-س(变得干燥, 僵硬,死板)20 :77 yabasan =干。 يسر - ييسر(yassara, yuyassiru)[y-s-r] [ي-س-ر](致 方便,容易)92:7 nuyassiruhuu =我们会缓解他。

祖Hülfe! zuHülfe!帮帮我!帮帮我!
Sonst bin ich verloren!否则我失去了 !祖胡尔夫!祖胡尔夫!帮帮我! 帮助! Sonlore bin ich verloren!否则我迷路了! Der listigen Schlange zum Opfer erkoren, 被选为献给狡猾的 蛇,BarmherzigigeGötter!仁慈的 神!舍恩nahet SIE SICH,它已经变得 接近,舍恩nahet SIE SICH,它已经越来越近,

...这将是非常恼人的经历,为了进一步处理这些行删除一种语言的文字。

我认为这可以在NLTK中完成的一种方式是将文本拆分为令牌,根据小语料库知道每个令牌的出处,然后要求NLTK仅“重构”令牌我选择的。这只是一个狂野的幻想吗?

回答

2

您可以使用nltk.NaiveBayesClassifier完成上述工作。

以下链接应该有所帮助: http://nltk.googlecode.com/svn/trunk/doc/book/ch06.html

它使用nltk.NaiveBayesClassifier性别鉴定的例子。你使用相同的语言识别。

您引用的第一个示例将与nltk.NaiveBayesClassifier配合使用,因为unicode集完全不同。

在第二个例子中,可能会出现像在两种语言中拼写相同专有名词一样的词语,这可能会导致语言识别出现一些错误。