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

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

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

[Статья по теме: 4 шага для запуска машинного обучения с помощью компьютерного зрения]

Что такое компьютерное зрение и что мы можем с ним сделать?

Компьютерное зрение — это программа, которая позволяет машинам обрабатывать и «понимать» содержимое изображения. Раньше у машин были проблемы с пониманием того, что они видят. Мы просто уменьшили изображение до серии текстурных маркеров или математических градиентов, чтобы сделать изображение более понятным для наших алгоритмов.

Достижения в области компьютерного зрения позволяют машинам легче обрабатывать то, что они видят. Хотя такие веб-сайты, как Shoprunner, далеки от совершенства, они используют компьютерное зрение для классификации типов одежды для более простого и эффективного поиска клиентов и обеспечения так называемого визуально похожего поиска. Подумайте о предложениях, которые вы получаете от Google или Pinterest на основе предыдущего изображения, с которым вы взаимодействовали. Для Shoprunner и других модных сайтов это позволяет покупателям искать не только по ключевым словам, но и по сходству с уже проверенным изображением.

Начало работы, часть 1. Изучите свои данные

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

Каковы ваши данные?

Если вы используете предварительно установленный API, вам необходимо знать:

  • ваши данные (как изображения, так и метки) и данные обучения достаточно похожи.
  • ваши данные содержат несколько объектов, которые необходимо обнаружить.

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

Сколько у вас размеченных данных?

ЕСЛИ вы обучаете новую модель, вам понадобится от 100 до 1000 помеченных примеров. Вам нужно будет найти набор данных, который подходит для вашей конкретной области. В некоторых случаях вы можете использовать данные из открытых источников, но вы также можете использовать краудсорсинг, если вам нужно что-то более конкретное. Если вы решите использовать краудсорсинг, всегда предпочтительнее использовать людей из вашей собственной компании, но если вы терпеливы, вы потенциально можете использовать внешние источники (хотя это не сделает ваши данные такими же чистыми, как ваша собственная организация).

Какие выходы вам нужны?

Вам нужно будет решить, что вам нужно — метки или векторы. Сложный характер вашего визуального поиска помогает определить, какая программа может предоставить правильные результаты. Векторные пакеты доступны, и многие из них имеют открытый исходный код. Shoprunner использует Spotify’s Annoy, но доступны и другие.

Начало работы. Часть 2. Инфраструктура

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

Каковы ваши тренировочные соображения?

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

Как вы развертываете?

Если это внутренняя модель, вам может не понадобиться что-то, что обеспечивает такую ​​же вычислительную мощность. Внутренние развертывания не будут иметь почти таких запросов, как производственные системы, поэтому подумайте о конечных целях развертывания.

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

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

[Статья по теме: Хотите обучать модели компьютерного зрения в 100 раз быстрее? Встречайте MissingLink.ai]

Начало работы, часть 3: Люди

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

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

Может быть сложно найти эксперта по компьютерному зрению с инженерным опытом для создания таких нестандартных решений. По оценкам Вандервельда, поиск нужного человека может занять шесть месяцев или больше. Это может быть невозможно для вас. Если это так, найдите время, чтобы обучить существующую команду этому типу глубокого обучения. Вы даже можете провести хакатон на Kaggle, как команда Shoprunner.

Не забудьте послушать выступление доктора Вандервельда на канале ODSC на Youtube, чтобы получить конкретные рекомендации по инфраструктуре, платформам и языкам!

Исходное сообщение здесь.

Читайте другие статьи по науке о данных на OpenDataScience.com, включая учебные пособия и руководства от начального до продвинутого уровня! Подпишитесь на нашу еженедельную рассылку здесь и получайте последние новости каждый четверг.