Skip to content

[Архипов] Сравнение текста выступления и презентации целиком

Vadim Arkhipov edited this page Apr 21, 2024 · 5 revisions

Данная задача является задачей определения семантической близости текстов. Наша задача определить эту метрику для некоторых (каких именно, будет уточнено позже) слайдов презентации. Суть критерия в том, чтобы оценить, насколько речь студента соответствует содержимому слайда.

Методы решения

Для решения задачи семантической схожести были рассмотрены следующие варианты решения:

  • TF IDF
  • Word2Vec
  • Doc2Vec
  • SpaCy
  • Оценка с помощью n-грамм и косинусного сходства

Первые три решения -- это модели машинного обучения, а SpaCy -- библиотека для обработки естественного языка. Для русского языка есть 3 версии обработчиков -- small, medium и large. Я протестировал все 3.

От решения ожидается, что для схожих текстов показатель их семантической близости будет достаточно высок, а для различных текстов будет близок к нулю

Тестовые данные

Тесты будут проводиться для нормализованных текстов и для не нормализованных (возможно, это каким-либо образом скажется на результате работы)

Тестирование проводилось на моём докладе с кафедрального семинара.

Для наглядности сопоставлю мои слова и текст с презентации.

Слайд 1

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

Презентация: ПРОЕКТИРОВАНИЕ И ВНЕДРЕНИЕ МОДУЛЯ АНАЛИЗА ТОЧНОЙ ТРАНСКРИБЦИИ ДЛЯ ТРЕНАЖЁРА ПУБЛИЧНЫХ ВЫСТУПЛЕНИЙ Архипов Вадим СПБГЭТУ «ЛЭТИ», каф. МОЭВМ

Слайд 2

Речь: Целью данной работы является повышение точности распознавания человеческой речи тренажером публичных выступлений путем внедрения в него модуля точной транскрипции. Здесь хотелось бы дать небольшую вводную. Дело в том, что для того, чтобы тренировать у студентов навык публичного выступления, на кафедре МОЕВМ был разработан тренажер. Схема взаимодействия студентов с этим тренажером следующая. Студент загружает туда презентацию, нажимает кнопку записи и надиктовывает свое выступление, после чего отправляет его на проверку, где оно уже проверяется, вычисляется некоторые метрики. И навык студент получает оценку своему выступлению. На данный момент там стоит модуль распознавания речи ВОСК, который не то чтобы сильно устраивает нас. И было решено заменить его на другой модуль, который обеспечил бы более точное распознавание речи и возможно более быстро.

Презентация: Цель и задачи• Цель – Повышение точности распознавания человеческой речи тренажером публичных выступлений путём внедрения в него модуля точной транскрибции• Задачи исследования:1. Обзор существующих моделей транскрибции 2. Описание требуемых изменений в системе 3. Описание способа оценки качества работы системы 2

Слайд 3

Речь: Задачи исследования были следующими. Это обзор существующих моделей транскрипции, описание требуемых изменений в системе и описание способа оценки качества работы системы. В процессе исследования были изучены модели распознавания речи, которые могли бы заменить ВОСК, были выделены критерии для сравнения этих моделей, а также было произведено сравнение аналогов по критериям. И здесь хочется сделать remarку, что искомое решение должно обладать высоким процентом правильно распознанных слов и работать не слишком медленно. Была сделана некоторая оценка, и было решено положить время обработки меньше чем 0 ,7, помноженное на время выступления.

Презентация: Постановка задачи В процессе исследования были:• Изучены модели распознавания речи, которые могут заменить VOSK• Выделены критерии для сравнения найденных аналогов• Произведено сравнение аналогов по критериям Найденное решение должно обладать высоким процентом правильно распознанных слов и работать не слишком медленно (время обработки ≤ 0.7 ∗ время выступления)3

Слайд 4

Речь: В работе были рассмотрены такие решения, как Whisper, Deep Speech, Calde, Wavto Vec 2 .0 и Simulus M4T. В скобках указана модель, если данное решение поставляет несколько моделей. Например, для Whisper AI была выбрана модель Whisper Large. В кассетах есть еще 5 других, каждая отличается. Они отличаются друг от друга параметрами, количеством параметров, и датасетом, на котором они были обучены.

