Любая финансовая организация, желающая начать выпускать дебетовые, кредитные или подарочные карты с кастомизируемым клиентами дизайном неизбежно сталкивается с задачей проверки этих дизайнов на соответствие требованиям внешних регуляторов.
Это могут быть как требования правообладателей по защите их авторских и смежных прав, так и требования национального законодательства или международных платежных систем.
Очевидно, что нельзя наносить изображения, нарушающие чужой копирайт (логотипы и торговые знаки, узнаваемых персонажей, кадры из фильмов и других произведений), содержащие сцены насилия, употребления алкоголя или наркотиков, оружие, порнографию и так далее.
Наиболее полный список правил составлен путем синтеза задокументированных требований платежных систем Visa, Mastercard и НСПК и состоит из 15 пунктов:
В рамках традиционного подхода проверка на соответствие перечисленным требованиям производится вручную, с помощью операторов скрининга.
Однако ручной скрининг плохо масштабируется, требует найма персонала и организации рабочих мест операторов, крайне сложна организация непрерывного (24/7) процесса и самое главное — не дает нужного времени проверки.
При выпуске обычных пластиковых карт время ручной проверки изображений в течении одного рабочего дня приемлемо, т. к. выпуск карт занимает от 3 до 5 рабочих дней и скрининг не является узким местом.
Однако при выпуске виртуальных карт с индивидуальным дизайном с технологией немедленной доставки (Push Provisioning) непосредственно в мобильный кошелек клиента в Google Pay, Apple Pay, Mir Pay или приложение сервиса подарочных карт, время проверки одного изображения становится критичным — для бесшовного пользовательского опыта клиента и высокой конверсии в заказ карты важно, чтобы клиент получал обратную связь по выбранному им изображению в рамках клиентской сессии, онлайн, а не через час или на следующий рабочий день. Таким образом в данном сценарии время на проверку изображения должно составлять менее 30 секунд, в идеале — менее 5-10 секунд.
Обеспечить такое время реакции при ручном скрининге физически невозможно — тут нам на помощь приходят нейросети.
Для анализа и классификации изображений применяются сверточные многослойные нейросети глубокого обучения (Convolutional Neural Networks, CNN).
На данный момент существует более 20 типов архитектур сетей данного класса — от LeNet и AlexNet до VGG, Inception и Xception.
Каждый тип нейросетей имеет различия в реализации архитектуры и разные целевые классы изображений для анализа — например, «буквы и текст» или «изображения людей и животных».
Разные типы архитектур сетей различаются по функциональным параметрам — времени обработки одного изображения, нагрузке на CPU и GPU, надежности распознавания целевого признака и др.
Т. к. необходимо обеспечить эффективный скрининг не по одному или двум, а по 15 различным критериям, встает задача сравнения эффективности типов архитектур по всему набору критериев и выявления максимально сбалансированных и надежных архитектур для каждого критерия.
На данный момент наилучших результатов удалось добиться с архитектурой Xception.
Данная архитектура является фундаментальной для глубокого обучения, особенно с точки зрения распределения свойств изображения по всей картинке. Свертки с обучаемыми параметрами позволяют с помощью нескольких параметров эффективно извлекать одинаковые свойства из разных мест. Ключевым преимуществом архитектуры является возможность сохранять параметры и результаты вычислений, в отличие от использования каждого пикселя в качестве отдельных входных данных для большой многослойной нейросети.
Однако для ряда признаков уровень надежности распознавания на базе архитектуры Xception можно повысить еще больше, что требует дальнейших исследований.