Інтелектуальна система для створення музики за допомогою методів машинного навчання
Автор: Паньків Ігор Васильович
Кваліфікаційний рівень: магістр (ОНП)
Спеціальність: Системний аналіз (освітньо-наукова програма)
Інститут: Інститут комп'ютерних наук та інформаційних технологій
Форма навчання: денна
Навчальний рік: 2021-2022 н.р.
Мова захисту: українська
Анотація: З стрімким розвитком технологій машинного навчання та штучного інтелекту все більше і більше галузей почали застосовувати їх для вирішення буденних проблем. Ці технології мають дуже великий потенціал в майбутньому. Картинка нашого роботизованого світу, не такого далекого майбутнього, значною мірою залежить від нашої здатності успішно розгортати штучний інтелект. Однак перетворити машини на мислячі пристрої не так просто, як може здатися. Потужного штучного інтелекту можна досягти лише за допомогою машинного навчання, щоб допомогти машинам зрозуміти, як це роблять люди. Шлях штучного інтелекту та машинного навчання в музику почався відносно недавно, але це вже має великий вплив на музичну індустрію. Ця інтелектуальна система має на меті створювати музичні послідовності використанням методів машинного навчання. Користувач надає певні дані на вхід, та на виході отримує згенеровану музичну послідовність. Згенерована послідовність може бути програною у веб-програвачі, експортована як MIDI-файл та надіслана іншим користувачам посиланням. Через свою простоту і зручність інтелектуальна система спрощує та пришвидшує музичні процеси продюсерам та авторам-виконавцям. При аналізі наявних програмних рішень було визначено, що на даний момент не існує прямих аналогів інтелектуальної системи, які б задовольнили вимоги користувача. У результаті роботи було побудовано п?ять UML діаграм: діаграма класів, діаграма станів, діаграма прецедентів, діаграма розгортання та діаграма діяльності. Також було проведено системний аналіз інтелектуальної системи та побудова дерева цілей. На діаграмі класів зображені зв?язки між основними елементами бази даних. Діаграма станів відображає процес генерування музичних послідовностей. На діаграмі розгортання зображено загальну схему розгортання застосунку за допомогою сервісу хмарних обчислень. На діаграмі прецедентів зображено два класи акторів: гість та користувач. В обидвох класів акторів є доступним спільний функціонал, але користувач має декілька додаткових функцій, а саме: збереження музичних послідовностей та їх перегляд. Також було визначено та обґрунтовано завдання для створення інтелектуальної системи для генерування музики за допомогою методів машинного навчання. Було визначено, що інтелектуальна система призначена для всіх користувачів, які пишуть власні музичні композиції. Також було визначено місце застосування та обґрунтовано розробку інтелектуальної системи. Окрім цього, було розглянуто впровадження інтелектуальної системи, очікувані ефекти від впровадження та розроблено концептуальну модель. Основними функціями системи є безпосередньо генерування музичних послідовностей, експорт MIDI-файлів, можливість поділитись згенерованою послідовністю, відтворення згенерованої послідовності, операції з програвачем (перемотування, зациклення, повтор, вимкнення/увімкнення звуку), налаштування програвача, вхід в систему, перегляд історії послідовностей, перегляд вподобаних послідовностей. Визначено, що користувачі, які мають обліковий запис зможуть переглянути історію згенерованих послідовностей та зберігати вподобані музичні композиції. Дизайн інтелектуальної системи було описано з використанням десяти евристичних характеристик Нільсена. Для реалізації було розроблено масштабований та адаптований для майбутніх змін веб-застосунок з безсерверною архітектурою та нереляційною NoSQL базою даних. Для досягнення безсерверної архітектури було використано бібліотеку serverless та лямбда-вирази AWS Lambda functions. Клієнтська частина реалізовано за допомогою технології React. Для генерування музичних послідовностей були використані моделі бібліотеки @magenta/music MusicRNN та MusicVAE. Застосунок було розгорнуто за допомогою сервісу хмарних обчислень Amazon Web Services. Були використані передові сучасні технології, які дозволять легко масштабуватись та додавати новий функціонал в майбутньому. Об’єкт дослідження: процес генерації музики за допомогою методів машинного навчання. Предмет дослідження: моделі, методи і засоби машинного навчання для інтелектуальної системи генерування музики. Мета роботи: розробити інтелектуальну систему для створення музики за допомогою методів машинного навчання. Результати дослідження: ? здійснено аналіз літературних джерел; ? розглянуто наявні системи аналогів та їх особливості; ? проведено системний аналіз, у якому побудовано дерево цілей та UML-діаграми, визначено вимоги системи; ? обрано методи та засоби розробки запропонованої системи та описано структуру її бази даних; ? розроблено програмний продукт та представлено контрольний приклад роботи. Ключові слова - генерування музики, машинне навчання, інтелектуальна система