Сервис для обучения нейронных сетей без кода
Август 2022

Сервис для обучения нейронных сетей без кода

Сервис для обучения нейронных сетей без кода
Направления
Технологии
Машинное обучение набирает обороты, эта тема вышла за рамки среды разработчиков и уже стало общей темой для широкой общественности. При этом обучение моделей нейронных сетей требует высокого уровня знаний и опыта. Не все могут обучить модель самостоятельно, а обращаться к сторонним специалистам дорого. Рассказываем, как мы создавали систему по обучению нейронных сетей.

Проблемная ситуация

Чтобы обучить нейросеть, необходимо:

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

А после - запустить весь процесс заново, до тех пор пока не будет достигнута требуемая точность.

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

Как бизнес может поступить?

  • Можно передать обучение модели на аутсорс ИИ разработчикам, которые специализируются на машинлёнинге и нейронках;
  • Можно нанять ML/DL разработчика в штат;
  • А можно найти сервис, который позволит натренировать модель, не обращаясь к сторонним разработчикам.

Разработчиком такого сервиса и стала «Технологика», совместно с AI-стартапом.

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

Бизнес-процесс

Система представляет собой платформу для тренировки моделей. Внутри всё группируется по проектам. Проекты делятся на два типа:

  1. Детекция объектов - детектирование объектов определенного типа;
  2. Классификация объектов - определение типа объекта.

Проекты

Наша система позволяет пользователю создавать и управлять сразу несколькими проектами. По всем проектам есть исчерпывающая информация: статус проекта, тип проекта, точность натренированной модели, дата создания и прочие данные.

 

Датасет

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

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

После этого датасету дается оценка сбалансированности (balancing score) - а именно, каковы у него показатели разметки (сколько объектов, каких видов, сколько размеченных и неразмеченных изображений, оценка качества разметки).

 

Тренировка модели по распознаванию изображений

Как только данные подготовлены, можно запускать тренировку модели. Здесь пользователь может согласиться с настройками по-умолчанию, которые подходят для большинства кейсов. А может выбрать фреймворк, конфигурацию (Tensorflow или PyTorch), базовую модель и типы аугментации и пр. В системе предусмотрена возможность конфигурации для более продвинутых пользователей.

 

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

 

Тестирование модели и загрузка данных

После окончания процесса обучения, модель можно или проверить на работоспособность, загрузив фото/видео и получив ответ от модели (inference), или вернуться на шаг назад и добавить больше фото в датасет, если не устраивает точность определения модели.

Последний шаг - обученную модель можно скачать в виде APK, APK source code или в других форматах (TFLite (Quantized/Non-Quantized, Int8/Float16/Float32, Saved Model (.pb)) или YOLOv5 (.pt)), которые устанавливаются на различные камеры, телефоны, IoT девайсы.

Генерация 3D-моделей

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

Процесс разработки

Разработка системы состоит из 9 этапов:

  1. Начальное проектирование
  2. Разработка PoC (итеративная по agile)
  3. Разработка MVP (итеративная по agile)
  4. Внутреннее тестирование
  5. Бета-тестирование
  6. Soft Launch;
  7. Доработка и поддержка;
  8. Большой релиз (большого как такового не было);
  9. Доработка и поддержка

На данный момент мы закончили 7 этап проекта: сделали систему рабочей и стабильной, подготовили к soft launch на 10 пользователей. Мягкий запуск позволит разрешить проблемы, которые не выявились на данный момент.

Сейчас стадия пересмотра. Мы сделали MVP, который уже в процессе использования. Постепенно появляются первые пожеланию по доработке системы на основе обратной связи от первых пользователей. У клиента в планах уже следующий этап по расширению поддерживаемых типов ml-задач (будем добавлять решения OCR задач и сегментацию изображений). Также этап доработок будет включать в себя пересмотр.

Давайте найдем решение для вашего бизнеса!

Давайте найдем решение для вашего бизнеса!

Пожалуйста, заполните 'Имя'
Пожалуйста, заполните 'Телефон'
Пожалуйста, заполните 'Емейл'
Пожалуйста, заполните 'Сообщение'

Пожалуйста, заполните 'Имя и фамилия'
Пожалуйста, заполните 'Телефон'
Пожалуйста, заполните 'Емейл'
Выберите файл
Пожалуйста, выберите файл 'Резюме'
Выберите файл
Пожалуйста, прикрепите файл 'Код / ТЗ'

другие наши проекты

Бонусная программа покупателя

Бонусная программа покупателя

Приложение для анализа медицинских тест-полосок

Приложение для анализа медицинских тест-полосок

Генератор текстовых описаний изображений для соцсетей на основе AI

Генератор текстовых описаний изображений для соцсетей на основе AI

Мобильное приложение для удалённого контроля брака печати 3D-принтеров

Мобильное приложение для удалённого контроля брака печати 3D-принтеров

Система оцифровки газет

Система оцифровки газет

Облачная хостинг-платформа

Облачная хостинг-платформа

Приложение для извлечения данных из страховых заявлений

Приложение для извлечения данных из страховых заявлений

Мобильное приложение Straw для быстрого создания опросов

Мобильное приложение Straw для быстрого создания опросов

Система сканирования паспортов

Система сканирования паспортов

Система генерации маркетингового контента на базе GPT-3

Система генерации маркетингового контента на базе GPT-3

Анализ спутниковых снимков для американского агентства недвижимости

Анализ спутниковых снимков для американского агентства недвижимости

Приложение для обработки резюме на базе ChatGPT для кадрового агентства

Приложение для обработки резюме на базе ChatGPT для кадрового агентства