Код: Выделить всё
quran_phonetizerТехническая проблема: В длинных аяях (последовательности > 20 слов) я сталкиваюсь с кумулятивным смещением выравнивания (сдвигом). Поскольку модели CTC не обеспечивают идеальных границ слов, а чтение Корана включает в себя «Связную речь» (Wasl), при которой фонемы выпадают или сливаются (например, Ighdam, Hamzatul Wasl), глобальное выравнивание с использованием difflib.SequenceMatcher начинает смещаться.
К середине длинного аята ошибка в слове № 4 приводит к тому, что слово № 5 сопоставляется с фонемами слова № 6, что приводит к «фантомным» ошибкам и значительному падению точности (иногда до < 5%).
Текущая логика: Я использую взвешенное пропорциональное сопоставление, при котором вычисляю «фонетический вес» каждого слова и соответствующим образом распределяю глобальный ссылочный индекс, а затем применяю SequenceMatche
Подробнее здесь: https://stackoverflow.com/questions/798 ... recitation
Мобильная версия