Trénování modelu pomocí služby Custom Vision

V předchozí fázi tohoto kurzu jsme probrali požadavky na vytvoření vlastního modelu a aplikace služby Windows Machine Learning a stáhli sadu obrázků, která se má použít. V této fázi se dozvíte, jak pomocí webového rozhraní Custom Vision převést sadu obrázků na model klasifikace obrázků.

Azure Custom Vision je služba pro rozpoznávání obrázků, která umožňuje vytvářet, nasazovat a vylepšovat vlastní identifikátory obrázků. Služba Custom Vision je k dispozici jako sada nativních sad SDK a také prostřednictvím webového rozhraní na webu Custom Vision.

Vytvořit zdroje a projekt Custom Vision

Vytvoření prostředku Custom Vision

Pokud chcete použít službu Custom Vision, budete muset v Azure vytvořit prostředky Custom Vision.

  1. Přejděte na hlavní stránku svého účtu Azure a vyberte Create a resource.

Výběr prostředků Azure

  1. Do vyhledávacího pole vyhledejte Custom Visiona zadáte Azure Marketplace. Výběrem Create Custom Vision otevřete dialogové okno na stránce Create Custom Vision.

Výběr balíčků

  1. Na stránce dialogového okna Custom Vision zvolte následující:
  • Vyberte obě prostředky Training a Prediction.
  • Vyberte předplatné pro správu nasazených prostředků. Pokud v nabídce nevidíte své předplatné Azure, odhlaste se a znovu otevřete svůj účet Azure pomocí stejných přihlašovacích údajů, se kterými jste účet otevřeli.
  • Vytvořte novou skupinu prostředků a pojmenujte ji. V tomto kurzu jsme nazvali naše MLTraining, ale můžete si vybrat vlastní název nebo použít existující skupinu prostředků, pokud ji máte.
  • Pojmenujte projekt. V tomto kurzu jsme nazvali naše classificationApp, ale můžete použít libovolný název podle vašeho výběru.
  • U obou Training prostředků Prediction nastavte umístění jako USA – východ a cenovou úroveň jako free FO.
  1. Stisknutím Review + create nasadíte prostředky služby Custom Vision. Nasazení prostředků může trvat několik minut.

Nasazení nového prostředku Custom Vision

Vytvoření nového projektu ve službě Custom Vision

Teď, když jste vytvořili prostředek, je čas vytvořit trénovací projekt ve službě Custom Vision.

  1. Ve webovém prohlížeči přejděte na stránku Custom Vision a vyberte Sign in. Přihlaste se pomocí stejného účtu, který jste použili k přihlášení k webu Azure Portal.

  2. Výběrem New Project otevřete dialogové okno nového projektu.

Vytvoření nového projektu

  1. Vytvořte nový projekt následujícím způsobem:
  • Name: Klasifikace potravin.
  • Description: Klasifikace různých druhů potravin.
  • Resource: Nechte stejný zdroj, který jste otevřeli dříve – ClassificationApp [F0].
  • Project Types: classification
  • Classification Types: Multilabel (Multiple tags per image)
  • Domains: Food (compact). .
  • Export Capabilities: Basic platforms (Tensorflow, CoreML, ONNX, ...)

Poznámka:

Pokud chcete exportovat do formátu ONNX, ujistěte se, že zvolíte Food (compact) doménu. Nekomprimované domény nelze exportovat do ONNX.

Důležité

Pokud je přihlášený účet přidružený k účtu Azure, zobrazí se v rozevíracím seznamu Skupina prostředků všechny skupiny prostředků Azure, které obsahují prostředek služby Custom Vision. Pokud není k dispozici žádná skupina prostředků, ověřte, že jste se přihlásili k customvision.ai se stejným účtem, jako jste použili k přihlášení k webu Azure Portal.

  1. Po vyplnění dialogového okna vyberte Create project.

Dokončení projektu

Nahrajte tréninkovou datovou sadu

Teď, když jste vytvořili projekt, nahrajete dříve připravenou datovou sadu obrázků potravin z Kaggle Open Datasets.

  1. FoodClassification Výběrem projektu otevřete webové rozhraní webu Custom Vision.

  2. Add images Vyberte tlačítko a zvolte Browse local files.

Dialogové okno Přidat obrázky

  1. Přejděte do umístění datové sady obrázků a vyberte trénovací složku – vegetable-fruit. Vyberte všechny obrázky ve složce a vyberte open. Otevře se možnost označování.

  2. Zadejte vegetable-fruit do My Tags pole a stiskněte .Upload

Nahrání obrázků

Počkejte, až se do projektu nahraje první skupina obrázků, a pak stiskněte .done Výběr značky se použije pro celou skupinu obrázků, které jste vybrali k nahrání. Proto je jednodušší nahrávat obrázky z předem připravených skupin obrázků. Po nahrání můžete značky jednotlivých obrázků kdykoli změnit.

