Hvorfor køre ML-træning på en lokal maskine og derefter køre regelmæssig eksekvering på en server?

Forfatter: Roger Morrison
Oprettelsesdato: 28 September 2021
Opdateringsdato: 1 Juli 2024
Anonim
Hvorfor køre ML-træning på en lokal maskine og derefter køre regelmæssig eksekvering på en server? - Teknologi
Hvorfor køre ML-træning på en lokal maskine og derefter køre regelmæssig eksekvering på en server? - Teknologi

Indhold

Q:

Hvorfor køre maskinlæring (ML) -træning på en lokal maskine og derefter køre regelmæssig eksekvering på en server?


EN:

Spørgsmålet om, hvordan man strukturerer et maskinindlæringsprojekt og dets tog- og testfaser, har meget at gøre med, hvordan vi bevæger os gennem ML ”livscyklus” og bringer programmet fra et træningsmiljø til et produktionsmiljø.

En af de enkleste grunde til at bruge ovennævnte model til at placere ML-træning på en lokal maskine og derefter flytte udførelse til et serverbaseret system er fordelen ved væsentlig adskillelse af opgaver. Generelt ønsker du, at træningssættet skal isoleres, så du har et klart billede af, hvor træning starter og stopper, og hvor testning begynder. Denne KDNuggets-artikel taler om princippet på en grov slags måde, mens den også gennemgår nogle af de andre grunde til at isolere træningssæt på en lokal maskine. Et andet grundlæggende værdiproposition for denne model er, at med trænings- og testsæt på meget forskellige arkitekturer, vil du aldrig forveksles om fælles tog / testfordeling!


En anden interessant fordel har at gøre med cybersikkerhed. Eksperter påpeger, at hvis du har de indledende togprocesser på en lokal maskine, behøver det ikke at være tilsluttet internettet! Dette udvider sikkerheden på en grundlæggende måde, "inkuberer" processen, indtil den rammer produktionsverdenen, hvor du derefter skal opbygge tilstrækkelig sikkerhed i servermodellen.

Derudover kan nogle af disse "isolerede" modeller hjælpe med problemer som konceptdrift og skjulte ulemper - princippet om "ikke-stationalitet" advarer udviklere om, at data ikke "forbliver de samme" over tid (afhængigt af hvad der måles) og at det kan kræve en masse tilpasningsevne at få en testfase til at matche en togfase. Eller i nogle tilfælde smelter tog- og testprocesserne sammen og skaber forvirring.

Implementering af testfasen på en server for første gang kan lette forskellige "black box" -modeller, hvor du løser problemet med datatilpasningsevne. I nogle tilfælde fjerner det den overflødige proces med at placere ændringsordrer på flere platforme.


Derefter serverer servermiljøet naturligvis også realtids- eller dynamiske processer, hvor ingeniører ønsker at få adgang til dataoverførsels- og kodemodeller, der fungerer bedst til produktion i ML. For eksempel kan AWS Lambda være en attraktiv mulighed for at håndtere mikrofunktionerne i produktionen (eller en kombination af Lambda og S3-objektlagring) og uden tilslutning (uden en server), der bliver umulig.

Dette er nogle af de problemer, som udviklere måske tænker over, når de overvejer, hvordan man opdeler træning af ML-faser fra test og produktion.