Главная особенность AI проектов по сравнению с традиционной IT разработкой - высокая степень неопределённости. Модели стохастичны и сложны по своей природе, процессы обучения и инференса зависят от многих факторов - поэтому сложно предсказать с уверенностью, какой идеальный сетап эксперимента приведёт к нужному уровню метрик. Иначе говоря, мы имеем дело с complex system в терминах фреймворка Cynefin - а значит, можем двигаться к цели только короткими итерациями через постановку и проверку гипотез.
Короче, правильный подход к AI-разработке во многом похож на методологии из продакт-менеджмента. Сначала постановка и быстрая валидация гипотез (цикл discovery), затем реализация успешного пайплайна в формате сначала Proof-of-concept, а потом и MVP (цикл delivery). Цель discovery - быстро перебрать идеи и получить прототип пайплайна с нужным качеством, цель delivery - дотащить пайплайн до продакшна и превратить его в работающий сервис для пользователей.
Почти наверняка при переносе прототипа в реальный мир качество упадёт из-за каких-то неучтенных факторов (особенности данных, нюансы поведения модели в проде итд) - и цикл исследования придётся запускать снова.
Короче, правильный подход к AI-разработке во многом похож на методологии из продакт-менеджмента. Сначала постановка и быстрая валидация гипотез (цикл discovery), затем реализация успешного пайплайна в формате сначала Proof-of-concept, а потом и MVP (цикл delivery). Цель discovery - быстро перебрать идеи и получить прототип пайплайна с нужным качеством, цель delivery - дотащить пайплайн до продакшна и превратить его в работающий сервис для пользователей.
Почти наверняка при переносе прототипа в реальный мир качество упадёт из-за каких-то неучтенных факторов (особенности данных, нюансы поведения модели в проде итд) - и цикл исследования придётся запускать снова.