Чихуахуа или маффин? Мой поиск лучшего API компьютерного зрения

Этот популярный интернет-мем демонстрирует тревожное сходство между чихуахуа и маффинами. Эти изображения обычно используются в презентациях индустрии искусственного интеллекта (ИИ) (включая меня).

Но на один вопрос, на который я не видел никого ответа, является то, насколько хорошо современный ИИ устраняет неопределенность изображения, которое может напоминать чихуахуа или маффин? Для вашего развлечения и образования я займусь этим вопросом сегодня.

Бинарная классификация стала возможной с тех пор, как в 1957 году был изобретен алгоритм персептрона. Если вы думаете, что искусственный интеллект сейчас раздувается, в 1958 году New York Times сообщила, что изобретение положило начало компьютеру, который «мог ходить, говорить, видеть, писать, воспроизводить себя и осознавать свое существование ». Хотя машины-перцептроны, такие как Mark 1, были разработаны для распознавания изображений, в действительности они могут различать только линейно разделимые модели. Это мешает им изучать сложные шаблоны, встречающиеся в большинстве визуальных медиа.

Неудивительно, что мир разочаровался, и наступила зима с искусственным интеллектом. С тех пор многослойное восприятие (популярное в 1980-х годах) и сверточные нейронные сети (впервые предложенные Янном ЛеКуном в 1998 году) значительно превзошли однослойное восприятие в задачах распознавания изображений.

Благодаря большим наборам данных с пометками, таким как ImageNet, и мощным вычислениям на графических процессорах, более продвинутые архитектуры нейронных сетей, такие как AlexNet, VGG, Inception и ResNet, достигли высочайшего уровня производительности в области компьютерного зрения.

API компьютерного зрения и распознавания изображений

Если вы инженер по машинному обучению, легко экспериментировать и настраивать эти модели, используя предварительно обученные модели и веса в Keras / Tensorflow или PyTorch. Если вам неудобно настраивать нейронные сети самостоятельно, вам повезло. Практически все ведущие технологические гиганты и многообещающие стартапы заявляют, что «демократизируют ИИ», предлагая простые в использовании API-интерфейсы компьютерного зрения.

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

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

Проведение теста

Для этого я разбил канонический мем на 16 тестовых изображений. Затем я использую открытый исходный код, написанный инженером Гауравом Оберой, для объединения результатов из различных API. Каждое изображение проходит через шесть перечисленных выше API, которые возвращают метки высокой достоверности в качестве своих прогнозов. Исключение составляют Microsoft, которая возвращает и метки, и заголовок, и Cloudsight, которая использует гибридную технологию искусственного интеллекта человека для возврата только одного заголовка. Вот почему Cloudsight может возвращать очень точные подписи для сложных изображений, но для обработки требуется в 10–20 раз больше времени.

Ниже приведен пример вывода. Чтобы увидеть результаты всех 16 изображений чихуахуа по сравнению с маффинами, щелкните здесь.

Насколько хорошо справились API? За исключением Microsoft, которая перепутала этот маффин с плюшевым животным, все остальные API распознали, что изображение было едой. Но не было договоренности о том, была ли еда хлебом, пирогом, печеньем или маффинами. Google был единственным API, успешно определившим маффин как наиболее вероятный ярлык.

Давайте посмотрим на пример чихуахуа.

Опять же, API неплохо справились. Все они поняли, что на изображении изображена собака, хотя некоторые из них пропустили точную породу.

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

Google был окончательным идентификатором маффинов, вернув «маффин» в качестве метки наивысшего уровня достоверности для 6 из 7 изображений маффинов в тестовом наборе. Другие API не возвращали «маффин» в качестве первой метки для любого изображения маффина, а вместо этого возвращали менее релевантные метки, такие как «хлеб», «печенье» или «кекс».

Однако, несмотря на череду успехов, Google все-таки потерпел неудачу с этим конкретным изображением маффина, вернув в качестве прогнозов «морду» и «группу породы собак».

Даже самые продвинутые в мире платформы машинного обучения сбиты с толку из-за нашей шутливой игры чихуахуа против маффина. Когда дело доходит до выяснения, что такое еда, а что Fido, человеческий малыш превосходит глубокое обучение.

Итак, какой API компьютерного зрения лучший?

Чтобы узнать ответ на эту неуловимую загадку, вам нужно перейти на TOPBOTS, чтобы прочитать исходную статью полностью!