Naive Spellchecking, или поиск ближайших слов из словаря по метрике Левенштейна на Scala
|
|
Вторник, 19 Декабря 2017 г. 09:18
+ в цитатник
Приветствую! В этой статье будет показан алгоритм поиска ближайших к заданному слов из корпуса в терминах метрики Левенштейна. Наивным spellchecking-ом назван потому, что не учитывает ни морфологии, ни контекста, ни вероятности появления скорректированного слова в предложении, однако в качестве первого приближения сойдет вполне. Также алгоритм может быть расширен на поиск ближайших последовательностей из любых других сравнимых объектов, нежели простой алфавит из Char-ов, и, после допиливания напильником, его можно приспособить и для учета вероятностей появления скорректированных слов. Но в данной статье сосредоточимся на базовом алгоритме для слов определенного алфавита, скажем, английского.
Код в статье будет на Scala.
Всех заинтересовавшихся прошу под кат.
Читать дальше ->
https://habrahabr.ru/post/345002/
Метки:
author iboltaev
функциональное программирование
программирование
поисковые технологии
алгоритмы
scala
levenstein
trie
dijkstra's algorithm
-
Запись понравилась
-
0
Процитировали
-
0
Сохранили
-