Візуальний пошук (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)