Operacje uczenia maszynowego (MLOps) w wersji 2

W tym artykule opisano trzy architektury platformy Azure na potrzeby operacji uczenia maszynowego. Wszystkie one mają kompleksową ciągłą integrację (CI), ciągłe dostarczanie (CD) i potoki ponownego trenowania. Architektury są przeznaczone dla tych aplikacji sztucznej inteligencji:

  • Klasyczne uczenie maszynowe
  • Przetwarzanie obrazów (CV)
  • Przetwarzanie języka naturalnego (NLP)

Architektury są produktem projektu MLOps w wersji 2. Obejmują one najlepsze rozwiązania, które architekci rozwiązań odkryli w procesie tworzenia wielu rozwiązań uczenia maszynowego. Wynik jest możliwy do wdrożenia, powtarzalny i konserwowalny wzorce zgodnie z opisem w tym miejscu.

Wszystkie architektury korzystają z usługi Azure Machine Edukacja.

Aby zapoznać się z implementacją z przykładowymi szablonami wdrażania dla metodyki MLOps w wersji 2, zobacz Akcelerator rozwiązań usługi Azure MLOps (wersja 2) w witrynie GitHub.

Potencjalne przypadki użycia

  • Klasyczne uczenie maszynowe: prognozowanie, regresja i klasyfikacja szeregów czasowych na tabelarycznych danych ustrukturyzowanych są najczęstszymi przypadkami użycia w tej kategorii. Przykłady to:
    • Klasyfikacja binarna i wieloaskładowa
    • Liniowa, wielomianowa, grzbietowa, lasso, kwantylowa i regresja Bayesiana
    • ARIMA, autoregressive (AR), SARIMA, VAR, SES, LSTM
  • CV: Przedstawiona tutaj struktura MLOps koncentruje się głównie na przypadkach użycia CV segmentacji i klasyfikacji obrazów.
  • NLP: Ta struktura MLOps może zaimplementować dowolne z tych przypadków użycia, a inne nie wymienione:
    • Rozpoznawanie jednostek nazwanych
    • Klasyfikacja tekstu
    • Generowanie tekstu
    • Analiza opinii
    • Tłumaczenie
    • Odpowiadanie na pytania
    • Podsumowanie
    • Wykrywanie zdań
    • Wykrywanie języka
    • Tagowanie części mowy

Symulacje, uczenie głębokie i inne formy sztucznej inteligencji nie są omówione w tym artykule.

Architektura

Wzorzec architektury MLOps w wersji 2 składa się z czterech głównych elementów modułowych reprezentujących te fazy cyklu życia metodyki MLOps:

  • Majątek danych
  • Administracja i konfiguracja
  • Programowanie modelu (pętla wewnętrzna)
  • Wdrażanie modelu (pętla zewnętrzna)

Te elementy, relacje między nimi i osoby zwykle skojarzone z nimi są wspólne dla wszystkich architektur scenariuszy MLOps w wersji 2. W zależności od scenariusza mogą występować różnice w szczegółach każdego z nich.

Podstawowa architektura metodyki MLOps w wersji 2 dla Edukacja maszynowych to klasyczny scenariusz uczenia maszynowego na danych tabelarycznych. Architektury CV i NLP są oparte na architekturze podstawowej i modyfikują je.

Bieżące architektury

Architektury obecnie objęte metodykami MLOps w wersji 2 i omówione w tym artykule są następujące:

Klasyczna architektura uczenia maszynowego

Diagram przedstawiający klasyczną architekturę uczenia maszynowego.

Pobierz plik programu Visio z tą architekturą.

