Skip to content

13-wer/wer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Оглавление

  1. Команда
  2. Описание датасета
  3. Методы подготовки данных
  4. Варианты построения модели
  5. План по тестированию и валидации построенных моделей
  6. Промежуточные результаты
  7. Результат на отложенной выборке
  8. Презентация

Команда

Команда Зона ответственности
Смирнов Артем Александрович EDA
Кубракова Екатерина Александровна составление плана валидации модели
Лилиом Елизавета Юрьевна построение, дообучение классификатора на rubert-base-cased
Ильиных Александр Александрович создание новых свойств
Гриценко Андрей Дмитриевич построение, дообучение классификатора на rubert-base-cased-conversational
Антонов Эдуард Кузьмич построение, дообучение классификатора на rubert-tiny2

Описание датасета

Датасет состоит из 6508 наблюдений и четырех столбцов: model_annotation, human_markup, audio_path и label.

  • Столбец model_annotation содержит результаты работы ASR-модели, строки с распознанным голосом.
  • Столбец human_markup содержит результаты разметки, выполненной человеком (расшифровка аудиозаписей).
  • Столбец audio_path содержит пути к файлам с аудиозаписями в формате .wav.
  • Столбец label содержит метки целевого класса.

В датасете есть один дубликат (строки с индексами 1953 и 1954), пропущенные значения отсутствуют.

Присутствует незначительный дисбаланс классов:

  • 60% наблюдений имеют метки положительного класса (0),
  • 40% - отрицательного (1).
Длина фразы в словах для каждого класса
model_annotation model_annotation human_markup human_markup
0 1 0 1
медианная 6 5 6 6
средняя 7.73 5.99 8.14 7.45
минимальная 1 1 1 1
максимальная 62 40 61 60
стандартное отклонение 5.58 4.18 6.01 5.13

Средняя длина слова различается незначительно:

  • 4.82 символа у разметки, выполненной моделью,
  • 4.73 символа у разметки, выполненной человеком.

Пороговое значение WER для классификации составляет 0.43 (с округлением до сотых).

Низшие показатели метрики получаются при попытке модели распознать речь на иностранном языке как речь на русском языке.

Методы подготовки данных

Создание новых свойств по первоначальным wav файлам. Для внесения в оценочную модель. Дополнительные свойства которые будут созданы:

  • Наличие шума, посторонних звуков, да/нет вычисление отношения сигнал/шум (Signal-to-Noise Ratio, SNR).
  • Темп/скорость речи, как то численное значение получить. Библиотека librosa в Python, для анализа временных рамок и выделения ритмических паттернов.
  • Количество слов в фразе.
  • Наличие акцента/дефектов речи у говорящего. API Yandex SpeechKit.
  • Язык (русский/иностранный). API Yandex SpeechKit.

Создание новых свойст и их анализ

Шаги для оценки SNR:

  • Определяем "тихие" участки файла, которые можно считать шумом.
  • Вычисляем среднеквадратичные значения (RMS) для шума и всего сигнала.
  • Расчитываем SNR.

Шаги для оценки темпа речи

  1. Загрузка аудио: загружаем аудиофайлы с помощью librosa.
  2. Анализ: Выполняем оценку темпа с использованием функции librosa.beat.tempo, адаптировав её под нужды анализа речи.

Выводы анализа

Корреляция
SNR и Label: корреляция 0.044, p-value: 0.007 (слабая положительная корреляция, статистически значима)
Темп Речи и Label: корреляция -0.008, p-value: 0.512 (очень слабая отрицательная корреляция, не статистически значима)
Количество Слов и Label: корреляция -0.165, p-value: <0.0001 (умеренная отрицательная корреляция, статистически значима)
Интерпретация и Рекомендации
SNR не показал статистической значимости в логистической регрессии, несмотря на небольшую корреляцию.
Возможно, стоит рассмотреть другие способы его измерения или учет вместе с другими переменными. Темп речи показывает значимость только в регрессии, но не в корреляции.
Это может означать, что его влияние на метку label проявляется только в комбинации с другими переменными. Количество слов является значимым свойством в обоих анализах. Большее количество слов связано с меньшей
вероятностью того, что label будет 1. Это указывает на то, что длинные записи труднее корректно распознать.

Варианты построения модели

  1. Классические модели машинного обучения:
  • Логистическая регрессия
  • Случайный лес
  • Метод опорных векторов
  • Градиентный бустинг
  1. Модели на основе предобученных языковых моделей:

План по тестированию и валидации построенных моделей

  1. Метрики оценки качества:
  • Точность (Accuracy) - доля правильно классифицированных образцов.
  • Полнота (Recall) - доля релевантных образцов, которые были правильно классифицированы.
  • Точность (Precision) - доля образцов, которые были классифицированы правильно, из всех образцов, отнесенных к данному классу.
  • F1-мера - гармоническое среднее между точностью и полнотой.
  • ROC-AUC - площадь под кривой ложноположительных и истинноположительных срабатываний. С построением classic report и визуализацией.
  1. Способы улучшения метрик:
  • Увеличение размера обучающей выборки – за счет апсэмплинга (в случае необходимости).
  • Улучшение предобработки данных - очистка, нормализация, векторизация текста.
  • Подбор оптимальных гиперпараметров модели - архитектура, размер эмбеддингов, скорость обучения и т.д.
  • Использование техник регуляризации - дропаут, L1/L2 регуляризация, ранняя остановка.
  • Применение методов борьбы с переобучением - кросс-валидация.
  • Анализ ошибок классификации и доработка моделей. Выбор модели, показавшей оптимальный результат.
  1. Процесс валидации:
  • Разделение исходных данных на обучающую, валидационную и тестовую выборки.
  • Обучение модели на обучающей выборке.
  • Оценка качества на валидационной выборке, подбор оптимальных гиперпараметров.
  • Оценка финальной производительности на независимой тестовой выборке.
  • Документирование результатов, анализ ошибок и направлений для дальнейшей доработки.

Промежуточные результаты

Модель AUC-ROC Ноутбук
rubert-base-cased 0.77 DeepPavlov.ipynb
rubert-base-cased-conversational 0.82 rubert-base-cased-conversational.ipynb
rubert-tiny2 0.73 tiny_bert.ipynb
создание и анализ признаков - wer_signs.ipynb

Результат на отложенной выборке

Для проверки на отложенной выборке была отобрана модель, показавшая себя наилучшим образом при обучени и валидации на обучающей выборке. Это модель rubert-base-cased-conversational, которая изначально обучалась на корпусе текстов, более похожих на те, что содержались в представленном датасете (разговорная лексика). AUC-ROC на тестовой выборке составила 0.805. Архив с моделью доступен по ссылке.

Презентация

Ссылка на презентацию

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •