Data Centric AI#

Датацентричный подход (Data Centric AI) - набор подходов и техник, позволяющий улучшить набор данных, на котором учится наша модель. Часто работа над качеством данных - самый надежный путь для улучшения качества ML-модели.

Классический подход Model Centric AI концентрируется на том, чтобы подобрать лучшую модель для имеющегося датасета, используя разные типы моделей (нейронные сети, решающие деревья и т.д.), техники (регуляризация, оптимизаторы функции потерь), техники подбора гиперпараметров и ансамблирование моделей. Все это делается исходя из предположения, что данные для обучения фиксированы и повлиять на них нельзя.

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

Данные в реальных проектах часто грязные, и содержат столько проблем, что улучшение набора данных обычно - обязательный шаг на пути к хорошей модели. Как часто говорят, мусор на входе - мусор на выходе.

Data Centric AI - cистематический подход к работе с данными для того, чтобы модели на них обучались лучше.

Два основных подхода:

  1. Алгоритмы, анализирующие данные и использующие эту информацию для улучшения модели. Например, Curriculum Learning - обучение модели сначала на простых данных, а потом на сложных.

  2. Алгоритмы, модифицирующие данные для того, чтобы улучшить модель. Confident Learning - пример такого подхода, в котором модель учится на данных, из которых удалены ошибочно размеченные данные.

Определение “легких для обучения” и ошибочно размеченных данных выполняется автоматически с помощью алгоритма, анализирующего работу обученной ML - модели.

Задача Model Centric AI - построить наилучшую модель для имеющегося датасета. Задача Data Centric AI - систематически и алгоритмически улучшать датасет, чтобы сделать его более полезным для модели. Для получения хорошего результата нужно сочетать оба подхода.

Например, процесс построения ML-модели может выглядеть так:

  1. Проводим разведочный анализ данных (Exploratory Data Analysis). Исправляем основные проблемы данных. Преобразуем их в формат, удобный для моделирования.

  2. Обучаем черновую (baseline) версию модели.

  3. Используя модель, улучшаем набор данных.

  4. Обучаем модель на улучшенном датасете. При необходимости возвращаемся на шаг 3 и пробуем сделать данные еще лучше.

Пример техник, используемых в датацентричном подходе:

  • Детектирование и исключение аномалий

  • Выявление и коррекция ошибок разметки

  • Поиск консенсуса в разметке, полученной из разных источников

  • Аугментация данных (добавление данных в модель на основе априорного знания о природе данных)

  • Генерация и отбор признаков

  • Активное обучение - выбор наиболее информативных данных для доразметки

  • Cirriculum Learning - упорядочивание примеров для обучения от простого к сложному

Надежность ML-модели в значительной степени зависит от качества данных, на которых она обучалась.