Необходимо было спроектировать систему для централизованной подготовки и управления признаками и датасетами, используемыми при разработке ML-моделей.
Основная задача — сделать подготовку данных воспроизводимой и управляемой: избежать дублирования расчётов, ручной сборки датасетов и ситуации, когда разные специалисты используют разные версии одних и тех же признаков.
При проектировании учитывались требования корпоративного контура: разграничение ролей, работа с исходными данными без их неконтролируемого копирования, версионность, контроль качества и возможность безопасно передавать подготовленные данные моделистам.
Спроектировал и разработал самостоятельный Feature Store с веб-интерфейсом для работы с признаками и датасетами.
Реализованы:
— каталог признаков и их версий;
— визуальный конструктор расчёта признаков;
— SQL- и Python-режимы для более сложной логики;
— формирование датасетов из набора признаков;
— версионность и воспроизводимость датасетов;
— контроль качества данных;
— архивирование и восстановление версий;
— ролевая модель доступа для специалистов по данным и моделистов;
— деперсонализация чувствительных данных;
— работа с внешними источниками данных в режиме чтения;
— интеграционный контур для передачи подготовленных артефактов в ML-системы.
Отдельное внимание уделялось тому, чтобы моделист получал готовый воспроизводимый набор данных, не изменяя исходную структуру и не создавая неконтролируемые копии датасетов.
Проект выполнялся как полноценный программный продукт: требования, архитектура, backend, интерфейсы, интеграции и тестирование.
В результате получен рабочий Feature Store, объединяющий подготовку признаков, формирование датасетов, версионность и контроль качества в одном процессе.
Система позволяет повторно использовать рассчитанные признаки, собирать воспроизводимые версии датасетов и контролировать изменения данных между версиями.
Для моделистов реализован отдельный безопасный контур работы с подготовленными и при необходимости деперсонализированными данными.
Решение проектировалось как самостоятельный продукт и может использоваться отдельно либо интегрироваться с ML-платформой через API и модельные артефакты.