Как AWS Prototyping позволил ICL-Group создавать модели компьютерного зрения на Amazon SageMaker

Как AWS Prototyping на Amazon SageMaker помогает ICL-Group создавать модели компьютерного зрения

Это клиентский пост, написанный совместно сотрудниками ICL и AWS.

ICL – это международная компания по производству и добыче, базирующаяся в Израиле, которая производит товары на основе уникальных минералов и удовлетворяет основные потребности человечества, преимущественно в трех рынках: сельское хозяйство, пищевая промышленность и инженерные материалы. Их добычные участки используют промышленное оборудование, которое должно быть отслеживаемым, потому что сбои в работе машин могут привести к потере доходов или даже к экологическому ущербу. Из-за экстремальных условий (низкие и высокие температуры, вибрации, соленая вода, пыль) установка датчиков на эти добычные машины для удаленного мониторинга достаточно сложна. Поэтому большинство машин ручно или визуально мониторятся непрерывно на месте работой сотрудников. Эти работники часто проверяют фотографии с камер, чтобы отслеживать состояние машины. Хотя такой подход работал раньше, он не масштабируется и имеет относительно высокие затраты.

Чтобы преодолеть эту бизнес-задачу, ICL решили разработать внутренние возможности для использования машинного обучения (ML) в компьютерном зрении (CV) для автоматического мониторинга своих добычных машин. Как традиционная добывающая компания, наличие внутренних ресурсов с навыками науки о данных, CV или ML было ограничено.

В этом посте мы обсудим следующее:

  • Как ICL разработала внутренние возможности для создания и поддержки решений CV, которые позволяют автоматически мониторить добывающее оборудование, чтобы повысить эффективность и снизить потери
  • Погружение в решение для мониторинга вибросителей, которое было разработано с поддержкой программы прототипирования AWS

Используя описанный в этом посте подход, ICL смогла разработать на AWS рамки, используя Amazon SageMaker для создания других применений на основе полученного видения с около 30 камер, с возможностью масштабирования до тысяч таких камер на их производственных площадках.

Создание внутренних возможностей с помощью прототипирования AWS

Построение и поддержка ML-решений для критически важных рабочих нагрузок требуют достаточно подготовленного персонала. Отказ от организации таких деятельностей зачастую невозможен, поскольку внутренние знания о бизнес-процессах должны сочетаться с созданием технических решений. Поэтому ICL обратились к AWS за поддержкой в своем пути к созданию решения CV для мониторинга своего добычного оборудования и приобретения необходимых навыков.

AWS Prototyping – это инвестиционная программа, в рамках которой AWS внедряет специалистов в команды разработки клиентов для создания критически важных примеров использования. Во время такого взаимодействия команде разработки клиента предоставляется возможность работы с базовыми технологиями AWS при создании примера использования в течение 3-6 недель и получении практической помощи. Кроме соответствующего примера использования, все, что требуется от клиента, – 3-7 разработчиков, которые могут затратить более 80% рабочего времени на создание вышеупомянутого примера использования. В течение этого времени специалисты AWS полностью присоединяются к команде клиента и сотрудничают с ними удаленно или на месте.

Пример использования компьютерного зрения ICL

В рамках работы над прототипом, ICL выбрали пример использования для мониторинга своих вибросителей. Виброситель – это крупная промышленная добывающая машина, в которой минералы, растворенные в воде, обрабатываются. Вода потекает в нескольких каналах, начиная с верхней части машины и заканчивая нижней. Поступление контролируется для каждого канала отдельно. Когда поступление исчерпывается в канале, это называется переливом, что указывает на перегрузку машины. Перелив – это минералы, которые не обрабатываются вибросителем и потеряны. Это нужно избегать путем регулирования поступления. Без решения ML перелив должен контролироваться людьми, и это потенциально занимает время, пока перелив не будет замечен и обработан.

На следующих изображениях показаны входные и выходные данные моделей CV. Сырое изображение с камеры (слева) обрабатывается с использованием модели семантической сегментации (середина), чтобы обнаружить разные каналы. Затем модель (справа) оценивает покрытие (белое) и перелив (красное).

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