Przepływ pracy dla klasycznej architektury uczenia maszynowego

  1. Majątek danych

    Ten element ilustruje majątek danych organizacji oraz potencjalne źródła danych i cele dla projektu nauki o danych. Inżynierowie danych są głównymi właścicielami tego elementu cyklu życia metodyki MLOps w wersji 2. Platformy danych platformy Azure na tym diagramie nie są ani wyczerpujące, ani normatywne. Źródła danych i cele reprezentujące zalecane najlepsze rozwiązania oparte na przypadku użycia klienta są wskazywane zielonym znacznikiem wyboru.

  2. Administracja i konfiguracja

    Ten element jest pierwszym krokiem we wdrożeniu akceleratora MLOps w wersji 2. Składa się z wszystkich zadań związanych z tworzeniem zasobów i rolami skojarzonymi z projektem oraz zarządzanie nimi. Mogą one obejmować następujące zadania, a może inne:

    1. Tworzenie repozytoriów kodu źródłowego projektu
    2. Tworzenie obszarów roboczych Edukacja maszyny przy użyciu narzędzia Bicep lub Terraform
    3. Tworzenie lub modyfikowanie zestawów danych i zasobów obliczeniowych używanych do tworzenia i wdrażania modelu
    4. Definicja użytkowników zespołu projektu, ich ról i kontroli dostępu do innych zasobów
    5. Tworzenie potoków ciągłej integracji/ciągłego wdrażania
    6. Tworzenie monitorów na potrzeby zbierania i powiadamiania o metrykach modelu i infrastruktury

    Podstawową osobą skojarzą z tą fazą jest zespół ds. infrastruktury, ale mogą również istnieć inżynierowie danych, inżynierowie uczenia maszynowego i analitycy danych.

  3. Programowanie modelu (pętla wewnętrzna)

    Element pętli wewnętrznej składa się z iteracyjnego przepływu pracy nauki o danych, który działa w dedykowanym, bezpiecznym obszarze roboczym usługi Machine Edukacja. Typowy przepływ pracy przedstawiono na diagramie. Jest on kontynuowany z pozyskiwania danych, eksploracyjnej analizy danych, eksperymentowania, opracowywania modeli i oceny, do rejestracji kandydata modelu na potrzeby produkcji. Ten modułowy element zaimplementowany w akceleratorze MLOps w wersji 2 jest niezależny i dostosowywany do procesu używanego przez zespół ds. nauki o danych do tworzenia modeli.

    Osoby skojarzone z tą fazą obejmują analityków danych i inżynierów uczenia maszynowego.

  4. Rejestry maszyn Edukacja

    Po utworzeniu przez zespół ds. nauki o danych modelu, który jest kandydatem do wdrożenia w środowisku produkcyjnym, model można zarejestrować w rejestrze obszarów roboczych usługi Machine Edukacja. Potoki ciągłej integracji, które są wyzwalane automatycznie przez rejestrację modelu lub przez zatwierdzenie przez człowieka w pętli, podwyższanie poziomu modelu i innych zależności modelu do fazy wdrażania modelu.

    Osoby skojarzone z tym etapem są zwykle inżynierami uczenia maszynowego.

  5. Wdrażanie modelu (pętla zewnętrzna)

    Faza wdrażania modelu lub pętli zewnętrznej składa się z etapu przedprodukcyjnego i testowania, wdrażania produkcyjnego oraz monitorowania modelu, danych i infrastruktury. Potoki ciągłego wdrażania zarządzają podwyższeniem poziomu modelu i powiązanych zasobów za pośrednictwem środowiska produkcyjnego, monitorowania i potencjalnego ponownego trenowania, ponieważ są spełnione kryteria odpowiednie dla organizacji i przypadku użycia.

    Osoby skojarzone z tą fazą są głównie inżynierami uczenia maszynowego.

  6. Przemieszczanie i testowanie

    Faza przemieszczania i testowania może się różnić w zależności od praktyk klienta, ale zazwyczaj obejmuje operacje, takie jak ponowne trenowanie i testowanie kandydata modelu na danych produkcyjnych, wdrożenia testowe pod kątem wydajności punktu końcowego, kontrole jakości danych, testy jednostkowe i odpowiedzialne kontrole sztucznej inteligencji dla modelu i stronniczości danych. Ta faza odbywa się w co najmniej jednym dedykowanym, bezpiecznym obszarze roboczym maszyny Edukacja.

  7. Wdrożenie produkcyjne

    Po przejściu modelu do fazy przejściowej i testowej można ją awansować do środowiska produkcyjnego przy użyciu zatwierdzenia bramkowanego przez człowieka w pętli. Opcje wdrażania modelu obejmują zarządzany punkt końcowy wsadowy dla scenariuszy wsadowych lub scenariuszy online niemal w czasie rzeczywistym zarządzanego punktu końcowego online lub wdrożenia platformy Kubernetes przy użyciu usługi Azure Arc. Produkcja zwykle odbywa się w co najmniej jednym dedykowanym, bezpiecznym obszarze roboczym maszyny Edukacja.

  8. Monitorowanie

    Monitorowanie w środowisku przejściowym, testowym i produkcyjnym umożliwia zbieranie metryk dla i wykonywanie działań na temat wydajności modelu, danych i infrastruktury. Monitorowanie modelu i danych może obejmować sprawdzanie dryfu modelu i danych, wydajność modelu na nowych danych oraz problemy ze odpowiedzialną sztuczną inteligencją. Monitorowanie infrastruktury może obserwować powolne reagowanie na punkty końcowe, niewystarczającą pojemność obliczeniową lub problemy z siecią.

  9. Monitorowanie danych i modeli: zdarzenia i akcje

    Na podstawie kryteriów dotyczących modelu i danych istotnych kwestii, takich jak progi metryk lub harmonogramy, automatyczne wyzwalacze i powiadomienia mogą implementować odpowiednie działania do wykonania. Może to być regularnie zaplanowane automatyczne ponowne trenowanie modelu na nowszych danych produkcyjnych i sprzężenie zwrotne do przemieszczania i testowania na potrzeby oceny przedprodukcyjnej. Może to być spowodowane wyzwalaczami w przypadku problemów z modelem lub danymi, które wymagają sprzężenia zwrotnego do fazy opracowywania modelu, w której analitycy danych mogą badać i potencjalnie opracowywać nowy model.

  10. Monitorowanie infrastruktury: zdarzenia i akcje

    Na podstawie kryteriów dotyczących infrastruktury, takich jak opóźnienie odpowiedzi punktu końcowego lub niewystarczające zasoby obliczeniowe dla wdrożenia, automatyczne wyzwalacze i powiadomienia mogą implementować odpowiednie działania do wykonania. Wyzwalają one sprzężenie zwrotne do fazy konfiguracji i administrowania, w której zespół infrastruktury może zbadać i potencjalnie ponownie skonfigurować zasoby obliczeniowe i sieciowe.

