Data Centric AI#
Датацентричный подход (Data Centric AI) - набор подходов и техник, позволяющий улучшить набор данных, на котором учится наша модель. Часто работа над качеством данных - самый надежный путь для улучшения качества ML-модели.
Классический подход Model Centric AI концентрируется на том, чтобы подобрать лучшую модель для имеющегося датасета, используя разные типы моделей (нейронные сети, решающие деревья и т.д.), техники (регуляризация, оптимизаторы функции потерь), техники подбора гиперпараметров и ансамблирование моделей. Все это делается исходя из предположения, что данные для обучения фиксированы и повлиять на них нельзя.
В реальных приложениях данные чаще всего не фиксированы - мы можем модифицировать датасет, собирать дополнительные данные, перепроверять разметку и исключать данные, вносящие шум.
Данные в реальных проектах часто грязные, и содержат столько проблем, что улучшение набора данных обычно - обязательный шаг на пути к хорошей модели. Как часто говорят, мусор на входе - мусор на выходе.
Data Centric AI - cистематический подход к работе с данными для того, чтобы модели на них обучались лучше.
Два основных подхода:
Алгоритмы, анализирующие данные и использующие эту информацию для улучшения модели. Например, Curriculum Learning - обучение модели сначала на простых данных, а потом на сложных.
Алгоритмы, модифицирующие данные для того, чтобы улучшить модель. Confident Learning - пример такого подхода, в котором модель учится на данных, из которых удалены ошибочно размеченные данные.
Определение “легких для обучения” и ошибочно размеченных данных выполняется автоматически с помощью алгоритма, анализирующего работу обученной ML - модели.
Задача Model Centric AI - построить наилучшую модель для имеющегося датасета. Задача Data Centric AI - систематически и алгоритмически улучшать датасет, чтобы сделать его более полезным для модели. Для получения хорошего результата нужно сочетать оба подхода.
Например, процесс построения ML-модели может выглядеть так:
Проводим разведочный анализ данных (Exploratory Data Analysis). Исправляем основные проблемы данных. Преобразуем их в формат, удобный для моделирования.
Обучаем черновую (baseline) версию модели.
Используя модель, улучшаем набор данных.
Обучаем модель на улучшенном датасете. При необходимости возвращаемся на шаг 3 и пробуем сделать данные еще лучше.
Пример техник, используемых в датацентричном подходе:
Детектирование и исключение аномалий
Выявление и коррекция ошибок разметки
Поиск консенсуса в разметке, полученной из разных источников
Аугментация данных (добавление данных в модель на основе априорного знания о природе данных)
Генерация и отбор признаков
Активное обучение - выбор наиболее информативных данных для доразметки
Cirriculum Learning - упорядочивание примеров для обучения от простого к сложному
Надежность ML-модели в значительной степени зависит от качества данных, на которых она обучалась.