Articles

přehled end-to-End Machine Learning Workflow

ikona oka

v této části poskytujeme přehled na vysoké úrovni typického workflow pro vývoj softwaru založeného na strojovém učení.Obecně je cílem projektu strojového učení vytvořit statistický model pomocí shromážděných dat a aplikací algoritmů strojového učení na ně.Proto každý software založený na ML obsahuje tři hlavní artefakty: Data, Model ML a kód. V souladu s těmito artefakty se typický pracovní postup strojového učení skládá ze tří hlavních fází:

  • datové inženýrství: sběr dat & příprava dat,
  • ML Model Engineering: ML model training & porce a
  • kód Engineering: integrace modelu ML do konečného produktu.

níže uvedený obrázek ukazuje základní kroky zapojené do typického pracovního postupu ml.

Machine Learning Engineering

Data Engineering

počátečním krokem v jakémkoli pracovním postupu vědy o datech je získání a příprava dat, která mají být analyzována.Typicky jsou data integrována z různých zdrojů a mají různé formáty.Příprava dat následuje krok získávání dat, což je podle Gartnera “ iterativní a agilní Proces pro zkoumání, kombinování, čištění a transformaci surových dat do kurátorských datových sad pro integraci dat, vědu o datech, zjišťování dat a případy použití analytics/business intelligence (BI)“.Zejména, i když je přípravná fáze přechodnou fází zaměřenou na přípravu dat pro analýzu, uvádí se, že tato fáze je nejdražší z hlediska zdrojů a času.Příprava dat je kritickou činností v pracovním postupu vědy o datech, protože je důležité vyhnout se šíření chyb dat do další fáze, analýzy dat, protože by to mělo za následek odvození nesprávných poznatků z dat.

datový inženýrský kanál zahrnuje posloupnost operací s dostupnými daty, která vede k dodávání tréninkových a testovacích datových souborů pro algoritmy strojového učení:

  1. Data požití-sběr dat pomocí různých rámců a formátů, jako je Spark, HDFS, CSV, atd. Tento krok může také zahrnovat generování syntetických dat nebo obohacení dat.
  2. průzkum a validace-zahrnuje profilování dat za účelem získání informací o obsahu a struktuře dat. Výstupem tohoto kroku je sada metadat, například max, min, avg hodnot. Operace validace dat jsou uživatelem definované funkce detekce chyb, které skenují datovou sadu, aby zjistily některé chyby.
  3. Data Wrangling (čištění) – proces re-formátování jednotlivých atributů a opravy chyb v datech, jako jsou chybějící hodnoty imputace.
  4. označování dat-provoz datového inženýrského potrubí, kde je každý datový bod přiřazen konkrétní kategorii.
  5. rozdělení dat-rozdělení dat do tréninkových, validačních a testovacích datových sad, které mají být použity během hlavních fází strojového učení k vytvoření modelu ML.

Model Engineering

jádrem ML workflow je fáze psaní a provádění algoritmů strojového učení pro získání modelu ML. Potrubí modelového inženýrství zahrnuje řadu operací, které vedou ke konečnému modelu:

  1. modelový trénink-proces aplikace algoritmu strojového učení na tréninková data pro trénink modelu ML. Zahrnuje také inženýrství funkcí a ladění hyperparametru pro modelovou tréninkovou aktivitu.
  2. vyhodnocení modelu-ověření vyškoleného modelu, aby se zajistilo, že splňuje původní kodifikované cíle před podáním modelu ML ve výrobě konečnému uživateli.
  3. testování modelu-provedení závěrečného „testu přijetí modelu“ pomocí datové sady hold backtest.
  4. Model Packaging-proces exportu konečného modelu ML do specifického formátu (např. PMML, PFA nebo ONNX), který popisuje model, aby mohl být spotřebován obchodní aplikací.

nasazení modelu

jakmile jsme vyškolili model strojového učení, musíme jej nasadit jako součást obchodní aplikace, jako je mobilní nebo stolní aplikace.Modely ML vyžadují různé datové body (vektor funkcí) k vytvoření předpovědí.Poslední fází pracovního postupu ML je integrace dříve navrženého modelu ML do stávajícího softwaru.Tato fáze zahrnuje následující operace:

  1. Model Serving-proces adresování artefaktu modelu ML ve výrobním prostředí.
  2. monitorování výkonu modelu – proces pozorování výkonu modelu ML na základě živých a dříve neviditelných dat, jako je predikce nebo doporučení. Zejména nás zajímají signály specifické pro ML, jako je odchylka predikce od výkonu předchozího modelu. Tyto signály mohou být použity jako spouštěče pro re-trénink modelu.
  3. protokolování výkonu modelu-každý požadavek na inferenci má za následek záznam protokolu.