Dom Trendy Po co uruchamiać szkolenie ML na lokalnej maszynie, a następnie regularnie wykonywać na serwerze?

Po co uruchamiać szkolenie ML na lokalnej maszynie, a następnie regularnie wykonywać na serwerze?

Anonim

P:

Po co przeprowadzać szkolenie uczenia maszynowego (ML) na komputerze lokalnym, a następnie regularnie wykonywać je na serwerze?

ZA:

Pytanie o to, jak zbudować projekt uczenia maszynowego oraz jego fazy szkolenia i testów, ma wiele wspólnego z tym, jak przechodzimy przez „cykl życia” ML i przenosimy program ze środowiska szkoleniowego do środowiska produkcyjnego.

Jedną z najprostszych przyczyn zastosowania powyższego modelu wprowadzenia szkolenia ML na maszynie lokalnej, a następnie przeniesienia wykonania do systemu opartego na serwerze, jest korzyść z zasadniczego rozdzielenia obowiązków. Ogólnie rzecz biorąc, chcesz, aby zestaw treningowy był izolowany, abyś miał jasny obraz tego, gdzie zaczyna się i kończy trening oraz gdzie zaczyna się testowanie. W tym artykule KDNuggets mowa jest o tej zasadzie w zgrubny sposób, a także omawia inne powody, aby izolować zestawy szkoleniowe na lokalnej maszynie. Inną podstawową propozycją wartości dla tego modelu jest to, że dzięki zestawom szkoleniowym i testowym na bardzo różnych architekturach nigdy nie będziesz mylony co do wspólnego przydzielania pociągów / testów!

Kolejna interesująca korzyść związana jest z cyberbezpieczeństwem. Eksperci zwracają uwagę, że jeśli masz wstępne procesy pociągu na lokalnej maszynie, nie musi ona być podłączona do Internetu! To poszerza bezpieczeństwo w fundamentalny sposób, „inkubując” proces, aż dotrze do świata produkcyjnego, w którym następnie trzeba zbudować odpowiednie zabezpieczenia w modelu serwera.

Ponadto niektóre z tych „izolowanych” modeli mogą pomóc w takich problemach, jak dryf koncepcji i ukryte konteksty - zasada „niestacjonarności” ostrzega programistów, że dane nie „pozostają takie same” w czasie (w zależności od tego, co jest mierzone) i że dopasowanie fazy testowej do fazy pociągu może zająć dużo czasu. Lub, w niektórych przypadkach, procesy pociągów i testów łączą się ze sobą, powodując zamieszanie.

Wdrożenie fazy testowej na serwerze po raz pierwszy może ułatwić różne modele „czarnej skrzynki”, w których rozwiązuje się problem adaptacji danych. W niektórych przypadkach eliminuje to zbędny proces składania zleceń zmian na wielu platformach.

Następnie środowisko serwerowe obsługuje oczywiście procesy w czasie rzeczywistym lub dynamiczne, w których inżynierowie będą chcieli uzyskać dostęp do modeli przesyłania danych i kodów, które najlepiej działają w produkcji w ML. Na przykład AWS Lambda może być atrakcyjną opcją do obsługi mikrofunkcji produkcji (lub kombinacji przechowywania obiektów Lambda i S3) i bez łączności (bez serwera), co staje się niemożliwe.

Oto niektóre z zagadnień, o których programiści mogą pomyśleć, zastanawiając się, jak podzielić szkolenia na fazy ML od testowania i produkcji.

Po co uruchamiać szkolenie ML na lokalnej maszynie, a następnie regularnie wykonywać na serwerze?