automatizace školení modelů pomocí ML .net CLI

rozhraní ML .net CLI automatizuje generování modelů pro vývojáře v rozhraní .net.

pokud chcete používat rozhraní API ML .net sám o sobě, (bez ML .net AutoML CLI), musíte zvolit trainer (implementaci algoritmu strojového učení pro konkrétní úlohu) a sadu transformací dat (metodologie funkcí), která se použije pro vaše data. Optimální kanál se bude pro každou datovou sadu lišit a výběr optimálního algoritmu ze všech voleb zvyšuje složitost. Ještě více, každý algoritmus má sadu parametrů, které se mají vyladit. Proto můžete strávit týdny a někdy měsíce na optimalizaci modelů ve službě Machine Learning, které se snaží najít nejlepší kombinace funkcí pro inženýry, výukové algoritmy a základní parametry.

rozhraní ML .net CLI tento proces zjednodušuje pomocí automatizovaného strojového učení (AutoML).

Poznámka

toto téma odkazuje na ML rozhraní .net CLI a ML .net AutoML, která jsou momentálně ve verzi Preview, a materiál může být změněn.

co je rozhraní příkazového řádku ML .net (CLI)?

rozhraní ML .net CLI je nástroj .net Core. po nainstalování mu udělíte úlohu strojového učení a školicí datovou sadu, která vygeneruje ML .net model a také kód jazyka C#, který se má spustit pro použití modelu ve vaší aplikaci.

jak je znázorněno na následujícím obrázku, je jednoduché generovat vysoce kvalitní ML .net model (serializovaný model .zip soubor) a vzorový kód jazyka C# ke spuštění nebo určení skóre modelu. Kromě toho se generuje kód C# pro vytvoření nebo výuku modelu, takže můžete prozkoumat a iterovat algoritmus a nastavení použitá pro vygenerovaný "nejlepší model".

AutoML engine pracuje v rozhraní .net CLI ML.

tyto prostředky můžete vygenerovat z vlastních datových sad, aniž byste je museli kódovat sami, takže také zlepší vaši produktivitu, i když už znáte ML .net.

v současné době jsou úlohy ML podporované rozhraním ML .net CLI:

  • klasifikace
  • nevýhody
  • základě
  • klasifikace obrázku

Příklad použití (klasifikační scénář):

mlnet classification --dataset "yelp_labelled.txt" --label-col 1 --has-header false --train-time 10

ML klasifikaci .net z příkazového řádku

můžete ji spustit stejným způsobem jako u Windows PowerShell, macOS/Linux bash nebo pomocí příkazu Windows CMD. automatické dokončování v tabulkovém prostředí (návrhy parametrů) ale nebude fungovat na Windows CMD.

Vygenerované výstupní prostředky

příkazy ML úloh v rozhraní příkazového řádku generují následující prostředky ve výstupní složce:

  • Serializovaný .zip modelu ("nejlepší model") je připravený k použití ke spuštění předpovědi.
  • Řešení C# s:
    • Kód jazyka C# ke spuštění nebo určení skóre generovaného modelu (k tomu, aby předpovědi v aplikacích pro koncové uživatele s tímto modelem).
    • Kód jazyka C# s školicím kódem, který slouží ke generování tohoto modelu (pro účely učení nebo přeškolení modelu).
  • Soubor protokolu s informacemi o všech iteracích/rozcyklcích v rámci více vyhodnocených algoritmů, včetně jejich podrobné konfigurace/kanálu.

první dva prostředky lze použít přímo v aplikacích pro koncové uživatele (ASP.NET Core webové aplikace, služby, aplikace klasické pracovní plochy atd.) k tomu, aby se předpovědi s tímto generovaným MLm modelem.

třetí asset a školicí kód vám ukáže, co ML kód rozhraní .net API používal rozhraní příkazového řádku ke výuce vygenerovaného modelu, takže můžete přesměrovat svůj model a prozkoumat a iterovat na to, které konkrétní trainer/algoritmus a parametry byly vybrány pomocí rozhraní příkazového řádku a AutoML v rámci pokrývání.

Princip kvality modelu

když vygenerujete "nejlepší model" pomocí nástroje CLI, uvidíte metriky kvality (například přesnost a R-kvadrát) podle toho, co cílíte na ML úkol.

tady jsou tyto metriky shrnuté seskupené podle ML úlohy, abyste porozuměli kvalitě automaticky generovaného nejlepšího modelu.

Metriky pro modely klasifikace

Následující obrázek zobrazuje seznam metrik klasifikace pro nejoblíbenější pět modelů nalezené rozhraním příkazového řádku:

Metriky klasifikace pro nejoblíbenější pět modelů

Přesnost je oblíbená metrika pro problémy s klasifikací, ale přesnost není vždy nejlepší metrikou pro výběr nejlepšího modelu, jak je vysvětleno v následujících odkazech. Existují případy, kdy potřebujete vyhodnotit kvalitu modelu s dalšími metrikami.

Pro zkoumání a pochopení metrik, které jsou výstupem rozhraní příkazového řádku, si přečtěte metriky vyhodnocení pro klasifikaci.

Metriky pro regrese a modely doporučení

Regresní model odpovídá datům, pokud jsou rozdíly mezi zjištěnými hodnotami a předpovězenými hodnotami modelu malé a neposunuté. Regresi je možné vyhodnotit pomocí určitých metrik.

zobrazí se podobný seznam metrik pro nejoblíbenější modely kvality nalezené rozhraním příkazového řádku, s výjimkou případu, kdy pět prvních pěti souvisí s regresí ML úlohou:

Regresní metriky pro nejoblíbenější pět modelů

Chcete-li prozkoumat a pochopit metriky, které jsou výstupem rozhraní příkazového řádku, přečtěte si téma vyhodnocení metrik pro regresi.

Viz také