Architektura cv Edukacja maszyny

Diagram architektury przetwarzania obrazów.

Pobierz plik programu Visio z tą architekturą.

Przepływ pracy dla architektury CV

Architektura CV maszyny Edukacja jest oparta na klasycznej architekturze uczenia maszynowego, ale ma modyfikacje, które są szczególnie w nadzorowanych scenariuszach CV.

  1. Majątek danych

    Ten element ilustruje majątek danych organizacji oraz potencjalne źródła danych i cele dla projektu nauki o danych. Inżynierowie danych są głównymi właścicielami tego elementu cyklu życia metodyki MLOps w wersji 2. Platformy danych platformy Azure na tym diagramie nie są ani wyczerpujące, ani normatywne. Obrazy scenariuszy CV mogą pochodzić z wielu różnych źródeł danych. Aby uzyskać wydajność podczas tworzenia i wdrażania modeli CV przy użyciu Edukacja maszynowych, zalecane źródła danych platformy Azure dla obrazów to Azure Blob Storage i Azure Data Lake Storage.

  2. Administracja i konfiguracja

    Ten element jest pierwszym krokiem we wdrożeniu akceleratora MLOps w wersji 2. Składa się z wszystkich zadań związanych z tworzeniem zasobów i rolami skojarzonymi z projektem oraz zarządzanie nimi. W przypadku scenariuszy CV administracja i konfiguracja środowiska MLOps w wersji 2 jest w dużej mierze taka sama jak w przypadku klasycznego uczenia maszynowego, ale z dodatkowym krokiem: tworzenie projektów etykietowania obrazów i adnotacji przy użyciu funkcji etykietowania maszyny Edukacja lub innego narzędzia.

  3. Programowanie modelu (pętla wewnętrzna)

    Element pętli wewnętrznej składa się z iteracyjnego przepływu pracy nauki o danych wykonywanego w dedykowanym, bezpiecznym obszarze roboczym usługi Machine Edukacja. Podstawową różnicą między tym przepływem pracy a klasycznym scenariuszem uczenia maszynowego jest to, że etykietowanie obrazów i adnotacja to kluczowy element tej pętli programowania.

  4. Rejestry maszyn Edukacja

    Po utworzeniu przez zespół ds. nauki o danych modelu, który jest kandydatem do wdrożenia w środowisku produkcyjnym, model można zarejestrować w rejestrze obszarów roboczych usługi Machine Edukacja. Potoki ciągłej integracji wyzwalane automatycznie przez rejestrację modelu lub przez zatwierdzenie przez człowieka w pętli podwyższają poziom modelu i wszelkich innych zależności modelu do fazy wdrażania modelu.

  5. Wdrażanie modelu (pętla zewnętrzna)

    Faza wdrażania modelu lub pętli zewnętrznej składa się z etapu przedprodukcyjnego i testowania, wdrażania produkcyjnego oraz monitorowania modelu, danych i infrastruktury. Potoki ciągłego wdrażania zarządzają podwyższeniem poziomu modelu i powiązanych zasobów za pośrednictwem produkcji, monitorowania i potencjalnego ponownego trenowania zgodnie z kryteriami odpowiednimi dla organizacji i przypadkiem użycia.

  6. Przemieszczanie i testowanie

    Faza przemieszczania i testowania może się różnić w zależności od praktyk klientów, ale zazwyczaj obejmuje operacje, takie jak wdrożenia testowe pod kątem wydajności punktu końcowego, kontrole jakości danych, testy jednostkowe i odpowiedzialne sprawdzanie sztucznej inteligencji pod kątem stronniczych danych i modelu. W przypadku scenariuszy CV ponowne trenowanie kandydata modelu na danych produkcyjnych może zostać pominięte z powodu ograniczeń dotyczących zasobów i czasu. Zamiast tego zespół ds. nauki o danych może używać danych produkcyjnych do tworzenia modeli, a model kandydata zarejestrowany w pętli programowania jest modelem ocenianym pod kątem produkcji. Ta faza odbywa się w co najmniej jednym dedykowanym, bezpiecznym obszarze roboczym maszyny Edukacja.

  7. Wdrożenie produkcyjne

    Po przejściu modelu do fazy przejściowej i testowej można ją awansować do środowiska produkcyjnego za pośrednictwem zatwierdzeń z bramką typu human-in-the-loop. Opcje wdrażania modelu obejmują zarządzany punkt końcowy wsadowy dla scenariuszy wsadowych lub scenariuszy online niemal w czasie rzeczywistym zarządzanego punktu końcowego online lub wdrożenia platformy Kubernetes przy użyciu usługi Azure Arc. Produkcja zwykle odbywa się w co najmniej jednym dedykowanym, bezpiecznym obszarze roboczym maszyny Edukacja.

  8. Monitorowanie

    Monitorowanie w środowisku przejściowym, testowym i produkcyjnym umożliwia zbieranie metryk dla i wykonywanie działań na temat wydajności modelu, danych i infrastruktury. Monitorowanie modeli i danych może obejmować sprawdzanie wydajności modelu na nowych obrazach. Monitorowanie infrastruktury może obserwować powolne reagowanie na punkty końcowe, niewystarczającą pojemność obliczeniową lub problemy z siecią.

  9. Monitorowanie danych i modeli: zdarzenia i akcje

    Fazy monitorowania danych i modeli oraz zdarzeń i akcji metodyki MLOps dla NLP są kluczowymi różnicami w porównaniu z klasycznym uczeniem maszynowym. Automatyczne ponowne trenowanie zwykle nie jest wykonywane w scenariuszach CV, gdy wykryto obniżenie wydajności modelu na nowych obrazach. W takim przypadku nowe obrazy, dla których model działa źle, muszą być przeglądane i oznaczone adnotacjami przez proces pętli człowieka, a często następna akcja wraca do pętli tworzenia modelu w celu zaktualizowania modelu przy użyciu nowych obrazów.

  10. Monitorowanie infrastruktury: zdarzenia i akcje

    Na podstawie kryteriów dotyczących infrastruktury, takich jak opóźnienie odpowiedzi punktu końcowego lub niewystarczające zasoby obliczeniowe dla wdrożenia, automatyczne wyzwalacze i powiadomienia mogą implementować odpowiednie działania do wykonania. Spowoduje to powrót do fazy konfiguracji i administrowania, w której zespół infrastruktury może zbadać i potencjalnie ponownie skonfigurować środowisko, zasoby obliczeniowe i sieciowe.

