🎯 О чём этот конспект: Разбор практического эксперимента по использованию инструмента auto-research Андрея Карпатого для обучения мини-модели генерации музыки. В видео показано, как AI-агент самостоятельно выдвигает гипотезы, меняет гиперпараметры и превращает «хаотичный шум» в осмысленные ирландские фолк-мелодии за короткий цикл обучения.
👤 Кому будет полезно: Вайбкодерам, AI-инженерам и разработчикам, использующим Claude Code или Cursor для автоматизации обучения моделей (LLM) на специфических данных.
✨ Что получите: Пошаговый алгоритм настройки auto-research для работы с нестандартными датасетами, понимание ключевых метрик (BPB) и готовый набор оптимизаций для малых структурированных данных.
1. Подготовка окружения и данных в формате ABC notation
Контекст: Для эксперимента используется формат ABC notation — это текстовое представление нот, которое идеально подходит для обучения языковых моделей, так как музыка превращается в последовательность символов. Автор использует форк репозитория auto-research для Windows и датасет Sanderwood’s Irishman (традиционный ирландский фолк). Важно правильно подготовить скрипт prepare.py, чтобы токенизатор корректно обработал музыкальную нотацию.
Выгода: Быстрый старт обучения на специфическом домене (музыка) без ручного написания архитектуры нейросети.
Как применить:
Шаг 1: Клонирование и установка — Используйте Claude Code или терминал для клонирования репозитория и установки зависимостей.
Шаг 2: Адаптация данных — Попросите AI-агента (Claude) изменить prepare.py под ваш текстовый датасет.
Шаг 3: Запуск базовой линии — Выполните 5-минутное тренировочное ралли для получения метрики Baseline Val BPB (Bits Per Byte).
# Пример команд для Claude Code/run git clone https://github.com/karpathy/auto-research.git/run pip install -r requirements.txt# Промпт для Claude:"Adjust the prepare.py script to accommodate the Irishman ABC notation sheet music dataset. Download the data and train the tokenizer."
Результат: Готовый к обучению датасет и базовый показатель BPB (в видео старт с 2.08 — это «белый шум»).
2. Стратегия оптимизации: Меньше — значит лучше
Контекст: Главный инсайт эксперимента — для малых и высокоструктурированных датасетов (как ноты) огромные модели работают хуже. AI-агент обнаружил, что увеличение глубины (depth) только замедляет обучение и ухудшает результат. Ключевым фактором стала пропускная способность (throughput): модель должна успеть «увидеть» данные как можно больше раз за отведенное время.
Выгода: Снижение Val BPB с 2.08 до 0.97 (улучшение на 53%) и получение чистой мелодии вместо шума.
Как применить:
Шаг 1: Уменьшение Batch Size — Это дало самый большой скачок. Уменьшение размера батча позволяет модели чаще обновлять веса.
Шаг 2: Снижение Aspect Ratio — Уменьшение сложности «вопросов», которые головы внимания (attention heads) задают тексту, делает модель быстрее.
Шаг 3: Настройка Warm-up — Установите фазу «прогрева» (линейное увеличение Learning Rate) на уровне 5% для стабилизации ранних этапов обучения.
Ключевой конфиг победителя:
Результат: Модель, которая генерирует когерентные музыкальные фразы с правильной структурой тактов и аккордами.
3. Работа с механизмом внимания (Window Pattern)
Контекст: Автор тестировал гипотезу о том, что для коротких музыкальных фрагментов полное внимание (когда каждое слово «смотрит» на все остальные) избыточно. Была предпринята попытка использовать Sliding Window Attention (скользящее окно), где токен видит только ближайших соседей.
Выгода: Понимание границ применимости локального внимания. В данном эксперименте это не дало профита, что доказывает: даже в коротких мелодиях важны долгосрочные связи (повторы тем, структура всей пьесы).
Как применить:
Если ваш датасет состоит из очень коротких и независимых чанков, попробуйте изменить window_pattern на SSS (все слои со скользящим окном).
Если результат ухудшается (как в видео), вернитесь к стандартному паттерну, где последний слой имеет полный обзор (Global Attention).
Результат: Подтверждение того, что музыка требует глобального контекста даже при малом размере модели.
FAQ
В: Что такое BPB и почему это важно? О: BPB (Bits Per Byte) — это метрика «удивления» модели. Чем она ниже, тем лучше модель предсказывает следующий символ. В видео снижение с 2.0 до 0.97 означало переход от случайного набора букв к структурированной музыке.
В: Почему маленькая модель оказалась лучше большой? О: На малых датасетах большая модель не успевает пройти достаточное количество итераций (optimizer steps) за ограниченное время. Маленькая модель «пробегает» по данным многократно, лучше усваивая закономерности.
В: Что такое ABC notation? О: Это текстовый формат записи музыки, где буквы (A-G) обозначают ноты, а цифры — их длительность. AI-моделям проще работать с таким форматом, чем с бинарными MIDI или аудиофайлами.
В: Как Claude Code помогает в этом процессе? О: Claude Code выступает в роли «оркестратора»: он читает код репозитория, сам запускает эксперименты, анализирует логи, меняет гиперпараметры в файлах и перезапускает обучение, пока не найдет лучший результат.
В: Можно ли запустить это на обычном ноутбуке? О: Да, автор использовал GPU среднего сегмента в ноутбуке. Благодаря оптимизации размера модели (уменьшение batch size и глубины), обучение проходит очень быстро.
Конспект создан на основе видео «AI Agent Optimizes a Model for Sheet Music» канала [Sanderwood]. Все права на оригинальный материал принадлежат авторам.Источник: https://youtu.be/-Ip9EtoBjbk