Презентация: 1.1. Поиск аналого��В работе были рассмотрены самые популярные решения, способные осуществить speech-to-text преобразование• Whisper AI (Whisper Large)• Deep Speech 2 • Kaldi (Librispeech ASR model)• Wav2Vec 2.0 (Large)• SeamlessM4T (Large)4

Слайд 5

Речь: Выбор критерий сравнения. Были выбраны следующие критерии сравнения. Первое, самое важное, Real -time factor, который показывает, с какой скоростью происходит обработка аудиозаписи. Как вычисляется он как длительность обработки аудиозаписи делить на длительность этой аудиозаписи. Вторым критериям является World -Sphere -Ordinary. Это процентная величина, которая показывает, насколько точно происходит обработка записи. Чем ниже это значение, тем более точно система расшифровала аудио. И третий критерий. Это поддержка русского языка. Так как тренажер публичных выступлений ориентирован по большей части на русскоязычные выступления, то имеет смысл больше предпочтения в выборе модели отдавать моделям, которые поддержку русского языка встроили сами разработчики. Поскольку в теории такие модели будут работать точнее и быстрее, поскольку разработчики обучили их на большем количестве данных.

Презентация: 1.2. Выбор критериев сравнения• RTF (Real-Time Factor) – Показывает, с какой скоростью происходит обработка аудиозаписи. 𝑅𝑇𝐹 =𝑓(𝑑)𝑑 , 𝑓 𝑑 −время обработки аудио, 𝑑 − длительность аудио • WER (Words Error Rate) – Показывает, насколько точно происходит обработка записи• Поддержка русского языка – Поскольку тренажёр ориентирован на русскоязычные выступления 5

Слайд 6

Речь: В данной таблице привезены результаты сравнения по критериям. В ходе анализа данной таблицы было принято решение использовать в проекте модель от Whisper AI, поскольку она поддерживает русский язык. Модель не нужно дополнительно обучать работать с ним. Иметь один из самых низких RTF и также имеет самый низкий процент ошибок, допущенных при распознавании.

Презентация: 1.3. Результаты сравнения по критериям RTF WER Поддержка русского языка Whisper AI0.1726.2% (ENG)7,1% (RUS)Модель не нужно дополнительно обучать DeepSpeech 2.00.28611.85% (ENG)Модель необходимо обучатьKaldi0.4618.92% (ENG)Модель необходимо обучать Wav2Vec 2.00.12010% (ENG)Модель необходимо обучатьSeamLessM4T0.077.44 (ENG)10.31 (RUS)Модель не нужно дополнительно обучать6

Слайд 7

Речь: Для того, чтобы обеспечить работу Whisper в проекте, как отдельного узла, необходимо...

Презентация: 2.1. Описание требуемых изменен��й• Требуется обеспечить работу Whisper внутри проекта как отдельного узла, который бы получал на вход аудиозапись, а на выход отдавал бы транскрибцию7

Слайд 8

Речь: После того, как Whisper будет интегрирован, предлагается провести ряд экспериментов, в частности сравнить Whisper и VOSC по точности работы. Входными данными в этих экспериментах будут выступать аудиозаписи публичных выступлений, для которых известна точная транскрипция. На выходе мы будем получать процент ошибок, которые модели допустили при распознавании. Шаги эксперимента будут следующими. В Whisper и VOSC поочередно будут загружаться аудиозаписи и получатся транскрипции. Далее эти транскрипции будут сравниваться с эталонной и будет подсчитываться процент допущенных ошибок. Ожидается, что процента ошибок распознавания Whisper будет меньше, чем процент ошибок допущенных VOSC при распознавании.