Architektura równoważenia obciążenia sieciowego Edukacja maszyny

Diagram architektury N L P.

Pobierz plik programu Visio z tą architekturą.

Przepływ pracy dla architektury NLP

Architektura nlp Edukacja maszynowa jest oparta na klasycznej architekturze uczenia maszynowego, ale ma pewne modyfikacje, które są szczególnie w scenariuszach nlp.

  1. Majątek danych

    Ten element ilustruje majątek danych organizacji oraz potencjalne źródła danych i cele dla projektu nauki o danych. Inżynierowie danych są głównymi właścicielami tego elementu cyklu życia metodyki MLOps w wersji 2. Platformy danych platformy Azure na tym diagramie nie są ani wyczerpujące, ani normatywne. Źródła danych i cele reprezentujące zalecane najlepsze rozwiązania oparte na przypadku użycia klienta są wskazywane zielonym znacznikiem wyboru.

  2. Administracja i konfiguracja

    Ten element jest pierwszym krokiem we wdrożeniu akceleratora MLOps w wersji 2. Składa się z wszystkich zadań związanych z tworzeniem zasobów i rolami skojarzonymi z projektem oraz zarządzanie nimi. W przypadku scenariuszy nlp administracja i konfiguracja środowiska MLOps w wersji 2 jest w dużej mierze taka sama jak w przypadku klasycznego uczenia maszynowego, ale z dodatkowym krokiem: tworzenie projektów etykietowania obrazów i adnotacji przy użyciu funkcji etykietowania maszyny Edukacja lub innego narzędzia.

  3. Programowanie modelu (pętla wewnętrzna)

    Element pętli wewnętrznej składa się z iteracyjnego przepływu pracy nauki o danych wykonywanego w dedykowanym, bezpiecznym obszarze roboczym usługi Machine Edukacja. Typowa pętla tworzenia modelu NLP może znacznie się różnić od klasycznego scenariusza uczenia maszynowego, w tym adnotacje dla zdań i tokenizacji, normalizacji i osadzania danych tekstowych są typowymi krokami programowania w tym scenariuszu.

  4. Rejestry maszyn Edukacja

    Po utworzeniu przez zespół ds. nauki o danych modelu, który jest kandydatem do wdrożenia w środowisku produkcyjnym, model można zarejestrować w rejestrze obszarów roboczych usługi Machine Edukacja. Potoki ciągłej integracji wyzwalane automatycznie przez rejestrację modelu lub przez zatwierdzenie przez człowieka w pętli podwyższają poziom modelu i wszelkich innych zależności modelu do fazy wdrażania modelu.

  5. Wdrażanie modelu (pętla zewnętrzna)

    Faza wdrażania modelu lub pętli zewnętrznej składa się z etapu przedprodukcyjnego i testowania, wdrażania produkcyjnego oraz monitorowania modelu, danych i infrastruktury. Potoki ciągłego wdrażania zarządzają podwyższeniem poziomu modelu i powiązanych zasobów za pośrednictwem środowiska produkcyjnego, monitorowania i potencjalnego ponownego trenowania, ponieważ są spełnione kryteria organizacji i przypadku użycia.

  6. Przemieszczanie i testowanie

    Faza przemieszczania i testowania może się różnić w zależności od praktyk klientów, ale zazwyczaj obejmuje operacje, takie jak ponowne trenowanie i testowanie kandydata modelu na danych produkcyjnych, wdrożenia testowe pod kątem wydajności punktu końcowego, kontrole jakości danych, testy jednostkowe i odpowiedzialne kontrole sztucznej inteligencji dla modelu i stronniczości danych. Ta faza odbywa się w co najmniej jednym dedykowanym, bezpiecznym obszarze roboczym maszyny Edukacja.

  7. Wdrożenie produkcyjne

    Po zakończeniu etapu przejściowego i testowego model może zostać podwyższony do produkcji przez zatwierdzenie bramowane przez człowieka w pętli. Opcje wdrażania modelu obejmują zarządzany punkt końcowy wsadowy dla scenariuszy wsadowych lub scenariuszy online niemal w czasie rzeczywistym zarządzanego punktu końcowego online lub wdrożenia platformy Kubernetes przy użyciu usługi Azure Arc. Produkcja zwykle odbywa się w co najmniej jednym dedykowanym, bezpiecznym obszarze roboczym maszyny Edukacja.

  8. Monitorowanie

    Monitorowanie w środowisku przejściowym, testowym i produkcyjnym umożliwia zbieranie i reagowanie na zmiany wydajności modelu, danych i infrastruktury. Monitorowanie modelu i danych może obejmować sprawdzanie dryfu modelu i danych, wydajność modelu na nowych danych tekstowych i problemy ze odpowiedzialną sztuczną inteligencją. Monitorowanie infrastruktury może obserwować problemy, takie jak powolne reagowanie na punkty końcowe, niewystarczająca pojemność obliczeniowa i problemy z siecią.

  9. Monitorowanie danych i modeli: zdarzenia i akcje

    Podobnie jak w przypadku architektury CV, fazy monitorowania danych i modelu oraz zdarzenia i akcji metodyki MLOps dla NLP są kluczowymi różnicami w porównaniu z klasycznym uczeniem maszynowym. Automatyczne ponowne trenowanie nie jest zwykle wykonywane w scenariuszach NLP, gdy zostanie wykryty spadek wydajności modelu na nowym tekście. W takim przypadku nowe dane tekstowe, dla których model działa źle, muszą być przeglądane i oznaczane przez proces pętli human-in-the-loop. Często kolejną akcją jest powrót do pętli tworzenia modelu w celu zaktualizowania modelu przy użyciu nowych danych tekstowych.

  10. Monitorowanie infrastruktury: zdarzenia i akcje

    Na podstawie kryteriów dotyczących infrastruktury, takich jak opóźnienie odpowiedzi punktu końcowego lub niewystarczające zasoby obliczeniowe dla wdrożenia, automatyczne wyzwalacze i powiadomienia mogą implementować odpowiednie działania do wykonania. Wyzwalają one sprzężenie zwrotne do fazy konfiguracji i administrowania, w której zespół infrastruktury może zbadać i potencjalnie ponownie skonfigurować zasoby obliczeniowe i sieciowe.

