С машинами на одном языке: как компьютеры «слышат» музыку и для чего используют этот навык

Эксперименты с генерацией музыки с помощью искусственного интеллекта начались еще в 50-х годах прошлого века. С тех пор нейросети научились «понимать» и распознавать песни, определять наши вкусы в стриминговых сервисах и даже писать музыкальные произведения на основании данных о движении небесных тел. Как искусственный интеллект работает со звуком и какие прорывные продукты, созданные «кибер-композиторами», мы будем использовать в будущем, рассказывают специалисты «Яндекса».
С машинами на одном языке: как компьютеры «слышат» музыку и для чего используют этот навык

Как компьютер «видит» звук?

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

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

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

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

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

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ
wikipedia.org
РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

Еще более наглядное объяснение этого процесса дается в рамках «Урока Цифры» от Яндекса — «Цифровое искусство: музыка и IT». В этом проекте эксперты компании рассказывают о музыкальной оцифровке, теории звука, системах рекомендаций в медиасервисах, а после теоретической части участники могут попробовать самостоятельно продолжить композицию. Уроки и задания предназначены для школьников, но взрослым они тоже будут интересны.

Как ИИ распознает музыку и рекомендует песни?

Способность искусственного интеллекта представлять музыку цифровым кодом нашла практическое применение в нашей жизни. Именно благодаря спектрограммам нейросети анализируют и распознают музыку, чтобы, например, с помощью Shazam находить похожие треки. Когда приложение «слышит» композицию, оно сравнивает ее спектрограмму со множеством других из базы данных и отыскивает совпадения. При этом искусственный интеллект распознает мелодию даже сквозь помехи вроде голосов за соседним столиком или шума машин.

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

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

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ
РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

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

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

Кроме треков, которые мы обычно слушаем, ИИ учитывает и данные о нашем поведении. Например, информация о том, что мы смотрим на «Кинопоиске», позволят предсказать, что мы захотим послушать в «Яндекс Музыке». Любите вестерны? Держите «The Good, the Bad and the Ugly» Эннио Морриконе. Также может учитываться и наше отношение к конкретным песням или исполнителям — сколько раз мы лайкнули композиции определенного жанра или определенного артиста, а какие песни, наоборот, оценили негативно или переключили в тот момент, когда нейросеть предложила нам их послушать. История взаимодействия с музыкой внутри сервиса складывается в статистику, которая помогает ИИ разобраться, что лучше порекомендовать конкретному человеку в тот или иной период времени.

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ
РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

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

«Сейчас одна из самых сложных задач – понять, как рекомендовать людям непопулярные треки, – рассказывает руководитель группы рекомендательных продуктов Медиасервисов Яндекса Даниил Бурлаков. – Если у нас есть суперизвестная песня, мы на основании статистики прослушивания можем представить, каким пользователям она будет интересна. Но когда мы имеем дело с треком, который послушало всего 100 человек, предположить, кому еще она может понравиться, гораздо сложнее. Это вопрос объема данных: в отличие от людей, машинам требуется больше информации для обучения. Если ее не очень много, остается только один путь — научить нейросети использовать имеющиеся данные и делать это более эффективно. На этом сейчас сосредоточено много усилий программистов».

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

Еще одна непростая задача — понять, возможно ли усовершенствовать систему рекомендаций не только за счет аналитики «внутри» сервисов, но и благодаря данным из внешнего мира. Например, можно ли использовать информацию о погоде в городах, чтобы предлагать пользователям музыку определенного жанра и настроения. Или зависит ли выбор музыки от устройства, на котором пользователь слушает композиции в конкретный момент. Если используются не наушники, а, скажем, колонка, значит ли это, что сейчас человек находится в компании? А если он находится в компании, значит ли это, что нейросетям стоит рекомендовать более лаконичные, обтекаемые и универсальные треки?

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ
РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

А что насчет создания собственного произведения?

Способность «видеть» музыку в формате цифрового кода и спектрограмм помогает искусственному интеллекту не только рекомендовать похожие треки, но и сочинять свои.

«Процесс "творчества" начинается с обучения: нейросети "показывают" большое количество музыкальных произведений, созданных человеком, она находит в них закономерности, а потом на основе этих данных создает что-то похожее, – рассказывает руководитель службы развития технологий медиасервисов "Яндекса" Анатолий Старостин. – Например, в 2019 году нейросеть "Яндекса" проанализировала 4 ГБ классической музыки — от Баха до Шнитке — и написала пьесу, которую впоследствии исполнил оркестр "Новая Россия"».

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

В прошлом году команда поставила перед собой еще более амбициозную задачу — перевести в музыку астрономические данные о небесных объектах. Так на свет появился альбом «Музыка звезд». Сначала астрофизики передали разработчикам информацию о космических телах: яркость, периодичность тех или иных явлений, параметры движения. Эти данные были сведены в таблицы, а затем преобразованы в нотный текст.

«Любую табличную информацию, например, об изменении какого-либо параметра во времени, можно перевести в нотную последовательность, потому что ноты — это, по сути, таблица. Так астрофизики предоставили нам сведения об изменении солнечной активности и количестве пятен на нем, начиная с 1960 года. Мы присваивали этим данным ноты, и таким образом получалась мелодия, — объясняет музыкальный продюсер Тимур Хазиев. — После чего нам оставалось лишь художественно доработать композиции, чтобы передать характер каждого объекта. Черная дыра — это что-то трагическое, мистическое. Солнце — что-то теплое. Так и получился альбом про космос, приуроченный ко Дню космонавтики».

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ
РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

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

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

«Музыка, которую генерирует нейросеть, — бесконечна, она не прерывается. То есть человеку не нужно отвлекаться на паузы между треками, на изменение динамики или настроения. Это помогает людям настроиться на нужный лад, — рассказывает Тимур Хазиев. — К примеру, музыка для пробежки генерируется в темпе 160 bpm, что соответствует средней скорости бега человека. И этот темп не меняется, пользователю не приходится подстраиваться и сбиваться с привычного такта. Все, что нужно, это выбрать "задачу", а алгоритм сгенерирует подходящий трек».

Что ждет нас в будущем?

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

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

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

В мире музыки нейросети умеют уже очень многое: распознавать, рекомендовать и генерировать композиции. Во многом этого удалось добиться благодаря «переводу» звука с человеческого языка на нейросетевой. Сложность, которую теперь предстоит решить, заключается в том, что машины четко следуют загруженному алгоритму. Люди же порой отступают от правил. Благодаря этому они находят среди миллиона треков что-то кардинально отличающееся от их музыкальных предпочтений, но западающее в душу, или пишут гениальные произведения, забывая про все каноны. Но объяснить компьютеру, когда и какими инструкциями стоит пренебречь, очень сложно. Возможно, именно в эту сторону будут развиваться технологии применения ИИ в музыке, а значит, нас ждет еще более увлекательное будущее.