Презентация: 3.1. Способы оценки качества. Сравнение точности работы Название Сравнение точности работы Whisper и VOSK Входные данные Аудиозаписи публичных выступлений,для которых известна точная транскрибция Выходные данные Процент ошибок, допущенных моделями при распознавании Шаги проведения эксперимента 1. Загрузить запись выступления в Whisper и вVOSK2.Сравнить полученные транскрибции с эталонной и вычислить процент ошибок,допущенных моделями при распознавании Ожидаемый результат Процент ошибок распознавания Whisper будет меньше, чем у VOSK8

Слайд 9

Речь: И второй эксперимент, который также предлагается провести, это сравнить скорость работы моделей Whisper и VOSC. Для этого требуется в каждой из этих моделей загрузить одинаковые аудиозаписи публичных выступлений и дождаться окончания их обработки. Зафиксировать время, за которое модели это сделали, и сравнить. Ожидается, что Whisper справится быстрее, чем VOSC.

Презентация: 3.1. Способы оценки качества. Сравнение скорости работы Название Сравнение скорости работы Whisper и VOSK Входные данные Аудиозапись публичного выступления Выходные данные Время, затраченное моделью на обработку записи Шаги проведения эксперимента 1. Загрузить запись выст��пления в Whisper и вVOSK2. Дождаться окончания обработки записи ��зафиксировать время, которое потребовалось системе для этого Ожидаемый результат Whisper требуется меньше времени на обработку аудиозаписи, чем VOSK 9

Слайд 10

Речь: В заключении можно сказать, что были изучены инструменты для осуществления транскрипции речи. Для дальнейших исследований была выбрана модель Whisper Large, которая в среднем работает на 54 % точнее, чем рассматривание аналоги. Эта модель будет интегрирована в тренажер с помощью технологии контейнеризации Docker, а дальнейшие исследования могут включать в себя непосредственную интеграцию модели Whisper в тренажер и проведение обозначенных выше экспериментов.

Презентация: Заключение• Были изучены инструменты транскрибции речи. Для дальнейших исследований была выбрана модель Whisper Large, которая в среднем работает на 54% точнее, чем рассматриваемые аналоги• Новая модель будет интегрирована в тренажер с помощью технологии контейнеризации Docker• Дальнейшие исследования могут включать в себя непос��едственную интеграцию модели Whisper Large в тренажёр и проведение экспериментов10

Слайд 11

Речь: На этом у меня все. Спасибо за внимание.

Презентация: СПАСИБО ЗА ВНИМАНИЕ!11

Слайд 12

Речь: Ну здесь уже идут пояснения.

Презентация: 12DeepSpeech RTF = 0.2 (2 X GTX 1070)DeepSpeech RTF = x (Nvidia TITAN RTX)↑ 2 𝐺𝑇𝑋 1070𝑇𝑖𝑡𝑎𝑛 𝑅𝑇𝑋 = 0.2𝑥 ↓2 𝐺𝑇𝑋 1070𝑇𝑖𝑡𝑎𝑛 𝑅𝑇𝑋 = 𝑥0.2 ⇒ 𝑥 = 0.2 ∗ 2 𝐺𝑇𝑋 1070𝑇𝑖𝑡𝑎𝑛 𝑅𝑇𝑋= 0.2 ∗ 2 ∗ 34.8148.56= 0.286 https://technical.city/ru/video

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

Результаты тестирования

(Чем ближе результат к 1, тем более похожими являются тексты)

Метод Схожие тексты, без нормализации Схожие тексты, с нормализацией Различные тексты, без нормализации Различные тексты, с нормализацией
TF-IDF 0.465 0.695 0.091 0.062
Word2Vec 0.827 0.902 0.973 0.423
Doc2Vec 0.985 0.999 0.849 0.863
Spacy Small 0.353 0.962 0.498 0.872
Spacy Medium 0.939 0.962 0.760 0.610
Spacy Large 0.969 0.980 0.748 0.638
N-grams 0.159 0.205 0.002 0.000

UPD -- новые тесты

