Vytváření vlastních modelů AI pomocí služby Azure Machine Learning
Dostupnost sofistikovaných modelů AI může organizacím pomoct výrazně snížit množství prostředků, které může projekt datových věd vyžadovat. Pojďme se podívat, jak můžou organizace řešit problémy se strojovým učením a provozem pomocí služby Azure Machine Learning.
Výzvy strojového učení a potřeba operací strojového učení
Údržba řešení AI obvykle vyžaduje správu životního cyklu strojového učení k dokumentaci a správě dat, kódu, modelových prostředí a samotných modelů strojového učení. Potřebujete vytvořit procesy pro vývoj, balení a nasazování modelů a také monitorovat jejich výkon a občas je znovu natrénovat. A většina organizací současně spravuje více modelů v produkčním prostředí a přidává se ke složitosti.
K efektivnímu zvládnutí této složitosti se vyžadují některé osvědčené postupy. Zaměřují se na spolupráci napříč týmy, automatizaci a standardizaci procesů a zajištění snadného auditování, vysvětlení a opětovného použití modelů. K tomu se týmy datových věd spoléhají na provozní přístup strojového učení. Tato metodologie je inspirovaná DevOps (vývoj a provoz), oborový standard pro správu operací v cyklu vývoje aplikací, protože potíže vývojářů a datových vědců jsou podobné.
Azure Machine Learning
Datoví vědci můžou spravovat a spouštět DevOps strojového učení z Azure Machine Learning, což je platforma od Microsoftu, která usnadňuje správu životního cyklu strojového učení a provozní postupy. Tyto nástroje pomáhají týmům spolupracovat ve sdíleném, auditovatelném a bezpečném prostředí, kde je možné optimalizovat mnoho procesů prostřednictvím automatizace.
Správa životního cyklu strojového učení
Azure Machine Learning podporuje kompletní správu životního cyklu strojového učení předtrénovaných a vlastních modelů. Typický životní cyklus zahrnuje následující kroky: přípravu dat, trénování modelu, balení modelu, ověření modelu, nasazení modelu, monitorování modelu a opětovné trénování.
Klasický přístup zahrnuje všechny obvyklé kroky projektu datových věd.
- Příprava datové sady AI začíná na datech. Nejprve musí datoví vědci připravit data, pomocí kterých se má model trénovat. Příprava dat je často největší časový závazek životního cyklu. Tento úkol zahrnuje vyhledání nebo vytvoření vlastní datové sady a čištění, aby bylo možné ji snadno číst pomocí počítačů. Chcete se ujistit, že data představují reprezentativní vzorek, že proměnné jsou relevantní pro váš cíl atd.
- Trénování a testování Dále datoví vědci na data aplikují algoritmy pro trénování modelu strojového učení. Pak je otestují s novými daty, aby viděli, jak přesné jsou jejich předpovědi.
- Balíček. Model nejde přímo vložit do aplikace. Musí být kontejnerizován, takže může běžet se všemi nástroji a architekturami, na kterých je postaven.
- Ověřte. V tomto okamžiku tým vyhodnocuje, jak se výkon modelu porovnává s obchodními cíli. Testování může vrátit dostatek metrik, ale model nemusí při použití ve skutečném obchodním scénáři fungovat podle očekávání.
- Opakujte kroky 1 až 4. Nalezení uspokojivého modelu může trvat stovky hodin trénování. Vývojový tým může trénovat mnoho verzí modelu úpravou trénovacích dat, laděním hyperparametrů algoritmu nebo vyzkoušením různých algoritmů. V ideálním případě se model zlepšuje s každým kruhem úpravy. Nakonec je to role vývojového týmu, která určuje, která verze modelu nejlépe vyhovuje případu obchodního použití.
- Deploy. Nakonec model nasadí. Mezi možnosti nasazení patří: v cloudu, na místním serveru a na zařízeních, jako jsou kamery, brány IoT nebo stroje.
- Monitorování a opětovné natrénování I když model funguje dobře na začátku, musí být průběžně monitorován a znovu natrénován, aby zůstal relevantní a přesný.
Poznámka:
Integrace předem natrénovaných modelů a jejich přizpůsobení obchodním potřebám vyžaduje jiný pracovní postup, který integruje vlastní modely. Pomocí služby Azure Machine Learning můžete použít předem natrénované modely nebo vytvořit vlastní modely. Výběr jednoho přístupu nad jiným závisí na scénáři. Práce s předem natrénovanými modely má výhodu, že vyžaduje méně prostředků a poskytuje výsledky rychleji. Předem připravené modely jsou ale natrénované tak, aby řešily širokou škálu případů použití, takže se mohou potýkat s velmi specifickými potřebami. V těchto případech může být lepším nápadem úplný vlastní model. Flexibilní kombinace obou přístupů je často vhodnější a pomáhá škálovat. Týmy umělé inteligence můžou ukládat prostředky pomocí předem natrénovaných modelů pro nejsnadnější případy použití a investovat tyto prostředky do vytváření vlastních modelů AI pro nejsnadnější scénáře. Další iterace můžou předem připravené modely vylepšit jejich opětovným natrénováním.
Operace strojového učení
Operace strojového učení (MLOps) používají metodologii DevOps (vývoj a provoz) ke správě životního cyklu strojového učení efektivněji. Umožňuje agilnější a produktivní spolupráci v týmech umělé inteligence mezi všemi zúčastněnými stranami. Mezi tyto spolupráce patří datoví vědci, technici umělé inteligence, vývojáři aplikací a další IT týmy.
Procesy a nástroje MLOps pomáhají těmto týmům spolupracovat a poskytovat přehled prostřednictvím sdílené a auditovatelné dokumentace. Technologie MLOps umožňují uživatelům ukládat a sledovat změny všech prostředků, jako jsou data, kód, modely a další nástroje. Tyto technologie také můžou vytvářet efektivity a zrychlit životní cyklus pomocí automatizace, opakovatelných pracovních postupů a opakovaně použitelných prostředků. Všechny tyto postupy usnadňují agilnější a efektivnější projekty umělé inteligence.
Azure Machine Learning podporuje následující postupy MLOps:
Reprodukovatelnost modelu: znamená, že různí členové týmu můžou spouštět modely ve stejné datové sadě a získat podobné výsledky. Reprodukovatelnost je důležitá pro zajištění výsledků modelů v produkčním prostředí. Azure Machine Learning podporuje reprodukovatelnost modelů s centrální správou prostředků, jako jsou prostředí, kód, datové sady, modely a kanály strojového učení.
Ověření modelu: Před nasazením modelu je důležité ověřit metriky výkonu. Můžete mít několik metrik, které slouží k označení "nejlepšího" modelu. Ověření metrik výkonu způsoby relevantními pro případ obchodního použití je důležité. Azure Machine Learning podporuje ověřování modelů s mnoha nástroji k vyhodnocení metrik modelu, jako jsou funkce ztráty a konfuzní matice.
Nasazení modelu: Při nasazení modelu je důležité, aby datoví vědci a technici umělé inteligence spolupracovali a určili nejlepší možnost nasazení. Mezi tyto možnosti patří, cloud, místní a hraniční zařízení (kamery, drony, stroje).
Přetrénování modelů: Modely je potřeba monitorovat a pravidelně přetrénovat, aby se opravovaly problémy s výkonem a využívaly novější trénovací data. Azure Machine Learning podporuje systematický a iterativní proces pro průběžné zpřesnění a zajištění přesnosti modelu.
Tip
Příběh zákazníka: Zdravotnická organizace používá Azure Machine Learning k trénování vlastních modelů strojového učení, které předpovídají pravděpodobnost komplikací během chirurgických postupů. Modely se trénují na obrovských objemech dat, včetně faktorů, jako je věk, etničnost, historie kouření, index tělesné hmotnosti a počet krevních destiček. Použití těchto modelů umožňuje lékařským odborníkům lépe posoudit riziko a určit možnosti pro operaci nebo změnu životního stylu doporučení pro jednotlivé pacienty. Zodpovědný řídicí panel AI ve službě Azure Machine Learning pomáhá vysvětlit prediktivní faktory a zmírnit předsudky od demografických faktorů. Řešení prediktivního modelování nakonec pomáhá snížit riziko a nejistotu a zlepšit chirurgické výsledky. Přečtěte si celý příběh zákazníka zde: https://aka.ms/azure-ml-customer-story.
Tip
Zamyslete se nad tím, jak může vaše organizace využít odborné znalosti datových věd a strojového učení k vytváření vlastních modelů.
V dalším kroku zabalíme všechno pomocí prověrka znalostí.