Jak vylepšit model Custom Vision

V této příručce se dozvíte, jak vylepšit kvalitu Custom Vision Serviceho modelu. Kvalita klasifikátoru nebo objektu pro rozpoznávání objektů závisí na množství, kvalitě a množství dat, která zadáte, a na tom, jak jsou vyrovnávány celé datové sady. Dobrý model obsahuje datovou sadu s vyrovnáváním školení, která je zavedená na základě toho, co se do ní bude odesílat. Proces sestavování takového modelu je iterativní; pro dosažení očekávaných výsledků je běžné, že vybereme několik zaokrouhlení školení.

Níže je obecný vzor, který vám pomůže naučit přesnější model:

  1. První a kulaté školení
  2. Přidat další obrázky a vyrovnávat data; Přeučování
  3. Přidat obrázky s proměnlivým pozadím, osvětlením, velikostí objektu, úhlem kamery a stylem; Přeučování
  4. Použít nové image k testování předpovědi
  5. Úprava stávajících školicích dat podle výsledků předpovědi

Zabránit přebudování

V některých případech se model naučí, aby předpovědi na základě libovolných vlastností, které mají vaše image společné. Například pokud vytváříte klasifikátor pro jablka vs. Citrus a jste použili obrázky jablek v rukou a v citrusech na bílých plátech, třídění může mít nepatřičný význam pro ruce vs. pláty, nikoli pro jablka a citrusy.

Obrázek neočekávané klasifikace

Chcete-li tento problém vyřešit, poskytněte obrázky s různými úhly, pozadím, velikostí objektu, skupinami a dalšími variacemi. Následující části se rozbalí na těchto konceptech.

Množství dat

Počet školicích imagí je nejdůležitějším faktorem pro vaši datovou sadu. Jako výchozí bod doporučujeme použít minimálně 50 imagí na popisek. S menším počtem imagí je lepším rizikem přebudování a zatímco vaše čísla výkonu mohou nabídnout dobrou kvalitu, váš model se může bojovat s daty ze skutečného světa.

Zůstatek dat

Je také důležité vzít v úvahu relativní množství vašich školicích dat. Například použití imagí 500 pro jednu jmenovku a 50 imagí pro jiný popisek vytvoří datovou sadu pro obdobu nevyváženého školení. Výsledkem bude, že model bude přesnější při předpovědi jednoho popisku než jiného. Pravděpodobně uvidíte lepší výsledky, pokud udržujete alespoň poměr 1:2 mezi popiskem a s nejmenším počtem obrázků a popiskem s největší imagí. Například pokud má popisek s největší imagí 500 obrázků, musí mít popisek s minimálními obrázky alespoň 250 obrázků pro školení.

Odrůda dat

Nezapomeňte použít obrázky, které jsou v rámci normálního použití odesílány do třídění. V opačném případě by se váš model mohl naučit vytvořit předpovědi na základě libovolných vlastností, které mají vaše image společné. Například pokud vytváříte klasifikátor pro jablka vs. Citrus a jste použili obrázky jablek v rukou a v citrusech na bílých plátech, třídění může mít nepatřičný význam pro ruce vs. pláty, nikoli pro jablka a citrusy.

Obrázek neočekávané klasifikace

Pokud chcete tento problém vyřešit, zahrňte celou řadu imagí, abyste měli jistotu, že váš model dokáže správně zobecnit. Tady je několik způsobů, jak můžete nastavit, aby se vaše školicí sada lépe rozvedla:

  • Pozadí: Poskytněte obrázky objektu před různými pozadími. Fotografie v přirozených kontextech jsou lepší než fotky před neutrálními pozadí, protože poskytují více informací pro třídění.

    Obrázek ukázek na pozadí

  • Osvětlení: Poskytněte image se proměnlivým osvětlením (to znamená při použití Flash, vysokou expozici atd.), zejména v případě, že obrázky používané pro předpověď mají jiný osvětlení. Je také užitečné použít obrázky s proměnlivým sytostem, odstínem a jasem.

    Obrázek ukázek světel

  • Velikost objektu: Poskytněte obrázky, ve kterých se objekty liší velikost a číslo (například fotografie ze svazků banánů a closeup jednoho banánu). Různé velikosti pomáhají klasifikátoru zobecnit lépe.

    Obrázek s ukázkami velikosti

  • Úhel kamery: Poskytněte obrázky, které se vyberou v různých úhlech kamery. Případně, pokud se všechny vaše fotky musí pokládat s pevnými fotoaparáty (jako jsou například kamery pro sledování), nezapomeňte přiřadit jiný popisek každému často vyskytujícímu objektu, abyste se vyhnuli přeložení — nesouvisejících objektů (například lampposts) jako klíčové funkce.

    Obrázek ukázek úhlů

  • Styl: Poskytněte obrázky různých stylů stejné třídy (například různé odrůdy stejného ovoce). Pokud však máte objekty drasticky odlišných stylů (například myš Mickey a myš pro reálný výkon), doporučujeme je označit jako samostatné třídy, aby lépe představovaly jejich samostatné funkce.

    Obrázek ukázek stylu