Składniki

  • Edukacja maszynowe: usługa w chmurze służąca do trenowania, oceniania, wdrażania i zarządzania modelami uczenia maszynowego na dużą skalę.
  • Azure Pipelines: ten system kompilacji i testowania jest oparty na usłudze Azure DevOps i jest używany do potoków kompilacji i wydania. Usługa Azure Pipelines dzieli te potoki na kroki logiczne nazywane zadaniami.
  • GitHub: platforma hostingu kodu do kontroli wersji, współpracy i przepływów pracy ciągłej integracji/ciągłego wdrażania.
  • Azure Arc: platforma do zarządzania zasobami platformy Azure i zasobów lokalnych przy użyciu usługi Azure Resource Manager. Zasoby mogą obejmować maszyny wirtualne, klastry Kubernetes i bazy danych.
  • Kubernetes: system open source do automatyzacji wdrażania, skalowania i zarządzania konteneryzowanymi aplikacjami.
  • Azure Data Lake: system plików zgodny z usługą Hadoop. Ma zintegrowaną hierarchiczną przestrzeń nazw oraz ogromną skalę i gospodarkę usługi Blob Storage.
  • Azure Synapse Analytics: nieograniczona usługa analizy, która łączy integrację danych, magazynowanie danych przedsiębiorstwa i analizę danych big data.
  • Azure Event Hubs. Usługa, która pozyskiwa strumienie danych generowane przez aplikacje klienckie. Następnie pozyskuje i przechowuje dane przesyłane strumieniowo, zachowując sekwencję odebranych zdarzeń. Użytkownicy mogą łączyć się z punktami końcowymi koncentratora, aby pobierać komunikaty do przetwarzania. W tym miejscu korzystamy z integracji z usługą Data Lake Storage.

Współautorzy

Ten artykuł jest obsługiwany przez firmę Microsoft. Pierwotnie został napisany przez następujących współautorów.

Autorzy zabezpieczeń:

Aby wyświetlić niepubalne profile serwisu LinkedIn, zaloguj się do serwisu LinkedIn.

Następne kroki