Как указано в большинстве правописание корректора репетиторов, правильное слово W^для неправильно пишется слово х:Орфографический коррекции вероятность
W^= Argmax W P (X | W) P (W)
Где P (X | W) - вероятность, а P (W) - модель языка.
В учебном пособии, где я изучаю корректуру правописания, инструктор говорит, что P (X | W) можно вычислить, используя матрицу путаницы, которая отслеживает, сколько раз буква в нашем корпусе ошибочно вводится для другого письмо. Я использую World Wide Web как свой корпус, и не может быть гарантировано, что письмо было ошибочно напечатано для другого письма. Так же хорошо, если я использую расстояние Левенштейна между X и W, вместо использования матрицы замешательства? Это имеет большое значение?
Способ, которым я собираюсь рассчитать Лев. расстояние в питоне это:
from difflib import SequenceMatcher
def similar(a, b):
return SequenceMatcher(None, a, b).ratio()
А вот учебник, чтобы сделать мой вопрос яснее: Click here
PS. я работаю с Python
поэтому в заключение я могу использовать 'SequenceMatcher.ratio()' для моей цели? – tenstar
@tenstar Да. Извините, если это не ясно. Моя единственная реальная проблема заключается в том, что вы получите проблемы с производительностью (чтение: скорость), когда ваш словарь большой. – jogojapan
да, но если я сгенерирую только несколько кандидатов с вершинами вероятности, то я смогу решить ритуал вопросов производительности? – tenstar