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

3 марта мы организовали онлайн - конференцию Machine Learning в Digital-продуктах с участием спикеров из Тинькофф, СБЕРа, МТС, Checklens GmbH, Brickit, Epoch8 и AGIMA. Для тех, кто любит читать, мы сделали печатную версию докладов.

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

В рамках конференции Сергей Воронов из компании Checklens рассказал про систему автоматизированного селф-чекаута для ресторанов на основе алгоритмов компьютерного зрения. Продукт уже используется в нескольких ресторанах IKEA в разных странах Европы.

Система кассы самообслуживания

Система состоит из камеры, у которой имеется определенная зона сканирования. Сначала люди подходят к ней, ставят поднос в поле ее досягаемости, система автоматически считывает данные и перенаправляет их в терминал оплаты. Первый ресторан IKEA, в который внедрена такая система, находится в Италии, город Падуя.

<p>Пример кассы самообслуживания в одном из ресторанов ИКЕА</p>

Пример кассы самообслуживания в одном из ресторанов ИКЕА

Сбор и анализ данных

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

Построение гипотез и разработка плана реализации

В качестве решения для системы распознавания мы выбрали стэк трех моделей: CNN-Based Detection, Classification и Counting. Мы начали с детекции, часто в таких задачах применяют сегментирование, чтобы увеличить точность классификации и качество при наличии Over Lab продуктов. Все наши модели были построены на основе свёрточных нейронных сетей, они являются стандартом систем компьютерного зрения.

Подготовка данных и первые результаты обучения

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

Система подготовки данных состояла из трех этапов:

  • выбор информативных кадров для детектора (фильтрация + фичи с полного кадра + кластеризация);

  • обучение детектора и генерация кропов для последующих моделей;

  • фильтрация кропов + предварительная кластеризация для упрощения процесса разметки (фичи с Fashion MNIST подошли лучше всего).

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

В результате точность данных была порядка 70-80%.

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

Деплой решения и приемочное тестирование

Изначально у нас был очень простой пайплайн деплоя, мы сами написали Backend с БД моделей + TF Serving для версионирования. На сегодняшний день мы используем DVC (гид с данными, где можно создавать отдельные ветки) + MLflow (здесь мы загружаем все результаты экспериментов, сравниваем модели и выбираем лучшие).

На фазе тестирования:

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

  • нельзя забывать про стоимость товаров при расчете показателей качества;

  • тестирование системы сотрудниками ресторана — не лучшая идея, так как люди не совсем понимают как работает система.

Обучение сотрудников

Это очень важный этап, на котором необходимо донести до персонала ресторана, что искусственный интеллект не предоставит 100% точности. Покупателям необходима помощь, поэтому персонал должен уметь ее предоставить: исправить ошибки системы, объяснить, как устроен терминал. Это значительно повышает уровень довольства клиентов, поэтому мы уделили много времени обучению сотрудников.

Поддержка

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

Умный гараж

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

Результаты проекта

Reta Awards
Reta Awards
  • точность транзакций более 98%;
  • увеличение пиковой пропускной способности более, чем на 15%;

  • увеличение среднего чека на несколько процентов;
  • больше аналитических данных;

  • контроль за «стандартизацией» качества блюд;
  • увеличение покупательской лояльности;
  • Reta Awards for the best in store solution.

Надеемся, что материал был полезным для каждого читателя.

Видео для тех, кто любит смотреть и слушать.

Здесь вы можете посмотреть онлайн-конференцию: Практическое применение Machine Learning в Digital-продуктах.

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

Продолжение в следующем выпуске.

44
Начать дискуссию