С машинами на одном языке: как компьютеры «слышат» музыку и для чего используют этот навык
Эксперименты с генерацией музыки с помощью искусственного интеллекта начались еще в 50-х годах прошлого века. С тех пор нейросети научились «понимать» и распознавать песни, определять наши вкусы в стриминговых сервисах и даже писать музыкальные произведения на основании данных о движении небесных тел. Как искусственный интеллект работает со звуком и какие прорывные продукты, созданные «кибер-композиторами», мы будем использовать в будущем, рассказывают специалисты «Яндекса».
Как компьютер «видит» звук?
Чтобы машина могла распознать или даже написать мелодию, ей необходимо познакомиться с сотнями музыкальных примеров. Но как поместить звук внутрь компьютерной нейросети, каким образом она может их воспринять? Вспомним учебник физики за девятый класс: источником звука всегда является колеблющееся тело. Это может быть мембрана барабана, натянутая струна или диффузор динамика в наших колонках. Колебания этих тел передаются по воздуху в виде множества волн, попадают на барабанную перепонку человека, раздражают окончания слуховых нервов, и мы слышим звук.
У машины этот процесс протекает иначе. Чтобы она «услышала» музыку, ее нужно преобразовать в набор цифр, понятный компьютеру. Преобразование в цифровой код происходит благодаря процессам дискретизации и квантования. Информация приходит в компьютер в виде непрерывной звуковой волны, «переведенной» в электрический ток. Чтобы описать ее на языке цифр, специальный преобразователь «нарезает» эту волну на очень маленькие отрезки длиной в несколько миллисекунд. Это дискретизация — процесс, когда непрерывная волна становится поделенной на части, то есть дискретной. Однако даже в самых крохотных отрезках звук представляет собой продолжительный кусочек волны. Для удобства преобразователь «округляет» его значения, измеренные во время дискретизации, и представляет в виде точки. Такой процесс называется квантованием.
В итоге вся волна превращается в набор точек, которым остается только присвоить цифровые коды. Другими словами, мы получаем большой набор цифр, описывающий каждый фрагмент песни. Эти числа можно внести в одну большую таблицу, а можно отобразить наглядно в виде спектрограммы. Так называют графическое изображение звуков в системе координат, где по вертикальной оси располагаются звуковые частоты (от высоких звуков до низких), а по горизонтальной — время. Чем теплее и ярче цвет на спектрограмме, тем интенсивнее звук в этом месте. Описать спектрограмму словами непросто, так что лучше сразу посмотрите, как она выглядит.
Еще более наглядное объяснение этого процесса дается в рамках «Урока Цифры» от Яндекса — «Цифровое искусство: музыка и IT». В этом проекте эксперты компании рассказывают о музыкальной оцифровке, теории звука, системах рекомендаций в медиасервисах, а после теоретической части участники могут попробовать самостоятельно продолжить композицию. Уроки и задания предназначены для школьников, но взрослым они тоже будут интересны.
Как ИИ распознает музыку и рекомендует песни?
Способность искусственного интеллекта представлять музыку цифровым кодом нашла практическое применение в нашей жизни. Именно благодаря спектрограммам нейросети анализируют и распознают музыку, чтобы, например, с помощью Shazam находить похожие треки. Когда приложение «слышит» композицию, оно сравнивает ее спектрограмму со множеством других из базы данных и отыскивает совпадения. При этом искусственный интеллект распознает мелодию даже сквозь помехи вроде голосов за соседним столиком или шума машин.