Рубріки: Machine LearningОпыт

Искусственный интеллект определяет ваш уровень английского с точностью 96%: как это работает

Вікторія Пушкіна

Команда машинного обучения в школе английского Skyeng на основе текстов из уроков, действий пользователей и речей учеников и учителей решает ряд ML-задач. Среди них — автоматизированная оценка уровня владения языком.

На конференции Conversations 2021 Lead Machine Learning Engineer в Skyeng Роман Смирнов рассказал, как они с командой построили систему, которая может послушать, как вы разговариваете и определить ваше знание английского.

Далее со слов Романа Смирнова

__________

Чтобы машина могла определить уровень владения языком, она должна:

  1. распознать речь (ASR-система);
  2. оценить ее по неким параметрам.

Параметры для определения уровня английского это лексика, грамматика и беглость речи. Все три записываются в функцию, которая лежит в основе системы Skyeng.

Уровень знания языка = f (лексика, грамматика, беглость речи)

Теперь разберем подробнее этапы.

Как работает распознавание языка в системе Skyeng

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

Команда машинного обучения проанализировала имеющиеся модели и выбрала такую, которая бы подходила под следующие ограничения:

  • ограничение по мощности сервера;
  • работа в режиме реального времени;
  • возможность обрабатывать не только короткие фразы, но и длинные аудио — даже часовые уроки.

Lead Machine Learning Engineer в Skyeng Роман Смирнов / Conversations 2021

При этом система должна была не только переводить аудио в текст, но и распознать, насколько чисто говорит ученик — то есть смогут ли его понять носители английского.

Оптимально подошла модель на фреймворке wav2vec 2.0. Это трансформер, который работает со звуком. Он принимает на вход сырое аудио и распознает его. При этом wav2vec 2.0 не включает в себя языковую модель — то есть не идентифицирует распознаваемые звуки как язык. Чтобы улучшить точность распознавания речи, трансформер используют вместе с текстовыми декодерами.

Skyeng для этой задачи использовал языковую модель KenLM. Если модель находит несуществующее слово, она заменяет его на наиболее подходящее из уроков школы или ранее используемые слова в монологе ученика.

Как KenLM подбирает вероятно сказанное слово

Команда школы работала с моделью wav2vec 2.0, обученной на датасете Common Voice. Это набор записей с обычных микрофонов (телефонов, ноутбуков) — таких, какие потенциально будут использовать ученики Skyeng.

Подготовка данных для распознавания

Особенность датасета Common Voice — все записи там не превышают 15 секунд. В Skyeng же были записи гораздо длиннее. Чтобы модель могла с ними работать, команда разработала свой алгоритм для адаптивного поиска разделения файлов на фрагменты:

  1. Алгоритм ищет паузы продолжительностью 1,5 секунды и выше.
  2. Алгоритм разрезает запись по паузе, пока не получатся фрагменты меньше 15 секунд.

Важно! Склеивать полученные фрагменты обратно нельзя — это приводит к появлению лишних символов на стыке и запутывает модель.

Кроме того, Skyeng вырезает из аудио «пустоты» — например, моменты, когда человек задумался и молчал. Для такой предобработки были написаны несколько расширений для Python на языке RUST — это позволило ускорить процесс предобработки в 40 раз.

Также нужно было разделить всю речь ученика на русскую и английскую. Для этого взяли готовую модель на архитектуре 1D convolution + LSTM и обучили ее на все том же датасете Common Voice. Точность такой модели достигла 86%.

Обработка распознанных текстов

Чтобы перевести перечень слов в читабельный текст, Skyeng использовал готовую модель BERT для английского языка и собственную модель для русского. Обе модели делят слова на предложения и расставляют пунктуацию. С текстом в таком виде уже можно работать и оценивать его по трем параметрам, указанным в начале:

  1. Лексика. Оценивается, как часто используемые слова используют носители и в каком возрасте добавляют их в свой лексикон. Также определяется, насколько эти слова академические и насколько разнообразна речь.
  2. Грамматика. Парсер извлекает и определяет более 400 грамматических конструкций английского языка.
  3. Беглость речи. Измеряется соотношением плотности и скорости речи.

Отдельно оценивается произношение. Команда машинного обучения Skyeng главной задачей ставила определить, сможет ли понять ученика англоговорящий человек.

Для этого снова использовали датасет Common Voice — во всех его записях говорят носители языка. Модель wav2vec 2.0 считывает датасет побуквенно. Это дает возможность побуквенно оценить, как произносится то или иное слово. Затем остается сравнить с этой оценкой произношение ученика.

Этот подход дает возможность определить уровень от Beginner до Advanced с точностью до 96%.

Вот как это выглядит в тестовом режиме:

Система еще не запущена и в данный момент обучается на дополнительных записях людей с дефектами речи, чтобы работать еще эффективнее.

Останні статті

Обучение Power BI – какие онлайн курсы аналитики выбрать

Сегодня мы поговорим о том, как выбрать лучшие курсы Power BI в Украине, особенно для…

13.01.2024

Work.ua назвал самые конкурентные вакансии в IТ за 2023 год

В 2023 году во всех крупнейших регионах конкуренция за вакансию выросла на 5–12%. Не исключением…

08.12.2023

Украинская IT-рекрутерка создала бесплатный трекер поиска работы

Unicorn Hunter/Talent Manager Лина Калиш создала бесплатный трекер поиска работы в Notion, систематизирующий все этапы…

07.12.2023

Mate academy отправит работников в 10-дневный оплачиваемый отпуск

Edtech-стартап Mate academy принял решение отправить своих работников в десятидневный отпуск – с 25 декабря…

07.12.2023

Переписки, фото, история браузера: киевский программист зарабатывал на шпионаже

Служба безопасности Украины задержала в Киеве 46-летнего программиста, который за деньги устанавливал шпионские программы и…

07.12.2023

Как вырасти до сеньйора? Девелопер создал популярную подборку на Github

IT-специалист Джордан Катлер создал и выложил на Github подборку разнообразных ресурсов, которые помогут достичь уровня…

07.12.2023