Про удачные внедрения пишут все. Про неудачные проекты - почти никто. Расскажем про наш.
Задача
Заказчик пришёл с базой из двадцати тысяч завершённых тендеров и понятным запросом: предсказывать итоговую цену в будущих торгах. Требовалась точность предсказаний не ниже 80% при допуске плюс-минус 20. То есть если тендер по факту ушёл за миллион, система должна назвать диапазон 800-1200 тыс. - и попадать в него в восьми случаях из десяти.
Задача поставлена грамотно: измеримо, проверяемо, с внятным критерием приёмки. Данные есть, параметров в базе достаточно.
Что получилось
Мы прогнали серию экспериментов. Потолок - 70,4%.
Заказчика это не устроило, проект закрыли.
И скажу прямо: 70% вместо 80% - это не «чуть-чуть не дотянули». На тендере такая ошибка съест маржу целиком, а модель, которая промахивается в трёх случаях из десяти, для ценообразования бесполезна. Заказчик был прав, что отказался от внедрения.
Почему не получилось
Разбор свёлся к одному: данных было недостаточно. Не по объёму - двадцать тысяч записей это нормально. По составу.
В базе лежали параметры закупки: предмет, начальная цена, регион, заказчик, сроки, вид работ, тип тендера, наличие лицензий.
Но величину падения определяет не объект. Её определяют люди, которые прямо сейчас решают, идти им в этот тендер или нет. Насколько загружены их мощности в этом квартале. Нужен ли им конкретно этот заказчик, чтобы зайти в регион. Есть ли кассовый разрыв, ради закрытия которого можно уйти в ноль по марже. И сколько участников вообще выйдет на подачу.
Ни одного из этих признаков в базе не было. И это объяснимо: данные описывают объект закупки, а не состояние конкурентов в конкретную неделю.
Вывод
Любая система предсказаний - это эксперимент. А эксперимент по определению может дать отрицательный результат. Иногда задача просто не имеет решения на тех данных, которые есть.
Мы говорим об этом на этапе оценки: что сработает точно, а что под вопросом и почему. Причина обычно не в технической невозможности моделирования. Причина в том, что нужных признаков либо нет в данных, либо их в принципе нельзя собрать.
Всегда можно переопределить метрику, сузить выборку и отчитаться о 80% на удобном срезе. Так делают.
Мы за то, чтобы экспериментировать и пробовать. Отрицательный результат - тоже результат. Главное - не выдавать его за положительный.
А у вас был AI-проект, который вы закрыли, не получив ожидаемый результат?

