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

Некоторое время назад Ваш Пульт ввел у себя услугу «подбор товара по фото». Для этого покупателю необходимо было сделать фотографию своего неработающего устройства и прислать её менеджеру. А затем уже опытный менеджер разбирался “что же это такое прислали”, искал необходимую модель и подбирал нужный клиенту вариант.

Пульты

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

Распознавание объектов. Как мы научили этому машину

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

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

Поскольку покупатель будет в основном делать фото с телефона, при подготовке и обучении нейронной сети мы учли множество факторов, такие как:

    • Слишком яркое или тусклое освещение
    • Неудачный ракурс
    • Стертые кнопки и надписи
    • Плохой фон
    • Фото с перспективой

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

Технологии, на которых строится программа для распознавания объектов

  • TensorFlow — фреймворк машинного обучения,  на нем мы создали нейронную сеть. Мы использовали Faster-RCNN-Inception-V2 — модель, оптимально подходящую для дальнейшего обучения с нашим материалом;

  • Google Cloud Vision, Soundex – для распознавания надписей мы использовали API Google Cloud Vision, а для поиска наилучшего соответствия среди возможных результатов мы использовали полнотекстовый поиск, вычисление расстояния Левинштейна, и Soundex. Soundex — алгоритм сравнения двух строк по их звучанию, устанавливающий одинаковый индекс для строк, имеющих схожее звучание в английском языке.

Как интегрировать визуальный поиск в существующие системы

Созданная нами система распознавания объектов по фото по сути представляет собой API-сервис и легко интегрируется с чат-ботом, сайтом, мобильным приложением и внутренними системами компании. Это позволит ей функционировать без участия человека как полностью автоматизированный процесс. Заказ сразу после завершения попадет в отдел отправок и сможет быть отправлен в кратчайшие сроки.

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

04.02.2019
Рейтинг: 5 / 5 (1)