Научная статья на тему 'Оптическое распознавание музыкальной транскрипции с помощью методов машинного обучения'

Оптическое распознавание музыкальной транскрипции с помощью методов машинного обучения Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
295
58
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МАШИННОЕ ОБУЧЕНИЕ / ГЛУБОКОЕ ОБУЧЕНИЕ / РАСПОЗНАВАНИЕ МУЗЫКАЛЬНОЙ ТРАНСКРИПЦИИ / МУЗЫКАЛЬНАЯ НОТАЦИЯ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Казаков Сергей Георгиевич, Барташевич Алексей Андреевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Оптическое распознавание музыкальной транскрипции с помощью методов машинного обучения»

ОПТИЧЕСКОЕ РАСПОЗНАВАНИЕ МУЗЫКАЛЬНОЙ ТРАНСКРИПЦИИ С ПОМОЩЬЮ МЕТОДОВ МАШИННОГО ОБУЧЕНИЯ Казаков С.Г.1, Барташевич А.А.2

1Казаков Сергей Георгиевич - магистрант; 2Барташевич Алексей Андреевич - магистрант, кафедра компьютерных систем и сетей, Белорусский государственный университет информатики и радиоэлектроники г. Минск, Республика Беларусь

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

Ключевые слова: машинное обучение, глубокое обучение, распознавание музыкальной транскрипции, музыкальная нотация.

Введение. Задача хранения и передачи музыки традиционно решалась через использование различных музыкальных нотаций, в зависимости от региона, страны и языка. В XVII эта проблема была решена переходом к современной музыкальной нотации. В связи с переходом от бумажных носителей к цифровым возникла проблема оцифровки музыкальной нотации. Однако, процесс распознавания музыкальной нотации с бумажных носителей и переноса в цифровые форматы все еще требует значительных улучшений. Для автоматизации этого процесса можно использовать нейронные сети, которые позволяют эффективно работать с изображением и решать задачи без формальной постановки, обучаясь на примерах.

Таким образом, возникает задача оптического распознавания музыкальной транскрипции с помощью методов машинного обучения. В центре задачи оптического распознавания музыки (Optical music recognition) или музыкальной нотации стоит распознавание символа со всеми его характеристиками и перевод в структурированный формат. Представленная в данной работе система описывает простейший принцип работы с распознаванием символов.

1. Проблема оптического распознавания символов

За последние годы с развитием технологии компьютерного зрения сверточные нейронные сети основанные на технологии глубокого обучения применяются повсеместно и достигли хороших результатов. За это время появилось огромное количество алгоритмов для обнаружения объектов, такие как YOLO, SSD и retina-net. Применение сверточных нейронных сетей позволяет достичь высокой скорости распознавания и концентрируется на одном объекте. Такой подход показывает высокую точность на небольших символах, однако, демонстрирует плохие результаты при определении границ сложных или больших символов.

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

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

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

2. Реализация нейронной сети

Для обучения сети использовался формат структурирования нот в цифровой вид -MusicXML. Данные использовались из открытого источника MuseScore, были использованы порядка 7,000 сгенерированных и размеченных данных. Для обучения сети использовались 80%, а оставшиеся 20% для тестирования и проверки конечных результатов работы сети.

Для приближения процесса распознавания музыкальной нотации к изображениям из реального мира использовались различные способы добавления шума и искажений исходных изображений. Такие как размытие по Гауссу, поворот изображения, искажение перспективы, изменение насыщенности, цвета и контрастности.

3. Сложности распознавания нотной нотации

Современная музыкальная нотация содержит различные символы описания музыкальных композиций: линии, ключи, артикуляции и т.д. В данной работе рассматривается распознавание набора основных символов, достаточного для записи большинства музыкальных композиций. Сложность оптического распознавания символа музыкальной нотации состоит не только в определении его класса, но и его продолжительности и высоты звука (см. рис. 1).

Произвольный размер такта

3

4

диез бемоль бекар

ft b 4

Длительность ноты

^ }\ h J I

9 1 9 9 d О

Длительность паузы

Ц 7 t > - -

Рис. 1. Классификация символов музыкальной нотации, ноты и паузы различной длительности,

