Створюйте високоефективні моделі класифікації зображень за допомогою Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Створюйте високоефективні моделі класифікації зображень за допомогою Amazon SageMaker JumpStart

Класифікація зображень – це техніка машинного навчання (ML), яка дає змогу класифікувати зображення. Деякі добре відомі приклади класифікації зображень включають класифікацію рукописних цифр, класифікацію медичних зображень і розпізнавання обличчя. Класифікація зображень є корисною технікою для кількох бізнес-додатків, але побудувати хорошу модель класифікації зображень не є тривіальною.

Кілька міркувань можуть відігравати роль під час оцінки моделі ML. Окрім точності моделі, іншими потенційно важливими показниками є час навчання моделі та час висновку. Враховуючи ітераційний характер розробки моделей машинного навчання, швидший час навчання дозволяє дослідникам даних швидко перевіряти різні гіпотези. Швидший висновок може бути критичним у програмах реального часу.

Amazon SageMaker JumpStart забезпечує тонке налаштування одним кліком та розгортання широкого спектру попередньо навчених моделей для популярних завдань ML, а також вибір наскрізних рішень, які вирішують типові бізнес-проблеми. Ці функції знімають важку роботу з кожного кроку процесу ML, полегшуючи розробку високоякісних моделей і скорочуючи час до розгортання. API JumpStart дозволяють програмним шляхом розгортати та точно налаштовувати широкий вибір попередньо навчених моделей, які підтримуються JumpStart, на ваших власних наборах даних.

Ви можете поступово навчати та налаштовувати моделі ML, запропоновані в JumpStart, перед розгортанням. На момент написання статті в JumpStart доступно 87 моделей класифікації зображень на основі глибокого навчання.

Але яка модель дасть найкращі результати? У цій публікації ми представляємо методологію для легкого запуску кількох моделей і порівняння їхніх результатів за трьома цікавими вимірами: точність моделі, час навчання та час висновку.

Огляд рішення

JumpStart дозволяє навчати, налаштовувати та розгортати моделі з консолі JumpStart за допомогою інтерфейсу користувача або API. У цій публікації ми використовуємо маршрут API та представляємо блокнот із різними допоміжними сценаріями. Ви можете запустити цей блокнот і отримати результати для легкого порівняння цих моделей одна з одною, а потім вибрати модель, яка найкраще відповідає потребам вашого бізнесу з точки зору точності моделі, часу навчання та часу висновку.

Команда публічний набір даних використаний у цьому дописі, складається з майже 55,000 0 зображень хворих і здорових листків рослин, зібраних у контрольованих умовах, з мітками класу в діапазоні від 38–44,000. Цей набір даних поділено на набори даних навчання та перевірки, з приблизно 11,000 XNUMX у процесі навчання та XNUMX XNUMX зображень у процесі перевірки. Нижче наведено кілька прикладів зображень.

Для цієї вправи ми вибрали моделі з двох фреймворків — PyTorch і TensorFlow — запропонованих JumpStart. Наступні 15 модельних алгоритмів охоплюють широкий спектр популярних архітектур нейронних мереж із цих фреймворків:

  • pytorch-ic-alexnet-FT
  • pytorch-ic-densenet121-FT
  • pytorch-ic-densenet201-FT
  • pytorch-ic-googlenet-FT
  • pytorch-ic-mobilenet-v2-FT
  • pytorch-ic-resnet152-FT
  • pytorch-ic-resnet34-FT
  • tensorflow-ic-bit-s-r101x1-ilsvrc2012-classification-1-FT
  • tensorflow-ic-imagenet-inception-resnet-v2-classification 4-FT
  • tensorflow-ic-imagenet-inception-v3-classification-4-FT
  • tensorflow-ic-imagenet-mobilenet-v2-050-224-classification-4-FT
  • tensorflow-ic-imagenet-mobilenet-v2-075-224-classification-4-FT
  • tensorflow-ic-imagenet-mobilenet-v2-140-224-classification-4-FT
  • tensorflow-ic-imagenet-resnet-v2-152-classification-4-FT
  • tensorflow-ic-tf2-preview-mobilenet-v2-classification-4-FT

Використовуємо модель tensorflow-ic-imagenet-inception-v3-classification-4-FT як основу, з якою порівнюються результати інших моделей. Ця базова модель була обрана довільно.