Во время сотрудничества специалисты AWS и команда разработки ICL встречались ежедневно и совместно разрабатывали решение шаг за шагом. Ученые-данные ICL работали над своими задачами самостоятельно или получали практическую поддержку парного программирования от специалистов AWS ML. Такой подход обеспечивает не только опыт ICL в систематической разработке моделей ML с использованием SageMaker, но и внедрение этих моделей в приложения, а также автоматизацию всего жизненного цикла таких моделей, включая автоматическую повторную тренировку или мониторинг модели. После 4 недель сотрудничества ICL смогла перенести эту модель в производство без необходимости дальнейшей поддержки в течение 8 недель и создала модели для других случаев использования. Технический подход данного проекта описан в следующем разделе.

Мониторинг горнодобывающих сит на основе CV-моделей с использованием SageMaker

SageMaker – это полностью управляемая платформа, которая охватывает полный жизненный цикл ML-модели: она предоставляет услуги и функции, которые поддерживают команды, работающие над ML-моделями, начиная с маркировки данных в Amazon SageMaker Ground Truth, до обучения и оптимизации модели, а также размещения ML-моделей для использования в производстве. Перед сотрудничеством ICL установила камеры и получила изображения, как показано на предыдущих изображениях (самое левое изображение), и сохраняла их в бакете Amazon Simple Storage Service (Amazon S3). Чтобы можно было обучать модели, необходимо сгенерировать обучающие данные. Совместная команда ICL-AWS решила эту задачу в три шага:

  1. Маркировка данных с использованием задания по семантической сегментации в SageMaker Ground Truth, как показано на следующем изображении.
  2. Предварительная обработка помеченных изображений с использованием методов аугментации изображений, чтобы увеличить количество образцов данных.
  3. Разделение помеченных изображений на обучающие, тестовые и проверочные наборы, чтобы можно было адекватно измерить производительность и точность модели в процессе обучения.

Для достижения масштабируемости производства ML-нагрузок автоматизация этих шагов является важным компонентом для поддержания качества обучающих данных. Поэтому, когда новые изображения маркируются с использованием SageMaker Ground Truth, предварительная обработка и разделение выполняются автоматически, и полученные наборы данных сохраняются в Amazon S3, как показано в следующей диаграмме рабочего процесса обучения модели. Аналогично, рабочий процесс развертывания модели использует ресурсы SageMaker для автоматического обновления точек доступа, когда доступна обновленная модель.

ICL использует несколько подходов для внедрения ML-моделей в производство. Некоторые из них включают их текущую платформу искусственного интеллекта с названием KNIME, которая позволяет им быстро внедрять модели, разработанные в среде разработки, в производство, индустриализируя их в продукты. Было проанализировано несколько комбинаций использования KNIME и услуг AWS; представленная архитектура была наиболее подходящей для среды ICL.

Для обучения моделей сегментации области сит-ситов используется встроенный алгоритм SageMaker семантической сегментации. Предпочтение этому встроенному алгоритму вместо собственно разработанного контейнера позволяет ICL не заботиться о тяжелой работе по поддержке сверточной нейронной сети (CNN), при этом они могут использовать такую ​​CNN для своего случая использования. После экспериментов с различными конфигурациями и параметрами ICL использовала алгоритм полностью сверточной сети (FCN) с пирамидальной сценой обработки сцены (PSPNet) для обучения модели. Это позволило ICL завершить построение модели в течение 1 недели с партнерского прототипирования.

После обучения модели ее необходимо развернуть, чтобы она стала доступной для мониторинга экрана. В соответствии с обучением модели, этот процесс полностью автоматизирован и организован с использованием AWS Step Functions и AWS Lambda. После успешного развертывания модели на конечной точке SageMaker, входящие изображения с камер изменяются по размеру, чтобы соответствовать формату ввода модели, а затем передаются в конечную точку для прогнозирования с использованием функций Lambda. Результат семантического сегментирования, а также обнаружение переполнения, сохраняются в Amazon DynamoDB и Amazon S3 для последующего анализа. Если обнаружено переполнение, могут использоваться службы Amazon Simple Notification Service (Amazon SNS) или функции Lambda для автоматического устранения переполнения и управления соответствующими полосами на затронутом экране. Ниже приведена схема этой архитектуры.

Заключение

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

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