TF-IDF Схожие тексты, без нормализации Схожие тексты, с нормализацией Различные тексты, без нормализации Различные тексты, с нормализацией
Test1 0.560 0.670 0.093 0.007
Test2 0.302 0.508 0.062 0.028
Test3 0.519 0.671 0.094 0.007
Test4 0.329 0.621 0.087 0.046
Test5 0.367 0.577 0.062 0.028
Test6 0.334 0.548 0.062 0.028
Test7 0.371 0.587 0.091 0.062
Test8 0.287 0.580 0.091 0.062
Word2Vec Схожие тексты, без нормализации Схожие тексты, с нормализацией Различные тексты, без нормализации Различные тексты, с нормализацией
Test1 0.886 0.908 0.975 0.356
Test2 0.747 0.803 0.972 0.202
Test3 0.802 0.938 0.966 0.366
Test4 0.697 0.861 0.971 0.344
Test5 0.776 0.822 0.972 0.202
Test6 0.763 0.807 0.972 0.202
Test7 0.913 0.815 0.973 0.423
Test8 0.885 0.783 0.973 0.423
Doc2Vec Схожие тексты, без нормализации Схожие тексты, с нормализацией Различные тексты, без нормализации Различные тексты, с нормализацией
Test1 0.965 0.978 0.823 0.839
Test2 0.952 0.972 0.899 0.909
Test3 0.957 0.983 0.820 0.840
Test4 0.967 0.992 0.851 0.855
Test5 0.954 0.971 0.899 0.909
Test6 0.954 0.973 0.899 0.909
Test7 0.964 0.991 0.849 0.863
Test8 0.951 0.992 0.849 0.863
Spacy Small Схожие тексты, без нормализации Схожие тексты, с нормализацией Различные тексты, без нормализации Различные тексты, с нормализацией
Test1 0.569 0.973 0.529 0.884
Test2 0.459 0.948 0.456 0.840
Test3 0.560 0.977 0.528 0.886
Test4 0.308 0.933 0.391 0.880
Test5 0.485 0.945 0.456 0.840
Test6 0.476 0.939 0.456 0.840
Test7 0.237 0.938 0.331 0.872
Test8 0.216 0.936 0.331 0.872
Spacy Medium Схожие тексты, без нормализации Схожие тексты, с нормализацией Различные тексты, без нормализации Различные тексты, с нормализацией
Test1 0.904 0.907 0.627 0.410
Test2 0.851 0.917 0.477 0.398
Test3 0.864 0.911 0.601 0.401
Test4 0.859 0.916 0.556 0.470
Test5 0.878 0.929 0.477 0.398
Test6 0.861 0.920 0.477 0.398
Test7 0.884 0.918 0.760 0.610
Test8 0.882 0.914 0.760 0.610
Spacy Large Схожие тексты, без нормализации Схожие тексты, с нормализацией Различные тексты, без нормализации Различные тексты, с нормализацией
Test1 0.938 0.942 0.629 0.534
Test2 0.922 0.929 0.595 0.464
Test3 0.927 0.942 0.622 0.531
Test4 0.942 0.971 0.664 0.625
Test5 0.938 0.938 0.595 0.464
Test6 0.922 0.928 0.595 0.464
Test7 0.935 0.957 0.748 0.638
Test8 0.934 0.956 0.748 0.638
N-gramms Схожие тексты, без нормализации Схожие тексты, с нормализацией Различные тексты, без нормализации Различные тексты, с нормализацией
Test1 0.061 0.085 0.001 0.000
Test2 0.037 0.067 0.002 0.000
Test3 0.049 0.079 0.001 0.000
Test4 0.046 0.088 0.001 0.000
Test5 0.046 0.078 0.002 0.000
Test6 0.033 0.065 0.002 0.000
Test7 0.080 0.118 0.002 0.000
Test8 0.000 0.113 0.002 0.000

Вывод

Предлагаю использовать TF-IDF, поскольку она выдаёт самое большое расхождение между оценками выступления, соответствующего теме презентации, и выступления, которое не соответствует теме презентации. Что примечательно, использование нормализации текста при работе с TF-IDF положительно сказывается на результате работы модели -- корректный нормализованный текст она оценили выше, чем корректный не нормализованный, а некорректный нормализованный текст -- ниже, чем некорректный ненормализованный.

Clone this wiki locally