Вы готовы превратить свою идею о приложении для машинного обучения с использованием распознавания изображений в «следующее лучшее»! Оно произведет революцию в мобильной рекламе, в секторе образования, автомобильной промышленности и в мире финансов. … Вы называете это.

Но тут реальность поражает:

«Как мне ... простым способом реализовать функцию распознавания изображений в моем приложении?»

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

Как включить такую ​​службу / API в свое приложение? Приложение, которое должно анализировать, систематизировать и изменять различные изображения?

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

Таким образом, вы можете сравнить и поэкспериментировать, чтобы выбрать тот, который лучше всего соответствует вашим целям и вашему опыту машинного обучения…

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

Прежде чем приступить к включению возможностей машинного обучения в своем веб-приложении или мобильном приложении, убедитесь, что:

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

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

2. Реализуйте распознавание изображений в своем приложении: выбор лучшего API

«Какие API-интерфейсы для распознавания изображений являются лучшими на рынке?», наверное, спросите вы себя прямо сейчас.

«Какое лучшее решение для меня включить распознавание изображений в мое приложение для машинного обучения, если:

  • У меня практически нет опыта в области машинного обучения
  • Я ищу программу для анализа изображений, которую легко реализовать, простую в использовании, но мощную
  • … тот, который должен позволить мне быстро обучить пользовательскую модель »

2.1. Mobile Vision API

Платформа на базе Google, оснащенная возможностью обнаруживать объекты на изображениях и видео.

Для этого используются 3 типа детекторов:

  • детектор лица
  • детектор текста
  • детектор штрих-кода

Источник изображения: Google Developers.

«Детектор лиц» «загружен» некоторыми замечательными функциями, такими как:

  • предоставление информации о состоянии человеческих лиц в анализируемых изображениях / видео: глаза открыты / закрыты, улыбка, плач и т. д.
  • определение частей лица: рот, нос, глаза
  • анализ нескольких лиц на одном изображении
  • распознавание человеческих лиц на записанных видео, на мобильной камере и неподвижных изображениях

Примечание: помните, что этот API не предоставляет возможности распознавания лиц; он не может сказать, идентичны ли 2 изображения человеческих лиц или нет.

2.2. API Google Vision

Ищете что-то более сложное, более ... усовершенствованное, чем услуга «обнаружение объектов»?

Для программного обеспечения для распознавания изображений, которое делает больше, чем просто:

  • предоставить похожие изображения
  • «Обнаруживать» лица и визуальные объекты

… И вместо этого обнаруживает «подробности» о загруженных изображениях? Тот, который определяет:

  • Существо на картинке - человек или собака
  • персонажи грустны или счастливы (анализ настроений)
  • они ведут себя непристойно или занимаются активными действиями, отмеченными как "не подходящие" в Безопасном поиске Google.

… И маркирует данные изображения («погода», «осень», «выгул собаки», «самец»)?

Тогда Google Vision API (или Cloud Vision API) - это то, что вам нужно.

В отличие от других ведущих доступных решений для распознавания изображений, он «балует» вас:

  • простой REST API
  • функция обнаружения ориентира

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

А теперь вот как это настроить:

  1. Зарегистрируйте учетную запись Google Compute Engine
  2. Выберите проект (если вы только что зарегистрированный пользователь, по умолчанию выбран «Мой первый проект»)
  3. Возьмите ключ API из меню в левой части экрана (сохраните его в текстовый файл) и запустите его в своем проекте (просто включите API по этому URL)
  4. Выберите свой проект приложения
  5. Теперь вы готовы приступить к работе с новым API распознавания изображений, интегрированным в проект вашего приложения; просто сохраните текст в файле google_vision.json:

Это запрос JSON, который указывает Google Vision API на конкретное изображение, которое нужно проанализировать, и возможности обнаружения для срабатывания.

Примечание: помните, что вы должны использовать этот API только в личных приложениях!

2.3. Clarifai

В нашем списке есть специальная программа для распознавания изображений, с которой можно поэкспериментировать, если:

  • вам нужен инструмент визуального поиска с функцией анализа видео,
  • вам нужен простой в реализации и использовании API для добавления тегов к изображениям; для распознавания и понимания особенностей контента в ваших изображениях / видео
  • вам нужен API с сильным концептуальным моделированием
  • вы планируете включить функцию распознавания изображений, которая позволит вам создавать и обучать собственные пользовательские модели для тестирования

Но как мне использовать« Clarifai’s Custom Training API для создания моей собственной модели?»

Это довольно просто:

  • для объявления положительного результата вы используете: clearifai.positive (‘https://goo.gl/1Q8W8S‘ dog ’, callback);
  • для прогнозирования изображения вы используете: clearifai.predict (‘https://goo.gl/xNNRJg‘ dog ’, обратный вызов);
  • для объявления отрицательного результата вы используете: clearifai.predict (‘https://goo.gl/xNNRJg‘ lion ’, callback);

2.4. Эйнштейн видение

Хотите немного заняться искусственным интеллектом?

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

Тогда подумайте о Видении Эйнштейна! Интегрируйте его в свое приложение для машинного обучения и начните изучать два его API:

  • Обнаружение объектов Эйнштейна: дает вам возможность обучать модели, которые должны распознавать несколько отдельных объектов на изображении (предоставляя такую ​​информацию, как местоположение и размер каждого элемента).
  • Классификация изображений Эйнштейна: позволяет создавать и обучать модели обнаруживать и классифицировать изображения в масштабе.

«Где бы я использовал такое приложение с поддержкой AI?»

Вот один из наиболее распространенных вариантов использования распознавания изображений:

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

2.5. Amazon Rekognition

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

Тогда вы выбираете Amazon Rekognition.

Он предназначен для:

  • предоставить подробную информацию (например, распознавание бороды)
  • сравните лица и оцените вероятность того, что 2 лица принадлежат одному и тому же человеку

2.6. API обнаружения объектов Google Tensorflow

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

API обнаружения объектов Tensorflow - это фреймворк с открытым исходным кодом, разработанный на основе идеи, что:

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

В этом отношении имеющийся гид поддерживает идею в целом.

Источник изображения: Github

Вот как использовать API:

  1. Загрузите замороженную модель (.pb - protobuf) и запустите ее в память
  2. Загружайте категории, метки, инструменты визуализации и т. Д. С помощью встроенного вспомогательного кода.
  3. Запустите новый сеанс и запустите полученную модель на одном из ваших изображений.

2 совета по интеграции и использованию этого API в вашем приложении для машинного обучения:

  • выяснить, как можно ускорить API, чтобы использовать его для обнаружения объектов в реальном времени на мобильных устройствах.
  • экспериментируйте с более точными моделями, чтобы увидеть разницу

КОНЕЦ!

Удалось ли мне (хотя бы частично) ответить на ваши вопросы:

  • «Что мне нужно знать для создания приложения для машинного обучения?»
  • «Как мне встроить пользовательские функции распознавания изображений в свое веб-приложение или мобильное приложение?»
  • «Какие API распознавания изображений являются лучшими на рынке прямо сейчас?»

Статья изначально опубликована на OPTASY.com.