Articles

en översikt över End-to-End maskininlärning arbetsflöde

ikon för ett öga

i det här avsnittet ger vi en hög nivå översikt över ett typiskt arbetsflöde för maskininlärning baserad mjukvaruutveckling.I allmänhet är målet med ett maskininlärningsprojekt att bygga en statistisk modell genom att använda insamlade data och tillämpa maskininlärningsalgoritmer på dem.Därför innehåller varje ML-baserad programvara tre huvudartefakter: Data, ML-modell och kod. Motsvarande dessa artefakter består det typiska arbetsflödet för maskininlärning av tre huvudfaser:

  • datateknik: datainsamling & databeredning,
  • ML Modellteknik :ML modellutbildning & servering och
  • kodteknik: integrering av ML-modell i slutprodukten.

figuren nedan visar de centrala stegen som är involverade i ett typiskt ML-arbetsflöde.

maskininlärningsteknik

datateknik

det första steget i ett Datavetenskapligt arbetsflöde är att förvärva och förbereda de data som ska analyseras.Vanligtvis integreras data från olika resurser och har olika format.Dataförberedelsen följer datainsamlingssteget, vilket enligt Gartner är ”en iterativ och smidig process för att utforska, kombinera, rengöra och omvandla rådata till kuraterade datamängder för dataintegration, datavetenskap, dataupptäckt och analys/business intelligence (BI) användningsfall”.I synnerhet, även om förberedelsefasen är en mellanfas som syftar till att förbereda data för analys, rapporteras denna fas vara den dyraste med avseende på resurser och tid.Databeredning är en kritisk aktivitet i datavetenskapens arbetsflöde eftersom det är viktigt att undvika spridning av datafel till nästa fas, dataanalys, eftersom detta skulle leda till att felaktiga insikter härleds från data.

Data Engineering pipeline innehåller en sekvens av operationer på tillgängliga data som leder till att leverera utbildning och testning datamängder för maskininlärningsalgoritmer:

  1. datainsamling-samla in data med hjälp av olika ramar och format, såsom Spark, HDFS, CSV, etc. Detta steg kan också innefatta syntetisk datagenerering eller databerikning.
  2. utforskning och validering – inkluderar dataprofilering för att få information om dataens innehåll och struktur. Resultatet av detta steg är en uppsättning metadata, till exempel max, min, avg av värden. Datavalideringsoperationer är användardefinierade feldetekteringsfunktioner, som skannar datauppsättningen för att upptäcka några fel.
  3. Data Wrangling (rengöring)-processen att omformatera särskilda attribut och korrigera fel i data, till exempel saknade värden imputering.
  4. data märkning-driften av data Engineering pipeline, där varje datapunkt tilldelas en viss kategori.
  5. datadelning-dela upp data i utbildning, validering och testdataset som ska användas under kärnmaskininlärningsstegen för att producera ML-modellen.

Modellteknik

kärnan i ML-arbetsflödet är fasen att skriva och utföra maskininlärningsalgoritmer för att erhålla en ML-modell. Model Engineering pipeline innehåller ett antal operationer som leder till en slutlig modell:

  1. Modellutbildning – processen att tillämpa maskininlärningsalgoritmen på träningsdata för att träna en ML-modell. Den innehåller också funktionsteknik och hyperparameterinställning för modellutbildningsaktiviteten.
  2. Modell utvärdering-validera den utbildade modellen för att säkerställa att den uppfyller ursprungliga kodifierade mål innan servering ML modellen i produktion till slutanvändaren.
  3. Model Testing-utför den slutliga ”Model Acceptance Test” med hjälp av hold backtest dataset.
  4. Modellförpackning – processen att exportera den slutliga ML-modellen till ett specifikt format (t.ex. PMML, PFA eller ONNX), som beskriver modellen för att konsumeras av affärsapplikationen.

Modelldistribution

när vi har tränat en maskininlärningsmodell måste vi distribuera den som en del av en affärsapplikation som en mobil eller stationär applikation.ML-modellerna kräver olika datapunkter (funktionsvektor) för att producera förutsägelser.Det sista steget I ML-arbetsflödet är integrationen av den tidigare konstruerade ML-modellen i befintlig programvara.Detta steg innehåller följande operationer:

  1. Modell servering-processen att ta itu med ML modell artefakt i en produktionsmiljö.
  2. Model Performance Monitoring – processen att observera ML-modellens prestanda baserat på levande och tidigare osedda data, såsom förutsägelse eller rekommendation. I synnerhet är vi intresserade av ML-specifika signaler, såsom förutsägelse avvikelse från tidigare modellprestanda. Dessa signaler kan användas som utlösare för modellåterutbildning.
  3. loggning av Modellprestanda – varje inferensförfrågan resulterar i loggposten.