Шаблон определения посещаемости
Этот шаблон демонстрирует реализацию решения на основе искусственного интеллекта для определения и анализа посещаемости розничного магазина. Решение создает полезные сведения на основе реальных действий, используя Azure, Azure Stack Hub и пакет средств разработки для искусственного интеллекта Пользовательского визуального распознавания.
Контекст и проблема
Компания Contoso хочет выяснить, как планировка ее магазинов влияет на выбор товаров посетителями. Компания не может разместить сотрудников в каждом отделе. Неэффективным решением будет и нанять команду аналитиков для просмотра записей, полученных с камер магазинов. Кроме того, ни один из их магазинов не имеет достаточной пропускной способности для потоковой передачи видео со всех своих камер в облако для анализа.
Компания Contoso хочет найти ненавязчивый защищенный способ определения демографических данных, постоянных клиентов и их реакции на витрины и продукты.
Решение
Этот шаблон для розничной аналитики использует многоуровневый подход к формированию выводов на пограничных устройствах. При использовании пакета средств разработки для искусственного интеллекта Пользовательского визуального распознавания для анализа в частном Azure Stack Hub, на котором запущены Azure Cognitive Services, отправляются только изображения с человеческими лицами. Анонимные статистические данные со всех магазинов отправляются в Azure для агрегирования и визуализации в Power BI. Объединение пограничных и общедоступных облаков позволяет компании Contoso использовать преимущества современных технологий на базе искусственного интеллекта, соблюдая требования своей корпоративной политики и уважая частную жизнь покупателей.
Ниже приведены общие принципы работы решения.
- Пакет разработки для искусственного интеллекта Пользовательского визуального распознавания получает настройки из центра Интернета вещей, который устанавливает среду выполнения IoT Edge и модель машинного обучения.
- Если модель видит человека, она делает снимок и отправляет его в хранилище BLOB-объектов Azure Stack Hub.
- Служба BLOB-объектов активирует Функцию Azure в Azure Stack Hub.
- Функция Azure вызывает контейнер с API Распознавания лиц для получения демографических данных и данных распознавания эмоций из изображения.
- Данные обезличиваются и отправляются в кластер Центров событий Azure.
- Кластер Центров событий отправляет данные в Stream Analytics.
- Stream Analytics выполняет статистическую обработку данных и отправляет их в Power BI.
Components
Это решение использует следующие компоненты.
Уровень | Компонент | Описание |
---|---|---|
Оборудование в магазине | Пакет разработки для искусственного интеллекта Пользовательского визуального распознавания | Обеспечивает фильтрацию снимков в магазине с помощью локальной модели машинного обучения, которая фиксирует только изображения людей для анализа. Безопасная подготовка и обновление с помощью Центра Интернета вещей. |
Azure | Центры событий Azure | Концентраторы событий Azure предоставляют масштабируемую платформу для приема анонимных данных, которые корректно интегрируются с Azure Stream Analytics. |
Azure Stream Analytics | Задание Azure Stream Analytics выполняет статистическую обработку анонимных данных и группирует их в 15-секундные окна для визуализации. | |
Microsoft Power BI | Power BI предоставляет простой в использовании интерфейс панели мониторинга для просмотра выходных данных Azure Stream Analytics. | |
Azure Stack Hub | Служба приложений | Поставщик ресурсов Службы приложений предоставляет основу для компонентов пограничной среды, включая функции размещения и управления для веб-приложений, API и функций. |
Кластер обработчика Службы Azure Kubernetes (AKS). | Поставщик ресурсов AKS с кластером обработчика AKS, развернутым в Azure Stack Hub, предоставляет масштабируемый отказоустойчивый механизм для запуска контейнера API Распознавания лиц. | |
Контейнеры API Распознавания лиц Cognitive Services в Azure | Поставщик ресурсов Azure Cognitive Services с контейнерами API Распознавания лиц предоставляет демографические данные, данные распознавания эмоций и уникальные определения посетителей в закрытой сети Contoso. | |
Хранилище BLOB-объектов | Изображения, полученные из пакета средств разработки для искусственного интеллекта, отправляются в хранилище BLOB-объектов Azure Stack Hub. | |
Функции Azure | Функция Azure, выполняемая в Azure Stack Hub, получает входные данные из хранилища BLOB-объектов и управляет взаимодействиями с API Распознавания лиц. API выдает анонимные данные в кластер Центров событий, расположенный в Azure. |
Проблемы и рекомендации
Во время выбора варианта реализации этого решения необходимо учитывать приведенные ниже моменты.
Масштабируемость
Чтобы это решение можно было масштабировать на несколько камер и расположений, необходимо убедиться, что все компоненты могут справиться с повышенной нагрузкой. Может потребоваться выполнить следующее:
- увеличить число единиц потоковой передачи Stream Analytics;
- горизонтально увеличить масштаб развертывания API Распознавания лиц;
- увеличить пропускную способность кластера Центров событий;
- В крайних случаях может потребоваться перенести данные из Функций Azure на виртуальную машину.
Доступность
Так как это решение распределено по уровням, важно подумать о том, как справляться с сетевыми сбоями или отключениями электропитания. В зависимости от бизнес-требований вы можете реализовать механизм, который локально кэширует изображения, а затем перенаправляет их в Azure Stack Hub при восстановлении подключения. Если расположение достаточно велико, лучше всего развернуть в этом расположении Data Box Edge с контейнером API Распознавания лиц.
Управляемость
Это решение может масштабироваться на множество устройств и расположений, что может оказаться неудобным. Службы Интернета вещей Azure можно использовать для автоматического перевода новых расположений и устройств в режим подключения и их обновления.
Безопасность
Это решение собирает изображения клиентов, уделяя особое внимание безопасности. Убедитесь, что все учетные записи хранения защищены с помощью соответствующих политик доступа и периодически меняйте ключи. Убедитесь, что для учетных записей хранения и концентраторов событий имеются политики хранения, соответствующие корпоративным и правительственным нормам конфиденциальности. Кроме того, убедитесь, что уровни доступа пользователей настроены по уровням. Таким образом, пользователи будут иметь доступ только к тем данным, которые необходимы для их роли.
Дальнейшие действия
Дополнительные сведения о разделах, представленных в этой статье:
- См. сведения о шаблоне распределения данных по уровням, используемым шаблоном определения посещаемости.
- Дополнительные сведения о пакете разработки для искусственного интеллекта Пользовательского визуального распознавания см. в этой статье.
Когда вы будете готовы протестировать пример решения, продолжите работу с руководством по развертыванию решения для определения посещаемости. В этом руководстве содержатся пошаговые инструкции по развертыванию и тестированию компонентов.