Что такое аудио-AI и зачем он нужен

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

Аудио-AI — это направление машинного обучения, в котором модели работают со звуком: распознают речь, синтезируют голос, классифицируют звуковые события и анализируют интонацию.

Когда вы диктуете сообщение голосом, просите умную колонку включить музыку или читаете автоматические субтитры под видео — за всем этим стоит аудио-AI. Это обширная область на стыке цифровой обработки сигналов (DSP) и глубокого обучения. У нас уже есть курсы по компьютерному зрению, NLP и больших языковых моделях — этот курс закрывает третью большую модальность: звук.

Зачем выделять звук в отдельную область

Картинка — это сетка пикселей, текст — последовательность токенов. Звук же — это непрерывный сигнал во времени: давление воздуха, которое меняется тысячи раз в секунду. У него нет готовых «слов» или «пикселей»: прежде чем подать звук в нейросеть, его нужно представить числами, а затем превратить в признаки, которые модель сможет понять. Поэтому аудио-AI всегда начинается с DSP, и без интуиции про сигналы дальше двигаться тяжело.

Кроме того, звук разворачивается во времени и обычно длиннее по числу отсчётов, чем текст по числу символов. Одна секунда речи — это 16000 чисел. Десять секунд — уже 160 тысяч. Это влияет и на архитектуры, и на стоимость вычислений.

Карта задач аудио-AI

Чтобы не потеряться, заранее разложим область на основные задачи — к каждой мы вернёмся подробно.

ЗадачаЧто делаетПример
ASR (распознавание речи)звук речи → текстголосовой ввод, субтитры
TTS (синтез речи)текст → звук голосаозвучка, ассистенты
Идентификация говорящегочей это голосбиометрия, разметка диалога
Диаризациякто и когда говорилпротокол совещания
Классификация звуковчто за звукстекло, лай, сирена
Анализ музыкижанр, темп, нотырекомендации, тегирование
Эмоции и анализ голосаинтонация, состояниеколл-центры, медицина

Как звук вообще попадает в модель

Общий конвейер почти любой аудио-задачи выглядит одинаково. Сначала микрофон превращает колебания воздуха в электрический сигнал, затем АЦП дискретизирует его в числа, потом из чисел считают признаки (чаще всего спектрограмму), и уже признаки идут в нейросеть.

звук  -->  [микрофон]  -->  [АЦП: дискретизация]  -->  числа (сэмплы)
                                                          |
                                                          v
   текст / метка  <--  [нейросеть]  <--  [признаки: спектрограмма]

В этом курсе мы пройдём по всей цепочке слева направо: сначала разберём, как звук становится числами, затем — как из чисел получают спектрограмму и мел-признаки, и только потом перейдём к самим моделям ASR, TTS и остальным.

Чуть-чуть «потрогать» звук кодом

Чтобы аудио перестало быть абстракцией, посмотрим на простейшее: звук как список чисел. Сгенерируем 8 отсчётов синусоиды и посчитаем их — это и есть «звук» в самом сыром виде.

import math

# 8 отсчётов одного периода синусоиды
n = 8
samples = [round(math.sin(2 * math.pi * i / n), 3) for i in range(n)]
print("Сэмплы:", samples)
print("Минимум:", min(samples), "Максимум:", max(samples))

Вывод:

Сэмплы: [0.0, 0.707, 1.0, 0.707, 0.0, -0.707, -1.0, -0.707]
Минимум: -1.0 Максимум: 1.0

Эти восемь чисел и есть звуковая волна, просто очень короткая. В следующих уроках мы научимся читать в таких числах громкость, частоту и форму волны.

Есть и третье принципиальное отличие. Текст уже несёт смысл: токен «кот» — это сразу понятие. Пиксель хотя бы привязан к месту в кадре. А отдельный звуковой отсчёт сам по себе не значит ничего — смысл рождается только из того, как меняется целая последовательность тысяч отсчётов. Поэтому в аудио особенно важен контекст во времени: одно и то же мгновенное значение амплитуды встречается и в тишине, и на пике крика. Модель обязана смотреть на форму сигнала, а не на отдельные числа.

Наконец, звук физически непрерывен, и любая оцифровка — это компромисс: мы заведомо что-то теряем, выбирая, как часто и насколько точно замерять сигнал. У текста такой проблемы нет: буква «а» записывается без потерь. Понимание этих компромиссов (мы разберём их в следующем разделе) объясняет половину практических проблем аудио-AI — от хрипящих записей до моделей, которые «не слышат» тихую речь.

Как работает под капотом

Под капотом современная аудио-модель почти никогда не работает с сырыми сэмплами напрямую (хотя есть и такие — например, end-to-end модели на волне). Чаще сигнал превращают в спектрограмму — картинку, где по горизонтали время, по вертикали частота, а яркость показывает силу. Получается, что задача «слушать» во многом сводится к задаче «смотреть на картинку звука», и тут аудио-AI заимствует архитектуры у компьютерного зрения (свёртки, трансформеры).

Частые ошибки

  • Думать, что звук — это «как текст». Нет: текст дискретен и короток, звук непрерывен и в тысячи раз длиннее по отсчётам.
  • Пропускать DSP-основы. Без понимания дискретизации и спектра модели ASR/TTS кажутся магией, а ошибки — необъяснимыми.
  • Путать задачи. ASR (речь в текст) и идентификация говорящего (чей голос) — разные задачи; одна модель не решает обе автоматически.

Итоги

  • Аудио-AI — третья большая модальность рядом с текстом и изображениями.
  • Звук — непрерывный сигнал во времени, который сначала дискретизируют, потом превращают в признаки.
  • Главные задачи: ASR, TTS, идентификация говорящего, диаризация, классификация звуков, музыка, эмоции.
  • Общий конвейер: микрофон → АЦП → числа → признаки → нейросеть.
Проверьте себя
1. Чем звук принципиально отличается от текста как данные для модели?
AНичем, это та же последовательность токенов
BЗвук — непрерывный сигнал во времени, который нужно дискретизировать в числа
CЗвук всегда короче текста
DЗвук нельзя представить числами
2. Какая задача описывается как «звук речи → текст»?
ATTS
BДиаризация
CASR
DКлассификация звуков
3. Почему аудио-модели часто заимствуют архитектуры из компьютерного зрения?
AПотому что звук превращают в спектрограмму — по сути картинку
BПотому что звук и картинки одинаковы по природе
CПотому что у звука есть цвет
DЭто случайное совпадение