🤖 Программная разметка данных: как Snorkel AI меняет подход к машинному обучению 1:54
В современном мире машинного обучения (Machine Learning, ML) качество и количество размеченных данных стали главным узким местом. Вместо ручной разметки миллионов примеров, что требует колоссальных затрат времени и средств, исследователи предлагают использовать программный подход. В центре этой трансформации стоит Алекс Ратнер, доцент Вашингтонского университета и сооснователь Snorkel AI. Вместе с ведущим подкаста Eye on AI Крейгом Смитом он обсуждает, как автоматизация подготовки обучающих выборок с помощью «слабого наблюдения» (weak supervision) позволяет компаниям быстрее создавать сложные модели, не полагаясь исключительно на ручной труд.
📉 Кризис «данных» в глубоком обучении 2:44
Переход от классических алгоритмов к глубоким нейронным сетям кардинально изменил требования к инфраструктуре. Если раньше инженеры тратили время на feature engineering — ручной подбор признаков, на которые должен смотреть алгоритм, — то теперь нейросети самостоятельно обучаются репрезентациям, поглощая огромные объемы данных.
- Масштабируемость: Для старых моделей обучение на тысячах примеров было нормой, после чего наступало насыщение. Современные глубокие модели способны улучшать результаты при наличии сотен тысяч или миллионов размеченных примеров.
- Сложность: Современные модели могут иметь десятки и сотни миллионов параметров, что делает их «голодными» до данных.
- Узкое место: В организациях, обладающих сложными или приватными данными (например, в медицине или юриспруденции), создание качественной разметки становится главным препятствием.
По мнению Ратнера, сегодня команды тратят 90% времени не на разработку архитектуры модели, а на ожидание разметки данных коллегами или внешними подрядчиками.
💡 Программная разметка как решение 12:42
Snorkel AI предлагает концепцию, в которой эксперты предметной области задают правила разметки с помощью программного кода или эвристик, а не вручную отмечают каждый объект.
- Labeling Functions (Функции разметки): Эксперт пишет код, который ищет ключевые слова, паттерны или использует внешние знания (онтологии, словари) для присвоения меток.
- Вероятностная модель: Snorkel автоматически объединяет «шумные» прогнозы от разных функций, учитывая их точность и корреляцию, даже без наличия исходных размеченных данных (Ground Truth).
- Гибкость: Этот подход позволяет быстро адаптироваться к изменениям. Если логика задачи (например, классификация юридических документов) меняется, достаточно обновить правила, а не переразмечать весь датасет вручную.
По словам Ратнера, такой метод позволяет сэкономить месяцы работы персонала, заменяя 8–14 человеко-месяцев ручного труда буквально часами настройки функций разметки.
🖼️ Работа с изображениями и видео 24:03
Применение программной разметки к нетекстовым данным требует использования промежуточных «примитивов» или связей между модальностями.
- Объектные примитивы: Например, чтобы определить «человека на велосипеде», можно использовать готовые детекторы объектов, а затем задать правила их пространственного расположения (человек должен быть над велосипедом, иметь схожий масштаб и т.д.).
- Кросс-модальный подход: В медицине, при работе с рентгеновскими снимками, можно писать правила для сопутствующих текстовых отчетов. Обученная на этих правилах модель затем эффективно работает с самими изображениями, даже если текстового описания для новых данных нет.
🔮 Будущее и автоматизация обучения 28:12
Ратнер отмечает, что переход к программной разметке открывает возможности для создания более абстрактных уровней управления процессом. Snorkel AI стремится сделать процесс «нажатия кнопок» доступным даже для тех, кто не умеет писать код, используя шаблоны и графические интерфейсы.
- Data Augmentation: Помимо разметки, автоматизируются и методы аугментации данных (вращение, изменение яркости, замена синонимов), что в некоторых задачах дает десятикратный прирост эффективности по сравнению с выбором самой архитектуры модели.
- Итеративность: Главный вывод, к которому приходит индустрия, заключается в том, что ML-разработка — это не «сделал и забыл», а непрерывный цикл поддержки и дообучения моделей при изменении данных в реальном мире.
Как подчеркивает Ратнер, Snorkel — это «человек в цикле», где эксперт остается драйвером процесса, а машина берет на себя рутину, связанную с масштабированием и согласованием данных.