Пример 1. Оценка платформ MLOps

Недавно я выступал на apply(meetup), мероприятии, объединяющем специалистов по машинному обучению и работе с данными. Спасибо Кевину, Деметриосу, Тектону за то, что это произошло! Ниже приводится стенограмма моего 10-минутного выступления.

Введение

Не так давно я встретился с более чем 20 MLOps и еще 10 компаниями DataOps, чтобы понять их проблемы в достижении успеха клиентов на этапе оценки платформы. В частности, мне было интересно узнать об их рабочих процессах на самом первом этапе процесса оценки — сборе и передаче данных. У меня было предчувствие, что эта часть конвейера создает проблемы, основанные на моем собственном опыте оценки этих платформ.

Я расскажу, как различные компании-платформы решают существующие проблемы, некоторые потребности, которые остаются неудовлетворенными, и, наконец, предложу новое решение, полезное как для компаний-платформ, так и для их клиентов.

Избегайте передачи данных

Чтобы предотвратить проблемы, связанные с передачей данных клиентов, компании-платформы могут вообще отказаться от передачи.

Публичные или синтетические данные

Самое простое решение — использовать общедоступные или синтетические наборы данных для получения эталонных показателей для сравнения и оценки платформ. Однако достижение хорошей производительности на общедоступных наборах данных не так убедительно, как достижение хорошей производительности на собственных данных клиента.

Принеси свое собственное облако

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

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

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

Кроме того, взяв на себя задачу хостинга, компании-платформы могут более эффективно управлять версиями, ошибками и обслуживанием клиентов.

Еще один недостаток автономного решения связан с вычислительными ресурсами. Платформенные компании обычно настраивают сервисы, чтобы управлять затратами и производительностью. Иногда они перемещают данные туда, где затраты на GPU доступны. Это невозможно в сценарии с самостоятельным размещением.

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

Но передача данных неизбежна

Однако перед заключением контракта и на этапе оценки клиентов просят передать данные компаниям-платформам, чтобы весь потенциал инструментов был представлен в управляемой среде. Это также обеспечит точное отражение результатов в реальных условиях. И поэтому платформенные компании и их клиенты ценят и предпочитают передачу данных на более ранних этапах взаимоотношений.

Передача данных не так проста

Давайте сегодня рассмотрим некоторые ограничения инструментов передачи данных.

SFTP не совсем подходит для облака

Одним из наиболее популярных рабочих процессов для передачи данных является настройка клиентом SFTP-сервера, загрузка данных из своего облачного хранилища данных в CSV, а затем загрузка этих данных на SFTP-сервер. Затем получатель загружал данные с сервера и загружал их в свое облачное хранилище. Этот последний шаг обычно требует какого-то нетривиального инструмента.

Другой подход — заменить SFTP-сервер облачным хранилищем. В любом случае данные извлекаются в виде файла CSV, где важная информация о типе теряется, данные временно сохраняются на другом или локальном компьютере, а затем загружаются в облако в месте назначения.

Это ручной и сложный процесс, особенно если данные должны быть синхронизированы. С людьми в цикле это также очень подвержено ошибкам. Мониторинг нетривиален, поскольку конвейер выходит за пределы одной компании.

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

Сложные пайплайны выходят за рамки группы обработки данных

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

Управлять соответствием сложно

Клиенты платформы должны соблюдать требования HIPAA, GDPR, CCPA и других законодательных актов в зависимости от типа данных, которыми они управляют.

Без правильных инструментов поддержание безопасности и соблюдение нормативных требований часто почти невозможно. Например, локальные машины — не лучшее место для хранения данных, даже временно, перед загрузкой на SFTP-сервер.

Тестирование сложно

Иногда клиенты непреднамеренно отправляют данные, содержащие PII (идентифицирующую личность информацию), без наличия соответствующих контрактов. В этом случае команды платформы несут ответственность за очистку данных.

Статус-кво в обмене и передаче данных означает, что ни одной из сторон сложно реализовать тесты для проверки данных в полете, например, «Не отправлять PII», «Придерживаться следующей схемы», «Обеспечивать полноту данных. ” Кроме того, нет надежного способа сообщить о требованиях. Компаниям-платформам может потребоваться, чтобы для задачи прогнозирования данные содержали записи для всех дней недели. Для обнаружения мошенничества может потребоваться, чтобы были включены все основные категории мошеннической деятельности.

Версии - это сложно

Когда клиенты взаимодействуют с несколькими компаниями-платформами, каждая из них может получать разные версии данных. Трудно отследить источник правды, что влияет на справедливость оценки. У какой компании какие данные? Это отсутствие версий также затрудняет управление аудитом и соответствием требованиям.

Свойства нового решения

Есть ли лучший способ обмена данными с деловыми партнерами? Ниже я исследую некоторые свойства нового решения.

Совместимость

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

Возможность аудита и согласованность

Упрощение обмена единой версией набора данных на всех платформах обеспечивает справедливую оценку. Кроме того, управление реестром всех транзакций упрощает аудит.

Безопасность и соответствие

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

Проверка данных и тестирование

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

Заключение

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

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

P.S. Хотите сотрудничать? Пожалуйста, свяжитесь с нами по электронной почте и следите за нашими успехами в Твиттере!

PPS Ознакомьтесь с подробным обзором подачи заявки (встречи) этого года от James Le.