Negativní obrázky (jenom klasifikátory)

Pokud používáte klasifikátor obrázků, možná budete muset přidat negativní vzorky , aby bylo možné lépe zpřesnit třídění. Záporné vzorky jsou obrázky, které neodpovídají žádné z ostatních značek. Při nahrávání těchto imagí použijte pro ně speciální negativní popisek.

Detektory objektů zpracovávají záporné vzorky automaticky, protože všechny oblasti obrázků mimo vykreslená ohraničovací pole jsou považovány za záporné.

Poznámka

Custom Vision Service podporuje některé automatické negativní zpracování obrazu. Pokud například vytváříte klasifikátor v hroznovém moštu vs. a odešlete obrázek botu k předpovědi, měl by klasifikátor určit, že obrázek je blízko 0% pro hrozny i banány.

Na druhé straně, v případech, kdy jsou negativní obrázky jenom variací imagí používaných při výuce, je pravděpodobný, že model klasifikuje negativní image jako třídu s popiskem z důvodu skvělých podobností. Pokud například máte klasifikátor a třídění grapefruitu a zadáváte ho v obrazci Clementine, může být Clementine jako oranžová, protože mnoho funkcí Clementine se podobá těm pomerančům. Pokud jsou tyto negativní image z této povahy, doporučujeme vytvořit jednu nebo více dalších značek (například jiné) a označit negativní obrázky pomocí této značky během školení, aby model lépe rozlišil mezi těmito třídami.

Zvažte překrytí a zkrácení (jenom pro detektory objektů).

Pokud chcete, aby rozpoznávání objektů rozpoznalo oříznuté objekty (objekt je částečně vyjmut z obrázku) nebo jsou objekty zastíněna (objekt je částečně blokován jiným objektem v imagi), budete muset zahrnout školicí obrázky, které se na tyto případy vztahují.

Poznámka

Problémy s objekty, které jsou zastíněna jinými objekty, se Nezaměňujte s prahovou hodnotou překrytí, což je parametr pro hodnocení výkonu modelu. Posuvník prahová hodnota překrytí na Custom Vision webu se zabývá tím, jak velký ohraničovací rámeček se musí překrývat s skutečným ohraničujícím polem, aby se dalo považovat za správný.

Použití předpovědí k dalšímu školení

Když použijete nebo otestujete model odesláním imagí do koncového bodu předpovědi, služba Custom Vision ukládá tyto bitové kopie. Pak je můžete použít ke zlepšení modelu.

  1. Chcete-li zobrazit obrázky odeslané do modelu, otevřete webovou stránku Custom Vision, pokračujte na projekt a vyberte kartu předpovědi . Výchozí zobrazení zobrazuje obrázky z aktuální iterace. Pomocí rozevírací nabídky iterace můžete zobrazit obrázky odeslané během předchozích iterací.

    snímek obrazovky s kartou předpovědi se zobrazením obrázků

  2. Najeďte myší na obrázek, abyste viděli značky, které model předpovídá. Obrázky jsou seřazené tak, aby se v horní části zobrazovaly ty, které můžou do modelu dostat nejvíc vylepšení. Chcete-li použít jinou metodu řazení, proveďte výběr v oddílu řazení .

    Chcete-li přidat obrázek do stávajících školicích dat, vyberte obrázek, nastavte správné značky a klikněte na tlačítko Uložit a zavřít. Bitová kopie bude odebrána z předpovědi a přidána do sady školicích imagí. Můžete ji zobrazit výběrem karty školicích imagí .

    Obrázek stránky označování

  3. Pak použijte tlačítko výuka pro přeučení modelu.

Vizuálně kontrolovat předpovědi

Pokud chcete zkontrolovat předpovědi image, přejděte na kartu školicích imagí , v rozevírací nabídce iterace vyberte předchozí iterace cvičení a v části značky zaškrtněte jednu nebo více značek. Zobrazení by nyní mělo zobrazit červené pole kolem každého obrázku, pro který model nedokázal správně odhadnout danou značku.

Obrázek historie iterace

V některých případech vizuální kontrola může identifikovat vzory, které pak můžete opravit přidáním dalších školicích dat nebo úpravou existujících školicích dat. Například třídění pro jablka vs. vápna může nesprávně označovat všechny zelené jablka jako vápna. Tento problém pak můžete vyřešit přidáním a poskytnutím školicích dat, která obsahují tagované obrázky zelených jablek.

Další kroky

V této příručce jste se seznámili s několika technikami, které umožňují přesnější model klasifikace vlastních imagí nebo model detektoru objektu. Dále se naučíte, jak testovat image programově jejich odesláním do prediktivního rozhraní API.