Конвертировать похожие звуковые части слова

У меня проблемы с поиском правильных терминов, чтобы решить приведенную ниже проблему; Я уверен, что это сделано, я просто не могу найти правильные термины, чтобы выразить проблему!

Я в основном пытаюсь создать классификатор, который будет принимать результаты сравнения слов (например, некоторые результаты из расстояний Левенштейна) и решать, достаточно ли отличаются слова. Важным вкладом, вероятно, будет что-то вроде сравнения soundex. Проблема в том, что я создаю обучающий набор для алгоритма (в данном случае SVM). У меня длинный список имен, и мне нужно немного их поменять (основываясь на похожих звуках в слове).

Например John а также Jon было бы сделать мутацию, и я мог бы пометить это в тестовом наборе как эквивалентный. John а также Johann иметь достаточно разные звуковые и буквенные расстояния, чтобы считаться разными.

Итак, я прошу о том, чтобы создать генератор вариаций фонем, но нужно уметь сохранять структуру букв английского алфавита.

Может быть достаточно даже простого перевода, например, "f" можно (иногда) заменить на "ph". Я делаю это на Java, так что любые советы в этом направлении тоже будут хорошими! Благодарю.

РЕДАКТИРОВАТЬ

Это самое близкое, что мне встречалось до сих пор: http://www.isi.edu/natural-language/people/hovy/papers/07IJCAI-spelling-variants.pdf

1 ответ

Я просто думаю вслух.

Основанный на правилах: Примените основанную на правилах систему, в которой вы могли бы использовать стандартные правила подстановки, такие как 'ph' для 'f', и правила вставки, такие как вставка h между гласным и согласным.

Выравнивание n-граммы символов: используйте инструмент выравнивания слов, такой как Giza++, чтобы выровнять n-граммы символов из параллельных корпусов, таких как Europarl. Я думаю, вы сможете найти интересные варианты написания слов, такие как "дом", "дом" и т. Д. Вы можете играть с различными значениями n.

Самонастраивающееся выравнивание n-граммы символов на основе правил: вы также можете использовать комбинацию из двух, в которой вы, в принципе, могли бы повысить вероятности некоторых выравниваний, используя набор внешних правил и эвристики.

Другие вопросы по тегам