Майкл Катберт: «Извлечение признаков — это процесс превращения музыки в зомби»

MIT OpenCourseWare 788 1 ч 10 мин 3 мин 15.10.2025
Главное

Извлечение признаков (Feature Extraction) и машинное обучение в музыке — центральная тема 27-й лекции курса MIT «Computational Music Theory». Преподаватель Майкл Катберт (Michael Cuthbert) представляет этот этап как «необходимое зло», превращающее живое звучание в сухие цифры, без которых работа современных ИИ-алгоритмов невозможна.

🎹 Извлечение признаков: Музыка как набор чисел 8:58

По определению Майкла Катберта, извлечение признаков — это процесс конвертации музыкальных элементов в числа, массивы, векторы или тензоры . Несмотря на то что этот процесс может показаться скучным, Катберт называет его критически важным этапом, так как любые алгоритмы глубокого обучения работают исключительно с числовыми данными .

Для демонстрации процесса используется корпус произведений И. С. Баха (в частности, хорал BWV 66.6). Ручное извлечение признаков может выглядеть просто: например, определение количества голосов или размера . Однако для работы с большими данными требуются автоматизированные экстракторы на Python.

Стек инструментов и ПО:

⚖️ Этические дилеммы и «Sentinel Values» 14:45

Создание автоматических инструментов неизбежно сталкивает программиста с этическими и техническими проблемами.

  1. Проблема отсутствующих данных: Если в партитуре нет размера (например, в григорианском хорале), программа может выдать ошибку. Катберт предлагает возвращать «сигнальные значения» (sentinel values), такие как 0, 0 . Это предотвращает падение системы при многочасовых вычислениях в облаке.
  2. Риск «проглатывания» ошибок: Сигнальные значения могут скрыть за собой дефекты в логике программы. Например, игнорирование аккордов при поиске высоты тона может привести к потере важной части данных .
  3. Социокультурная предвзятость ИИ: Катберт подчеркивает, что технические допущения программистов (например, в системах распознавания лиц) часто приводят к дискриминации меньшинств. В музыкальном анализе это проявляется в игнорировании незападных или внеметровых традиций .

🎻 Кейс: Отличие Жиги от Рила 18:34

Основная практическая задача лекции — построение системы, способной отличить жанр «жига» (jig) от жанра «рил» (reel) на основе коллекции Райана (Ryan’s Mammoth Collection). Это собрание содержит около 1050 скрипичных мелодий XIX века .

Ключевые признаки, выделенные студентами и преподавателем:

Преподаватель предупреждает о проблеме «Ground Truth» (эталонной истины). Если жанр в названии файла указан неверно или два эксперта спорят о классификации, ИИ получит «грязные» данные, на которых невозможно построить точную модель .

🤖 Обучение классификатора и оценка точности 45:07

После того как признаки извлечены и сохранены в текстовый файл с разделителями (TSV), данные делятся на тренировочную и тестовую выборки .

В работе используются два типа «учеников» (Learners):

  1. Majority Learner: Контрольная группа. Он просто всегда выдает самый частый класс из выборки (например, «это всегда жига») . Если ваш алгоритм не показывает результат выше Majority Learner, он бесполезен.
  2. K-Nearest Neighbors (KNN): Алгоритм, который классифицирует объект, анализируя ближайших «соседей» в многомерном пространстве признаков .

Результаты эксперимента:

Катберт поясняет этот парадокс: на малых наборах данных избыток сложных признаков («кухонная раковина») только вредит. Эффективнее использовать несколько, но глубоко продуманных музыкальных характеристик .

🔍 Дерево решений: Бах против Монтеверди 1:02:14

В финальной части лектор сравнивает кораллы Баха и мадригалы Монтеверди. Вместо «черного ящика» нейросетей он предлагает использовать Decision Tree (дерево решений), которое наглядно показывает логику ИИ .

Признаки, которые нашел компьютер для отделения Баха (с точностью 99%):

Однако Катберт разоблачает этот успех: ИИ на самом деле не «понял» музыку. Он отследил привычки современных редакторов, которые по-разному записывали размеры и расставляли тактовые черты для композиторов разных эпох . Аналогичный пример приводится с классификатором аудио: ИИ научился различать не жанры, а типы микрофонов, характерные для кантри или хип-хопа .

💬 Цитаты

«Извлечение признаков сосет кровь из музыки. Все, что вы любите в ней, превращается в несколько цифр — это зомби музыкального мира.»

Майкл Катберт 09:39

«Компьютер не выучил разницу между Бахом и Монтеверди; он выучил разницу между современным редактором Баха и редактором Монтеверди.»

Майкл Катберт 1:08:13
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Feature Extraction
Процесс преобразования сырых данных (нот или аудио) в набор числовых характеристик для алгоритмов.
Ground Truth
Набор данных, которые считаются абсолютно верными и используются как эталон для обучения классификатора.
Majority Learner
Простейший классификатор, который всегда предсказывает наиболее часто встречающийся класс в данных.
K-Nearest Neighbors (KNN)
Алгоритм классификации, который относит объект к тому классу, к которому принадлежит большинство его ближайших соседей в пространстве признаков.
📊 Цифры
⚖️ Другая сторона
Искусственный интеллект MIT OpenCourseWare Music21 Orange 3 Майкл Катберт Feature Extraction