Сообщение Re[4]: Нечеткое сравнение слов. от 18.10.2025 14:19
Изменено 18.10.2025 14:20 vdimas
Re[4]: Нечеткое сравнение слов.
Здравствуйте, bnk, Вы писали:
bnk>Насколько я понял там формально доказано что удаления эквивалентны опечаткам, поэтому это и работает
Удаления эквивалентны опечаткам-заменам, разумеется.
Но для опечаток-перестановок (поменяли соседние символы местами) расстояние между словами считается 1, но SymSpell для этого случая требует 2 удаления, т.е. рассматривает этот вид опечаток как расстояние 2. ))
И для опечаток, когда добавлен случайно лишний символ, он на каждый добавленный символ уменьшает покрываемое расстояние других опечаток на 1.
====
Однако, SymSpell относительно дешево позволяет сделать не 2 опечатки, а 3, что покрывает функциональность других алгоритмов с порогом расстояния 2, для ситуаций когда встречается не более одной опечатки-добавления.
В целом подход оччень неплох...
bnk>Насколько я понял там формально доказано что удаления эквивалентны опечаткам, поэтому это и работает
Удаления эквивалентны опечаткам-заменам, разумеется.
Но для опечаток-перестановок (поменяли соседние символы местами) расстояние между словами считается 1, но SymSpell для этого случая требует 2 удаления, т.е. рассматривает этот вид опечаток как расстояние 2. ))
И для опечаток, когда добавлен случайно лишний символ, он на каждый добавленный символ уменьшает покрываемое расстояние других опечаток на 1.
====
Однако, SymSpell относительно дешево позволяет сделать не 2 опечатки, а 3, что покрывает функциональность других алгоритмов с порогом расстояния 2, для ситуаций когда встречается не более одной опечатки-добавления.
В целом подход оччень неплох...
Re[4]: Нечеткое сравнение слов.
Здравствуйте, bnk, Вы писали:
bnk>Насколько я понял там формально доказано что удаления эквивалентны опечаткам, поэтому это и работает
Удаления эквивалентны опечаткам-заменам, разумеется.
Но для опечаток-перестановок (поменяли соседние символы местами) расстояние между словами считается 1, но SymSpell для этого случая требует 2 удаления, т.е. рассматривает этот вид опечаток как расстояние 2. ))
И для опечаток, когда добавлен случайно лишний символ, он на каждый добавленный символ уменьшает покрываемое расстояние других опечаток на 1.
====
Однако, SymSpell относительно дешево позволяет сделать не 2 опечатки, а 3, что покрывает функциональность других алгоритмов с порогом расстояния 2, для ситуаций когда встречается не более одной опечатки-добавления.
В целом подход оччень неплох...
bnk>Насколько я понял там формально доказано что удаления эквивалентны опечаткам, поэтому это и работает
Удаления эквивалентны опечаткам-заменам, разумеется.
Но для опечаток-перестановок (поменяли соседние символы местами) расстояние между словами считается 1, но SymSpell для этого случая требует 2 удаления, т.е. рассматривает этот вид опечаток как расстояние 2. ))
И для опечаток, когда добавлен случайно лишний символ, он на каждый добавленный символ уменьшает покрываемое расстояние других опечаток на 1.
====
Однако, SymSpell относительно дешево позволяет сделать не 2 опечатки, а 3, что покрывает функциональность других алгоритмов с порогом расстояния 2, для ситуаций когда встречается не более одной опечатки-добавления.
В целом подход оччень неплох...