Как видно из названия, это журнал стажера по машинному обучению (ML) в ImpactIA Foundation. Я постараюсь вести еженедельный журнал своей деятельности в Фонде, чтобы отслеживать свои успехи и оставлять дорожную карту для стажеров, которые придут после меня.

Моя вторая неделя в impactIA была разделена между продолжением моей работы над DAI (танцующим роботом) и началом знакомства с проектом Фонда aiXlr8 (ускорение).

Во-первых, мне удалось добиться определенных успехов в обращении с Jetson Nano. Реализовав простую сеть классификации изображений, а также сеть обнаружения объектов (используя отличный учебник Hello AI World), я начинаю понимать необходимые инструменты для написания и запуска программ из командной строки при использовании видеопотоков в реальном времени. Я начал реализовывать сеть определения позы (используя это руководство), однако базовый код, который я использую, написан в формате Jupyter Notebook и использует ipywidgets для отображения выходного видеопотока, поэтому в настоящее время я обновляю код для трансляции выходного видеопотока в браузер localhost. Я уверен, что после исправления этой ошибки появятся и другие ошибки, но мы добиваемся стабильного прогресса. Кроме того, мне нужно выяснить, как запустить эти сети на двух видеопотоках в реальном времени - позвольте мне объяснить. Основная рама DAI имеет квадратную форму, поэтому состоит из 6 сторон. Каждая сторона оснащена обращенной наружу камерой, а три Jetson Nano отвечают за обработку пары потоков камеры.

Во-вторых, я начал работать над проектом фонда aiXlr8. В рамках этого проекта Фонд помогает и консультирует МСП (малые и средние предприятия) и отдельных лиц по вопросам интеграции решений искусственного интеллекта в свой бизнес с точки зрения устойчивого развития. Первый проект, который мне поручили, - это компания, которая хочет автоматизировать контроль качества на производственной линии. В настоящее время эта работа возложена на человека, который берет каждое сверло (сверлильную головку), чтобы проверить, нет ли дефектов на зубах (наконечник сверлильной головки состоит из трех зубцов). Это очень повторяющаяся и утомительная работа, поэтому она подвержена ошибкам, и мы хотели бы автоматизировать ее, чтобы этот человек мог быть более полезным для компании. Поэтому первым шагом является сбор и подготовка данных обучения для нашей сети. Компания предоставила нам очень мало фотографий (~ 100), которые нужно пометить, чтобы сеть могла начать обучение. Для маркировки мы используем созданный Microsoft инструмент с открытым исходным кодом VoTT (Visual Object Tagging Tool). Чтобы удовлетворить еще один проект Фонда (о котором я расскажу через неделю), меня попросили создать учебное пособие, чтобы научить людей использовать VoTT для маркировки изображений. Это было захватывающее испытание, поскольку VoTT было для меня совершенно новым делом, и я никогда раньше не маркировал изображения! Черпая вдохновение в блестящем руководстве Джейкоба Соловца, я создал свой собственный (на французском языке) - это заняло большую часть моей недели.

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

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