Код, використаний для запуску цього порівняння, доступний на AWS Зразки репо GitHub.

результати

У цьому розділі ми представляємо результати цих 15 прогонів. Для всіх цих прогонів використаними гіперпараметрами були епохи = 5, швидкість навчання = 0.001, розмір партії = 16.

Точність моделі, час навчання та час висновку з моделі tensorflow-ic-imagenet-inception-v3-classification-4-FT були взяті за основу, а результати всіх інших моделей представлені відносно цієї базової моделі. Наш намір полягає не в тому, щоб показати, яка модель є найкращою, а в тому, щоб показати, як за допомогою JumpStart API можна порівняти результати різних моделей і вибрати модель, яка найкраще підходить для вашого випадку використання.

На наступному знімку екрана показано базову модель, з якою порівнювалися всі інші моделі.

Створюйте високоефективні моделі класифікації зображень за допомогою Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Наступний графік показує детальний перегляд відносної точності та відносного часу навчання. Моделі PyTorch позначені червоним кольором, а моделі TensorFlow — синім.

Створюйте високоефективні моделі класифікації зображень за допомогою Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Моделі, виділені зеленим еліпсом на попередньому графіку, здається, мають гарне поєднання відносної точності та низького відносного часу навчання. У наступній таблиці наведено докладнішу інформацію про ці три моделі.

Назва моделі Відносна точність Відносний час навчання
tensorflow-ic-imagenet-mobilenet-v2-050-224-classification-4-FT 1.01 0.74
tensorflow-ic-imagenet-mobilenet-v2-140-224-classification-4-FT 1.02 0.74
tensorflow-ic-bit-s-r101x1-ilsvrc2012-classification-1-FT 1.04 1.16

Наступний графік порівнює відносну точність і відносний час висновку. Моделі PyTorch позначені червоним кольором, а моделі TensorFlow — синім.

Створюйте високоефективні моделі класифікації зображень за допомогою Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

У наступній таблиці наведено детальну інформацію про три моделі в зеленому еліпсі.

Назва моделі Відносна точність Відносний час висновку
tensorflow-ic-imagenet-mobilenet-v2-050-224-classification-4-FT 1.01 0.94
tensorflow-ic-imagenet-mobilenet-v2-140-224-classification-4-FT 1.02 0.90
tensorflow-ic-bit-s-r101x1-ilsvrc2012-classification-1-FT 1.04 1.43

Два графіки чітко демонструють, що певні алгоритми моделі працювали краще, ніж інші, у трьох вибраних вимірах. Гнучкість, запропонована цією вправою, може допомогти вам вибрати правильний алгоритм, а за допомогою наданого блокнота ви можете легко провести цей тип експерименту на будь-якій із 87 доступних моделей.

Висновок

У цій публікації ми показали, як використовувати JumpStart для створення високоефективних моделей класифікації зображень за кількома вимірами, що цікавлять, наприклад, точність моделі, час навчання та затримка висновку. Ми також надали код для виконання цієї вправи на вашому власному наборі даних; Ви можете вибрати будь-яку цікаву модель із 87 моделей, які зараз доступні для класифікації зображень у центрі моделей JumpStart. Радимо вам спробувати це сьогодні.

Додаткову інформацію про JumpStart див SageMaker JumpStart.


Про авторів

Створюйте високоефективні моделі класифікації зображень за допомогою Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Доктор Раджу Пенматча є архітектором рішень AI/ML у сфері платформ AI в AWS. Він отримав ступінь доктора філософії в Стенфордському університеті. Він тісно працює над пакетом послуг SageMaker із низьким рівнем/некодуванням, який допомагає клієнтам легко створювати та розгортати моделі та рішення машинного навчання. Коли не допомагає клієнтам, він любить подорожувати в нові місця.

Створюйте високоефективні моделі класифікації зображень за допомогою Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Доктор Ашиш Хетан є старшим прикладним науковим співробітником із вбудованими алгоритмами Amazon SageMaker і допомагає розробляти алгоритми машинного навчання. Він отримав ступінь доктора філософії в Іллінойському університеті Урбана-Шампейн. Він активно досліджує машинне навчання та статистичні висновки та опублікував багато статей на конференціях NeurIPS, ICML, ICLR, JMLR, ACL та EMNLP.

Часова мітка:

Більше від AWS Машинне навчання