относятся к одному классу

4. Архитектура сети

Входными данными для нашей модели будут изображения (всей партитуры, либо её части). На выход будем получать карту признаков, полученную из серии витков, остаточной функции и объединения всех операций. Карта признаков будет содержать длительность ноты, высоту звука и границы символа.

В своей архитектуре мы использовали обученную модель darknet53 в сети YOLO для получения карты признаков после нахождения объектов. Структура darknet53 содержит 5 частей, преобразующая и увеличивающая объекты в 8 раз, для точного получения признаков даже на небольших символах, а после на верхнем уровне проводится слияние для получения достоверной информации.

После обработки изображения с помощью сети YOLO, мы получаем N-мерную карту признаков, состоящую из векторов, сгенерированную на основе каждого пикселя. Каждый 7-мерный вектор включает в себя точность, координаты, класс символа, категория высоты звука, категория длительности ноты целевых признаков

(см. рис. 2). Для определения лучших размеров границ объекта используется метод к-средних.

Рис. 2. 7-мерный вектор признака

Функция потерь строится на ошибках при определении каждого их признаков, по формуле:

loss(tot) = loss(c) + loss(x) + loss(y) + loss(w) +loss(h) + loss(d) + loss(p) + loss(conf) loss(c) - функция потерь для определения класса символа, которая строится на основе бинарной перекрестной энтропии. При определении границ объекта используются 4 значения координат из вектора признаков (t(x), t(y), t(w), t(h), генерируемые функцией активации. Функцией потери для координат является функция перекрестной энтропии, использующая координаты в левом верхнем углу изображения и разницу между предсказанными координатами. Схожая задача при вычислении функции потерь для длительности и высоты звука при помощи перекрестной энтропии.

Для каждого витка определения границ символа мы использовали порог точности в 0.6. Данный порог способствовал процессу распознавания, путем предотвращения искажения результатов соседними символами, границы которых пересекались с целевым символом. Результаты таких витков полностью игнорировались. 5. Результаты

Рассмотрим результаты, полученные в процессе обучения и корректировки ошибок. Для подсчета точности обученной сети использовались значения: точность определения длительности, точность высоты звука и верное определение класса символа. При корректном определении всех трех значений тест засчитывался за positive samples (TS), в противном случае засчитывался negative samples (NS). Точность рассчитывалась по формуле: accuracy = TS / TS + NS

Тип Средняя точность

Диез 0.96

Бемоль 0.93

Бекар 0.92

ключ Соль 0.98

ключ Фа 0.96

ключ До 0.86

Тактовая черта 0.9

Размер такта 0.82

Ноты 0.91

Паузы 0.92

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

Список литературы

1. Redmon J., Farhadi A. YOLOv3: An Incremental Improvement. arXiv 2018, arXiv:1804.02767.

2. Pacha A., HajiC,J. Calvo-Zaragoza, J. A Baseline for General Music Object Detection with Deep Learning.Appl. Sci. 2018,8, 1488. doi:10.3390/app8091488.

3. Tuggener L., EleziI., Schmidhuber J., PelilloM., Stadelmann T. DeepScores—A Dataset for Segmentation,Detection and Classification of Tiny Objects. arXiv 2018, arXiv:1804.00525.

4. Van der Wel E.; Ullrich K. Optical Music Recognition with Convolutional Sequence-to-Sequence Models.arXiv 2017, arXiv:1707.04877.

5. Calvo-Zaragoza J., Rizo D. End-to-End Neural Optical Music Recognition of Monophonic Scores. Appl. Sci. 2018, 8, 606. doi:10.3390/app8040606.

6. Сегментация текстовых строк документов на символы с помощью свёрточных и рекуррентных нейронных сетей. [Электронный ресурс]. Режим доступа: https://habr.com/ru/company/smartengines/blog/328000/ (дата обращения: 20.10.2019).

7. Компьютерное зрение в промышленности. Лекция в Яндексе. [Электронный ресурс]. Режим доступа: https://habr.com/ru/company/yandex/blog/422087/. (дата обращения: 21.10.2019).

i Надоели баннеры? Вы всегда можете отключить рекламу.