Průběh nahrávání obrázků

  1. Po úspěšném nahrání první skupiny obrázků opakujte proces dvakrát více a nahrajte obrázky dezertů a polévky. Ujistěte se, že je označíte příslušnými značkami.

Na konci budete mít tři různé skupiny obrázků připravené na trénování.

Zobrazení značek obrázků

Trénování klasifikátoru modelu

Model teď vytrénujete tak, aby klasifikovala zeleninu, polévku a dezerty ze sady obrázků, které jste si stáhli v předchozí části.

  1. Pokud chcete zahájit proces trénování, vyberte Train tlačítko v pravém horním rohu. Klasifikátor použije obrázky k vytvoření modelu, který identifikuje vizuální vlastnosti každé značky.

Tlačítko Trénovat

K dispozici je možnost změnit prahovou hodnotu pravděpodobnosti pomocí posuvníku v levém horním rohu. Prahová hodnota pravděpodobnosti nastaví úroveň spolehlivosti, kterou musí mít predikce, aby byla považována za správnou. Pokud je prahová hodnota pravděpodobnosti příliš vysoká, získáte přesnější klasifikaci, ale zjistí se méně. Na druhou stranu, pokud je prahová hodnota pravděpodobnosti příliš nízká, zjistíte mnohem více klasifikací, ale s nižší jistotou nebo více falešně pozitivních výsledků.

V tomto kurzu můžete zachovat prahovou hodnotu pravděpodobnosti na 50%.

  1. Zde použijeme proces Quick Training. Advanced Training má více nastavení a umožňuje vám konkrétně nastavit čas použitý pro trénování, ale tuto úroveň kontroly zde nepotřebujeme. Stisknutím Train zahájíte proces trénování.

Volba typu trénování

Dokončení rychlého trénování bude trvat jen několik minut. Během této doby se informace o procesu trénování zobrazí na kartě Performance.

Proces trénování

Vyhodnocení a testování

Vyhodnocení výsledků

Po dokončení trénování se zobrazí souhrn první iterace trénování. Zahrnuje odhad výkonu modelu – přesnost a úplnost.

  • Přesnost označuje zlomek identifikovaných klasifikací, které byly správné. V našem modelu je přesnost 98,2%, takže pokud náš model klasifikuje obrázek, je vysoká pravděpodobnost, že bude správně předpovězen.
  • Recall označuje zlomek skutečných klasifikací, které byly správně identifikovány. V našem modelu je revolatelnost 97,5%, takže náš model správně klasifikuje velkou většinu obrázků, které jsou mu prezentovány.
  • Ap je zkratka pro Další výkon. Poskytuje další metriku, která shrnuje přesnost a úplnost při různých prahových hodnotách.

Vyhodnocení trénování modelu

Otestovat ten model

Před exportem modelu můžete otestovat jeho výkon.

  1. Výběrem Quick Test v pravém horním rohu horního řádku nabídek otevřete nové testovací okno.

Tlačítko Test

V tomto okně můžete zadat adresu URL obrázku k otestování nebo vybrat Browse local files , jestli chcete použít místně uložený obrázek.

Výběr image pro testování

  1. Zvolte Browse local files, přejděte k datové sadě nazvané "potraviny" a otevřete složku pro ověření. Zvolte libovolný náhodný obrázek ze fruit-vegetable složky a stiskněte .open

Výsledek testování se zobrazí na obrazovce. V našem testu režim úspěšně klasifikuje obrázek s 99,8% jistotou.

Výsledky klasifikace testů

Pro účely trénování můžete v záložce Predictions použít predikci, která může zlepšit výkon modelu. Další informace naleznete v tématu Jak vylepšit klasifikátor.

Poznámka:

Zajímá vás další informace o rozhraních API služby Azure Custom Vision? Dokumentace ke službě Custom Vision obsahuje další informace o webovém portálu Custom Vision a sadě SDK.

Exportujte model do ONNX

Teď, když jsme model vytrénovali, můžeme ho exportovat do ONNX.

  1. Vyberte kartu Performance, poté zvolte Export pro otevření okna exportu.

Tlačítko Exportovat

  1. Vyberte ONNX pro export vašeho modelu do formátu ONNX.

Volba formátu

  1. V případě potřeby můžete zvolit ONNX 16 možnost float, ale v tomto kurzu nemusíme měnit žádná nastavení. Vyberte možnost Export and Download.

Vyberte svou platformu

  1. Otevřete stažený soubor .zip a extrahujte z něj soubor model.onnx. Tento soubor obsahuje model klasifikátoru.

Gratulujeme! Úspěšně jste vytvořili a exportovali klasifikační model.

Další kroky

Teď, když máme klasifikační model, je dalším krokem vytvoření aplikace pro Windows a jeho místní spuštění na vašem zařízení s Windows.