Синтетические плавки в ДСП-3: как сгенерировать данные и не обмануть себя

Эта история началась с разговора о возможной работе в металлургической компании. На вопрос о готовности автор ответил прямо: он рассчитывал сразу взять на себя роль Head of AI и выстроить процессы с нуля. Однако вместо обсуждения опыта и масштаба задач разговор быстро упёрся в формальные требования.
Одним из главных препятствий стало отсутствие профильного диплома в области программирования. Для крупной промышленной компании наличие подходящего образования оказалось важнее практического опыта и понимания рабочих процессов. Тогда автор решил не спорить с бюрократией, а продемонстрировать результат — за несколько недель собрать MVP и показать его потенциальному работодателю.
План не сработал в ожидаемом формате. Проект не дошёл до высшего руководства, а самого кандидата в итоге не пригласили к дальнейшему сотрудничеству. Тем не менее разработка не оказалась бесполезной: созданный прототип позволил разобрать важную практическую задачу, связанную с генерацией синтетических данных.
Зачем понадобился генератор
В центре проекта находится генератор данных для задачи, обозначенной как ДСП-3. Его цель — создавать синтетические примеры, которые можно использовать на следующих этапах разработки аналитического решения. Такой подход особенно интересен для промышленного контекста, где работа с реальными данными может быть ограничена доступом, объёмом или требованиями к их использованию.
Однако сам факт генерации ещё не означает, что данные пригодны для обучения моделей. Синтетика способна выглядеть правдоподобно и при этом содержать ошибки, незаметные при поверхностной проверке. Поэтому ключевой вопрос проекта — не только в том, как получить искусственные записи, но и в том, как убедиться, что генератор не создаёт убедительную, но внутренне противоречивую картину.
Что разбирается в проекте
Основное внимание уделено устройству генератора и его проверке. В материале рассматриваются неочевидные ошибки, которые могут возникнуть при подготовке синтетического набора, а также способы проверить, что сгенерированные данные не «обманывают» разработчика. Иными словами, речь идёт не о формальном увеличении объёма выборки, а о контроле качества результата.
Отдельно подчёркивается граница текущего разбора. Обучение модели на CatBoost и создание рабочего микросервиса-советника вынесены в следующую часть. Здесь фокус остаётся на генераторе: его логике, допущениях и воспроизводимости. Весь необходимый код предполагается приводить непосредственно в материале, чтобы читателю не приходилось обращаться к репозиторию для повторения эксперимента.
Такой порядок важен и с практической точки зрения. Прежде чем обучать модель и превращать её в сервис, нужно разобраться с качеством входных данных. Если синтетическая выборка построена некорректно, последующая модель может показывать убедительные результаты только внутри ошибочной системы предположений.
История проекта в итоге получилась не столько рассказом об успешном найме, сколько разбором инженерного эксперимента. Даже если MVP не удалось представить руководству компании, его создание дало возможность подробно исследовать проблему генерации данных и показать, почему проверка синтетики должна быть самостоятельным этапом разработки, а не формальностью перед обучением модели.


