Мне нужно написать сценарий, возможно, на Ruby, который возьмет один блок текста и сравнит несколько транскрипций записей этого текста с оригиналом, чтобы проверить точность. Если это совсем запутанно, я попробую объяснить по-другому...
У меня есть записи нескольких разных людей, читающих сценарий, состоящий из нескольких предложений. Все эти записи были несколько раз переведены в текст другими людьми. Мне нужно взять все транскрипции (сотни) и сравнить их с оригинальным сценарием для точности.
У меня проблемы даже с осмыслением псевдокода, и мне интересно, может ли кто-нибудь указать мне правильное направление. Есть ли установленный алгоритм, который я должен учитывать? Мне было предложено расстояние Левенштейна, но мне кажется, что оно не справится с более длинными строк, учитывая различия в выборе знаков препинания, пробелов и т. д. — пропуск первого слова разрушил бы весь алгоритм, даже если бы все остальные слова были идеальными. Я открыт ко всему - спасибо!
Редактировать:
Спасибо за советы, псих. Однако меня больше всего беспокоит такая ситуация:
Оригинальный текст:
I would've taken that course if I'd known it was available!
Транскрипция
I would have taken that course if I'd known it was available!
Даже при пословном сравнении токенов эта транскрипция будет помечена как довольно ошибочная, хотя она почти идеальна, и это едва ли крайний случай! «Был бы» и «был бы» обычно произносятся очень похоже, особенно в этой части мира. Есть ли способ сделать подход, который вы предлагаете, достаточно надежным, чтобы справиться с этим? Я думал о том, чтобы провести пословное сравнение как в прямом, так и в обратном направлении и построить своего рода составную оценку, но это развалилось бы с такой транскрипцией:
I would have taken that course if I had known it was available!
Любые идеи?