Технико-экономическое обоснование

На этапе разработки идей и планирования вы исследуете элементы решения ML. В ходе задачи по формулированию проблемы вы формулируете проблему с точки зрения решения ML. Курс «Введение в постановку задач машинного обучения» подробно описывает эти шаги. В ходе задачи планирования вы оцениваете осуществимость решения, планируете подходы и устанавливаете показатели успеха.

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

  • Доступность данных
  • Сложность задачи
  • Качество прогнозирования
  • Технические требования
  • Расходы

Доступность данных

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

  • Количество. Можете ли вы получить достаточно качественных данных для обучения модели? Являются ли примеры с маркировкой редкими, их трудно достать или они слишком дороги? Например, крайне сложно получить маркированные медицинские изображения или переводы редких языков. Чтобы делать хорошие прогнозы, модели классификации требуют множества примеров для каждой метки . Если набор обучающих данных содержит ограниченное количество примеров для некоторых меток, модель не сможет делать хорошие прогнозы.

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

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

  • Нормативно-правовые акты. Каковы правила и юридические требования для получения и использования данных? Например, некоторые требования устанавливают ограничения на хранение и использование определенных типов данных.

Генеративный ИИ

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

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

    В следующей таблице приведены оценки количества примеров, необходимых для уточнения результатов генеративной модели ИИ для данного метода:

  • Техника Количество необходимых примеров
    Подсказка с нулевым выстрелом 0
    Подсказка из нескольких кадров ~10–100 с
    Эффективная настройка параметров 1 ~ 100–10 000 с
    Тонкая настройка ~1000–10 000 с (или более)
    1 Низкоранговая адаптация (LoRA) и быстрая настройка.
  • Актуальная информация. После предварительного обучения генеративные модели ИИ имеют фиксированную базу знаний. Если содержимое домена модели часто меняется, вам понадобится стратегия поддержания модели в актуальном состоянии, например:

Сложность задачи

Трудность задачи может быть трудно оценить. То, что на первый взгляд кажется правдоподобным подходом, на самом деле может оказаться открытым исследовательским вопросом; то, что кажется практичным и выполнимым, может оказаться нереальным или неосуществимым. Ответы на следующие вопросы помогут оценить сложность проблемы:

  • Подобная проблема уже решена? Например, использовали ли команды в вашей организации схожие (или идентичные) данные для построения моделей? Решали ли люди или команды за пределами вашей организации подобные проблемы, например, в Kaggle или TensorFlow Hub ? Если да, то вполне вероятно, что вы сможете использовать части их модели для создания своей.

  • Является ли характер проблемы сложным? Знание человеческих критериев выполнения задачи может определить уровень сложности проблемы. Например:

    • Люди могут классифицировать тип животного на изображении с точностью около 95%.
    • Люди могут классифицировать рукописные цифры с точностью около 99%.

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

  • Есть ли потенциально плохие актеры? Будут ли люди активно пытаться эксплуатировать вашу модель? Если это так, вам придется постоянно обновлять модель, прежде чем ее можно будет использовать не по назначению. Например, спам-фильтры не могут улавливать новые типы спама, когда кто-то использует эту модель для создания электронных писем, которые кажутся законными.

Генеративный ИИ

Генеративные модели ИИ имеют потенциальные уязвимости, которые могут усложнить задачу:

  • Источник ввода. Откуда будут поступать входные данные? Могут ли состязательные подсказки привести к утечке данных обучения, преамбулы, содержимого базы данных или информации об инструментах?
  • Выходное использование. Как будут использоваться результаты? Будет ли модель выводить необработанный контент или будут ли промежуточные шаги, которые проверят и проверят его пригодность? Например, предоставление необработанного вывода плагинам может вызвать ряд проблем с безопасностью.
  • Тонкая настройка. Точная настройка с использованием поврежденного набора данных может отрицательно повлиять на веса модели. Такое повреждение может привести к тому, что модель будет выдавать неправильный, токсичный или предвзятый контент. Как отмечалось ранее, для точной настройки требуется проверенный набор данных на наличие высококачественных примеров.

Качество прогнозирования

Вам необходимо тщательно рассмотреть влияние прогнозов модели на ваших пользователей и определить необходимое качество прогнозов, необходимое для модели.

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

Будет ли ваша модель иметь очень высокое качество прогнозирования, поскольку неправильные прогнозы обходятся чрезвычайно дорого? Как правило, чем выше требуемое качество прогнозирования, тем сложнее проблема. К сожалению, проекты часто приводят к уменьшению отдачи по мере того, как вы пытаетесь улучшить качество. Например, увеличение точности модели с 99,9% до 99,99% может означать увеличение стоимости проекта в 10 раз (если не больше).

По мере повышения качества прогнозов растут и затраты на проект.

Фигура 2 . Проект ML обычно требует все больше и больше ресурсов по мере повышения требуемого качества прогнозирования.

