Американские разработчики создали алгоритм, который наблюдает за беззвучным видео игры на фортепиано и синтезирует восстановленный звук. Статья была представлена на конференции NeurIPS 2020.
Звук, производимый музыкальным инструментом во время исполнения мелодии, складывается из множества параметров: особенностей самого инструмента, исполняемой композиции, особенностей движений музыканта во время игры. Зная, как звучит конкретный музыкальный инструмент, человеку или алгоритму должно быть достаточно видеозаписи игры на нем, чтобы достаточно точно восстановить получающийся звук, но фактически разработчики компьютерных алгоритмов для этой задачи сталкиваются с трудностями.
Разработчики из Вашингтонского университета под руководством Эли Шлицермана (Eli Shlizerman) создали алгоритм для озвучивания игры на фортепиано, который учитывает не только сам факт нажатия клавиш, но и продолжительность. Алгоритм состоит из трех основных частей и они работают следующим образом. Сначала алгоритм Video2Roll получает на вход по пять последовательных кадров из видеозаписи, на которой сверху снята клавиатура и кисти рук музыканта. Этот алгоритм основан на сверточной нейросети ResNet18 и дополнен модулем внимания, позволяющими ему с большей вероятностью замечать нажатые клавиши, которые занимают лишь очень небольшую долю от всего кадра, и обучаемым корреляционным модулем, который позволяет ему обучаться наиболее частым комбинациям нажатий клавиш.
На выходе из Video2Roll образуется цифровой аналог перфорированного рулона для механического фортепиано — временная последовательность нажатых клавиш. По своей структуре она напоминает MIDI-последовательность, которую повсеместно используют в музыке, однако у нее есть важное отличие, вытекающее из принципа работы предыдущего алгоритма. Дело в том, что за один «цикл» он работает только с пятью кадрами, находит на них нажатые клавиши и помечает их на «рулоне» как активные. Но пять кадров охватывают небольшой промежуток времени и не учитывают, что клавиша, зажатая на этих пяти кадрах могла быть зажата уже относительно долго и она уже не участвует в формировании звука.
Для исправления этого недостатка «сырые» данные с алгоритма Video2Roll передаются на генеративно-состязательную нейросеть Roll2Midi, которая отсекает клавиши, не участвующие в формировании звука. Обычно в задачах по машинному обучению разработчики берут для обучения алгоритма реальные данные и формируют из них обучающую выборку. Для фильтрования MIDI-представления мелодии реальными данными могли бы служить MIDI-последовательности, записанные во время игры на синтезаторе. Авторы решили не ограничивать себя этим подтипом фортепиано и вместо этого сами создали псевдореальные MIDI-последовательности из аудиозаписей игры на фортепиано при помощи алгоритма, разработанного другими исследователями в 2017 году.
После того как данные мелодии отфильтрованы, происходит последний этап — превращение их в звук. Для этого разработчики воспользовались двумя алгоритмами: известной программой
и нейросевым генератором звука PerfNet, обученном на собранных ими данных.
Разработчики проверили эффективность алгоритмов при помощи простого теста: они вопроизводили синтезированный звук, распознавали его с помощью Sound Hound и замеряли долю корректных распознаваний композиций. Самые высокие результаты получила связка из фильтрующего алгоритма Roll2Midi и синтезатора FluidSynth — 73,9 процента корректно распознанных композиций. При этом авторы отмечают, что, несмотря на сильные артефакты, звук с нейросетевого синтезатор PerfNet получается более «эмоциональным».
В 2018 году группа исследователей под руководством Эли Шлицермана создала другой алгоритм для работы с музыкальными композициями: она научила нейросеть предсказывать движения рук музыкантов по аудиозаписи.
Григорий Копиев
Она обучалась на библейских текстах
Компания Meta* выпустила языковую модель, которая понимает устную речь. Она распознает более 4000 языков и может разговаривать на 1107 из них. Meta считает, что модель поможет сохранить языковое разнообразие в мире. Статья опубликована на сайте компании, код модели доступен на гитхабе. Обычно модели распознавания речи обучаются на больших объемах данных: им требуются тысячи часов аудиозаписей. При этом каждой записи должен соответствовать текст, чтобы модель научилась сопоставлять звучащую и письменную речь. Такие большие датасеты можно собрать только для популярных языков, на которых говорит много людей. Всего в мире существует около 7000 языков, но современные системы распознавания речи поддерживают не более 200 из них. Команда инженеров из компании Meta под руководством Майкла Аули (Michael Auli) обучила большую модель для распознавания речи Massively Multilingual Speech (MMS), которая может общаться на 1107 языках и распознавать 4017. Нейросеть обучалась на религиозных записях. Исследователи собрали два датасета: один с аудиозаписями и соответствующими текстами и второй только с аудиозаписями. Первый датасет состоит из 55 тысяч аудиозаписей, на которых люди зачитывают вслух тексты из Нового Завета. Всего в Новом Завете 27 книг и 260 глав. Данные собирали из трех источников: Faith Comes By Hearing, GoTo.Bible и YouVersion. Во второй датасет попали 7,7 тысяч часов аудиозаписей с сайта Global Recordings Network: это религиозные песни, записи отрывков из Библии и других религиозных текстов. Для обучения использовали нейросеть архитектуры wav2vec 2.0. Сначала ее предобучили, чтобы она могла превращать аудиозаписи в векторные представления. Дело в том, что нейросети работают не с сырыми записями, а с векторами — наборами чисел. Поэтому нужен механизм для превращения аудиозаписей в вектора из чисел, причем похожие аудиозаписи должны быть представлены геометрически близкими векторами. Для получения векторных представлений можно использовать любые аудиозаписи, главное чтобы их было много. Поэтому ученые объединили второй религиозный датасет с другими большими аудиодатасетами, в том числе Multilingual Librispech, CommonVoice, VoxLingua-107, BABEL и VoxPopuli. Всего в выборку попала 491 тысяча часов аудиозаписей без текстов. После предобучения получилась готовая модель MMS. Затем авторы натренировали MMS превращать речь в текст, дообучив ее на первом религиозном датасете с аудиозаписями и текстами. В разных частях света распространены разные типы языков, поэтому авторы определили точность модели для языков с разных континентов. Она научилась распознавать речь на 1107 языках со средней точностью по континенту 97 процентов. Авторы также проверили качество распознавания речи на нерелигиозных аудиозаписях. MMS сравнили с лучшими моделями для распознавания речи Whisper от OpenAI и USM от Google на датасете FLEURS. MMS ошибалась в два раза меньше, чем Whisper и на 6 процентов меньше, чем USM. В задаче определения языка MMS оценивали на датасетах FLEURS, VoxLingua-107, BABEL и VoxPopuli, в которые входит до 107 языков. К предобученной модели приделали простой линейный слой-классификатор, который натренировали определять язык на аудиозаписи. Модель показала такое же качество, как и конкурентные модели. При увеличении числа распознаваемых языков до 4000 с помощью дообучения на религиозных датасетах, качество модели падает совсем немного, с 94 до 93 и с 84 до 80 процентов на разных датасетах. Также авторы оценили, насколько хорошо MMS генерирует речь на 1107 языках, которые она умеет превращать в текст. Для этого модель обучили на архитектуре VITS — на момент создания MMS эта нейросеть показывала лучшие результаты по генерации звучащей речи на трех языках: английском, португальском и французском. Авторы масштабировали ее до 1107 языков, но в отличие от других задач, обучали нейросеть для каждого языка по отдельности. Качество модели оценили на языках по континентам. Средняя точность генерации речи по континенту составила 98 процентов. Лучше всего модель говорит на европейских и южноамериканских языках, хуже всего — на африканских. Наконец, ученые проверили, не повлиял ли характер религиозных датасетов на качество модели. Для этого нейросеть обучили отдельно на религиозных текстах и на повседневной речи из датасета FLEURS. Затем каждая модель должна была преобразовать звучащую повседневную речь из датасета FLEURS в текст. Хотя в обучающей выборке MMS было много религиозных терминов, в текстах она использовала их ненамного (менее чем на процент) чаще, чем модель, обучения на нерелигиозном датасете. На графике показана частота религиозных терминов в обучающей выборке и при превращении речи в текст. Разница между двумя моделями почти не заметна, хотя и немного отличается для некоторых языков. Качество модели оценивали в трех экспериментах, но задач по пониманию и генерации звучащей речи существует гораздо больше. В работе не указано, насколько хорошо большая мультиязычная модель проявила бы себя в более сложных задачах, таких как перевод, определение темы высказывания или поиск ключевых слов. Хотя MMS работает с большим числом языков, чем конкурентные модели, она пока не понимает все 7000 языков мира. Ученые планируют добавить в модель более редкие языки с малым количеством носителей. Они считают, что это может помочь спасти исчезающие языки от вымирания. Кроме того, в данных недостаточно представлены диалекты разных языков. В даркнете тоже говорят на своем языке, вернее на сленге. Обычные языковые модели плохо его понимают. Южнокорейские ученые обучили нейросеть DarkBERT читать тексты из даркнета и выполнять по ним задачи, связанные с кибербезопасностью. *Деятельность компании Meta запрещена в России.