langid
github源碼:https://github.com/saffsd/langid.py
特點
- 支持97中語言
- 濾過速度快
- 準確率高
- 不支持中文繁體(香港),中文繁體(臺灣)
檢測接口 classify rank
>>> import langid
# classify 輸出最可能的語言
>>> langid.classify("I do not speak english")
('en', 0.57133487679900674)
>>> langid.set_languages(['de','fr','it'])
>>> langid.classify("I do not speak english")
('it', 0.99999835791478453)
>>> langid.set_languages(['en','it'])
>>> langid.classify("I do not speak english")
('en', 0.99176190378750373)
# rank 輸出最可能的幾種語言
>>> langid.rank("I do not speak english")
[('en', -49.99176190378750373), ('pl', -48.99176190378750373), ...)
fasttext
TODO
langdetect
Java包language-detection (03/03/2014版) 的Python接口
Github源碼 https://github.com/Mimino666/langdetect
特點
- 支持55種語言
- 可識別 簡體 繁體
- 個人測試 效率和準確率 不及
langid
檢測接口 detect detect_langs
# detect 輸出最可能的語種
>>> from langdetect import detect
>>> detect("War doesn't show who's right, just who's left.")
'en'
>>> detect("Ein, zwei, drei, vier")
'de'
# detect_langs 輸出最可能的幾種語言
>>> from langdetect import detect_langs
>>> detect_langs("Otec matka syn.")
[sk:0.572770823327, pl:0.292872522702, cs:0.134356653968]
sklearn實現的語種檢測
csdn看到的基於sklearn模型訓練實現的語種檢測, 未做測試
多語種檢測