Генеративный ИИ

При анализе результатов генеративного ИИ учитывайте следующее:

  • Фактическая точность. Хотя генеративные модели ИИ могут создавать плавный и связный контент, его достоверность не гарантируется. Ложные утверждения генеративных моделей ИИ называются конфабуляциями . Например, генеративные модели ИИ могут путать и давать неверные обобщения текста, неправильные ответы на математические вопросы или ложные утверждения о мире. Во многих случаях использования по-прежнему требуется проверка человеком результатов генеративного ИИ перед их использованием в производственной среде, например, код, сгенерированный LLM.

    Как и в случае с традиционным машинным обучением, чем выше требования к фактической точности, тем выше стоимость разработки и обслуживания.

  • Качество вывода. Каковы юридические и финансовые последствия (или этические последствия) плохих результатов, таких как предвзятый, плагиат или токсичный контент?

Технические требования

Модели имеют ряд технических требований, которые влияют на их осуществимость. Ниже приведены основные технические требования, которые вам необходимо будет выполнить, чтобы определить осуществимость вашего проекта:

  • Задержка. Каковы требования к задержке? Как быстро должны предоставляться прогнозы?
  • Запросов в секунду (QPS). Каковы требования к QPS?
  • Использование оперативной памяти. Каковы требования к оперативной памяти для обучения и обслуживания?
  • Платформа. Где будет работать модель: онлайн (запросы отправляются на сервер RPC), WebML (в веб-браузере), ODML (на телефоне или планшете) или оффлайн (прогнозы сохраняются в таблице)?
  • Интерпретируемость. Должны ли прогнозы быть интерпретируемыми ? Например, должен ли ваш продукт отвечать на такие вопросы, как «Почему определенный фрагмент контента был помечен как спам?» или «Почему видео было признано нарушающим политику платформы?»

  • Частота переподготовки . Если базовые данные вашей модели быстро меняются, может потребоваться частое или постоянное переобучение. Однако частое переобучение может привести к значительным затратам, которые могут перевесить выгоды от обновления прогнозов модели.

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

Генеративный ИИ

При работе с генеративным ИИ учитывайте следующие технические требования:

  • Платформа. Многие предварительно обученные модели имеют разные размеры, что позволяет им работать на различных платформах с разными вычислительными ресурсами. Например, предварительно обученные модели могут варьироваться от масштаба центра обработки данных до установки на телефоне. При выборе размера модели вам необходимо учитывать задержку, конфиденциальность и качество вашего продукта или услуги. Эти ограничения часто могут противоречить друг другу. Например, ограничения конфиденциальности могут потребовать, чтобы выводы выполнялись на устройстве пользователя. Однако качество вывода может быть плохим, поскольку устройству не хватает вычислительных ресурсов для получения хороших результатов.
  • Задержка. Размер входных и выходных данных модели влияет на задержку. В частности, размер вывода влияет на задержку больше, чем размер ввода. Хотя модели могут распараллеливать свои входные данные, они могут генерировать выходные данные только последовательно. Другими словами, задержка может быть одинаковой для приема входных данных из 500 или 10 слов, тогда как создание резюме из 500 слов занимает значительно больше времени, чем создание резюме из 10 слов.
  • Использование инструментов и API. Потребуется ли модели использовать инструменты и API, например поиск в Интернете, использование калькулятора или доступ к почтовому клиенту для выполнения задачи? Как правило, чем больше инструментов требуется для выполнения задачи, тем больше шансов на распространение ошибок и увеличение уязвимостей модели.

Расходы

Оправдает ли внедрение машинного обучения свои затраты? Большинство проектов ML не будут одобрены, если внедрение и обслуживание решения ML обходится дороже, чем деньги, которые оно генерирует (или экономит). Проекты ML требуют как человеческих, так и машинных затрат.

  • Человеческие затраты. Сколько человек потребуется, чтобы проект прошел путь от проверки концепции до производства? По мере развития проектов ML расходы обычно увеличиваются. Например, проекты ML требуют больше людей для развертывания и обслуживания готовой к эксплуатации системы, чем для создания прототипа. Постарайтесь оценить количество и виды ролей, которые потребуются проекту на каждом этапе.

  • Стоимость станка. Обучение, развертывание и обслуживание моделей требует большого количества вычислительных ресурсов и памяти. Например, вам может понадобиться квота TPU для обучения моделей и обслуживания прогнозов, а также необходимая инфраструктура для вашего конвейера данных. Возможно, вам придется заплатить за маркировку данных или оплатить лицензионные сборы за данные. Прежде чем обучать модель, рассмотрите возможность оценки затрат на создание и поддержку функций машинного обучения в долгосрочной перспективе.

  • Стоимость вывода. Будет ли модель делать сотни или тысячи выводов , стоимость которых превышает получаемый доход?

Иметь ввиду

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