Vertex AI czyli pierwsze kroki w ML

fotc.com 1 rok temu

Vertex AI jest kompleksową platformą używaną przez programistów oraz danologów (czy jak wolicie, ekspertów od Data Science, albo też analityków danych) w celu szybszego dostarczania modeli uczenia maszynowego do produkcji. Jest to w pełni zarządzana infrastruktura, która umożliwia zarówno trenowanie, jak i wdrażanie modeli ML oraz aplikacji AI.

Można też próbować definiować tę platformę jako szerszy obszar roboczy, wspólny zestaw narzędzi łączących takie dziedziny jak data engineering, data science, czy ML engineering, pozwalający sprawniej budować i wdrażać modele.

Z tego artykułu dowiesz się, jak dzięki Vertex AI dostępnemu w Google Cloud możesz obsłużyć cały workflow machine learning, od zarządzania danymi, aż po tworzenie prognoz.

Korzystanie z zebranych wcześniej danych pomaga udoskonalać aplikację oraz wpływa na lepszy user experience i to bez względu na ich ilość, czy też doświadczenie programistów w zakresie uczenia maszynowego i sztucznej inteligencji. Eksperci z Google twierdzą, iż tworząc Vertex AI, oddali w ręce użytkowników wszechstronną platformę, w której odnajdą się zarówno nowicjusze, jak i zaprawieni w boju praktyków AI.

Benefity korzystania z Vertex AI

Trzy główne benefity Vertex AI to:

  • Możliwość budowania modeli z Generative AI,
  • Krótszy czas treningu, a więc szybsza produkcja,
  • Prostsze zarządzanie modelami.

Vertex AI pozwala tworzyć modele z wykorzystaniem Generative AI. Oznacza to łatwy dostęp do modeli bazowych z wykorzystaniem przyjaznego API w Model Garden.

Dla analityków danych korzystanie z Vertex AI jest skutecznym narzędziem przyspieszającym pracę przy trenowaniu, dostrajaniu i wdrażaniu modeli uczenia maszynowego. Skracając czas szkolenia ograniczamy również koszty. Dzieje się to w oparciu o zoptymalizowaną infrastrukturę sztucznej inteligencji.

Bez Vertex AI, a dokładnie bez narzędzi takich jak Vertex AI Pipelines czy Vertex AI Feature Store, utrzymywanie modeli byłoby bardzo złożonym, a przez to czasochłonnym zajęciem. Wymienione wcześniej narzędzia MLOps usprawniają uruchamianie potoków uczenia maszynowego.

Jak wygląda workflow ML?

Typowy workflow w uczeniu maszynowym składa się z trzech części.

Faza przygotowawcza

Pierwsza z nich, którą można nazwać fazą przygotowawczą, składa się z:

  • Pozyskania danych,
  • Analizy danych,
  • Transformacji.

Do adekwatnego przygotowania danych służą Managed Datasets. Pomagają one zarządzać danymi w centralnej lokalizacji, tworzyć etykiety i zestawy adnotacji. Kolejną korzyścią korzystania z Managed Datasets jest możliwość porównywania wydajności modeli tworzonych z wykorzystaniem AutoML, z tymi, które zostały stworzone w sposób customowy. Innym benefitem jest generowanie wizualizacji oraz statystyk dla danych oraz ich automatyczny podział na zestawy treningowe, testowe oraz walidacyjne.

Vertex AI obsługuje różne rodzaje zbiorów danych:

  • graficzne (image datasets),
  • tabularyczne (tabular datasets),
  • tekstowe (text datasets),
  • filmowe (video datasets).

Wszystkie powyższe, z wyjątkiem zbiorów danych tabelarycznych, przekazywane są do aplikacji w formacie JSON Lines. W przypadku Tabular Datasets, Vertex przekazuje dane do aplikacji szkoleniowej w formacie CSV lub ujednoliconego identyfikatora zasobów (URI) do tabeli BigQuery.

Faza treningu

Druga faza typowej ścieżki uczenia maszynowego dzieli się na:

  • Stworzenie modelu,
  • Wytrenowanie modelu.

Ponieważ ten etap płynnie wynika z poprzedniego, to właśnie tutaj następuje wybór metody, zgodnie z którą będziemy nasz model trenować. Wybierz AutoML o ile zależy Ci na czasie, np. ze względu na potrzebę szybkiego prototypowania modeli czy też weryfikacji nowych zestawów danych.

Niekiedy jednak możesz potrzebować lepszego ukierunkowania treningu, które osiągniesz dzięki niestandardowym szkoleniom (customowym). W ten sposób zarówno zoptymalizujesz aplikację szkoleniową pod kątem docelowego wyniku, jak też przez cały proces treningu będziesz miał kontrolę nad algorytmem, posiadając też opcję opracowywania własnych funkcji.

Trzeba droga to wybór BigQuery ML. W tym przypadku korzystając z poleceń SQL możesz gwałtownie tworzyć model bezpośrednio w BigQuery, a później użyć go do pozyskania prognoz wsadowych (batch predictions).

Który sposób trenowania modeli wybrać? W poniższej tabelce przedstawiamy kilka parametrów, które pomogą Ci wybrać odpowiednie rozwiązanie.

AutoMLSzkolenie niestandardoweBigQuery ML
Czy muszę mieć doświadczenie w analityce danych?NieTakNie
Czy muszę posiadać umiejętności programistyczne?NieTakTak, konieczne umiejętności z zakresu programowania SQL.
Jak długo trwa trening modelu?KrótkoDługo, ze względu na wydłużony czas przygotowania modeluKrótko
Czy są limity w określeniu celów maszynowego?Tak, musisz wskazać jeden z predefiniowanych celów AutoMLNieTak
Czy mogę zoptymalizować model manualnie?NieTakNie
Czy mogę kontrolować środowisko treningowe?Tak, ale w ograniczonym stopniu.TakNie
Czy są jakieś limity rozmiaru danych?TakNie, ale tylko w przypadku niezarządzanych zbiorów danychTak

Faza ewaluacji i wdrożenia

W trzeciej fazie mamy do czynienia z trzema procesami:

  • Oceny (ewaluacji),
  • Wdrożenia,
  • Przewidywania.

Aby wspomóc nas w dokonywaniu ewaluacji Google udostępniło Explainable AI. To zestaw narzędzi i frameworków pozwalający lepiej zrozumieć i zinterpretować prognozy wygenerowane przez modele uczenia maszynowego.

Jeżeli jesteśmy zadowoleni ze sposobu działania wytrenowanego modelu, pozostaje nam jego wdrożenie, które możliwe jest zarówno z poziomu Google Cloud Console, jak i poprzez API. W tym momencie zaczyna się też skalowanie.

Celem naszego działania jest jednak uzyskanie predykcji, a te dzielą się z kolei na:

  • Prognozy online,
  • Prognozy wsadowe.

W przypadku prognoz online żądania są synchronicznie wysyłane do punktu końcowego modelu. Przydają się w sytuacjach wymagających uzyskania szybkich wniosków, czy też wtedy, kiedy wysyłamy żądania w odpowiedzi na dane wejściowe aplikacji.

Tymczasem prognozy wsadowe (batch predictions) to żądania asynchroniczne, czyli umożliwiające otrzymywania prognoz bezpośrednio z modelu, bez konieczności wdrażania go w punkcie końcowym. Stosuje się je w sytuacjach, w których nie potrzebujemy natychmiastowej odpowiedzi.

Kto korzysta z Vertex AI?

Vertex AI będąc niejako portalem wiodący do czerpania z możliwości jakie daje sztuczna inteligencja oraz uczenie maszynowe, cieszy się zainteresowaniem niemal każdej istotnej branży, od handlu przez finanse do szeroko rozumianej produkcji, w tym całego sektora automotive.

Producent mebli oraz akcesoriów wnętrzarskich firma Wayfair, korzystając z Vertex AI zwiększyła choćby dziesięciokrotnie prędkość trenowania modeli. Popularna platforma Etsy, łącząca ludzi tworzących, kupujących i sprzedających wyjątkowe produkty, skróciła czas przejścia od pomysłu do eksperymentu ML o połowę.

Firmy działające w handlu, takie jak Lowe, czy brazylijski Magalu, są w stanie w lepszym stopniu określać swoje zapotrzebowanie magazynowe właśnie korzystając z funkcji dostępnych w Vertex AI.

Dla Seagate, producenta dysków HDD, korzystanie z modeli stworzonych w Vertex AI pozwala lepiej przewidywać awarie dysków, a skuteczność modelu AutoML sięga choćby 98%. Japoński oddział firmy Coca Cola (Coca Cola Bottlers Japan) dzięki wykorzystaniu Vertex AI oraz BigQuery śledzi dane z 700 tys. automatów i na ich podstawie jest w stanie przewidzieć gdzie najbardziej opłaca się lokować produkty.

Zostając na jeszcze jedną chwilę w Japonii, tamtejszy producent samochodów, firma Subaru, wykorzystuje możliwości Vertex AI do zmniejszenia liczby śmiertelnych wypadków z udziałem aut koncernu.

Funkcje Vertex AI czyli MLOps w jednym miejscu

Opisując czym jest i jak działa Vertex AI, wspomnieliśmy już o niektórych najważniejszych funkcjach, takich jak Model Garden, czy Explainable AI. Pora zebrać je w jedno miejsce i pokrótce scharakteryzować.

Vertex AI Model Garden

Dostępne w ramach Vertex AI repozytorium modeli stworzonych zarówno przez Google jak i partnerskie firmy.

Vertex AI Generative AI Studio

To zarządzane środowisko ułatwiające interakcję, dostrajanie i wdrażanie modeli w podstawowym środowisku produkcyjnym.

AutoML

Narzędzie pozwalające na automatyczne trenowanie modeli Google, za pomocą którego szybciej otrzymasz wyniki.

Deep Learning VM Images

To narzędzie pozwoli Ci tworzyć instancje obrazu maszyny wirtualnej z wykorzystaniem najbardziej popularnych frameworków AI w instancji Compute Engine. Dzięki niemu nie musisz się martwić o kompatybilność oprogramowania.

Vertex AI Workbench

To w pełni zarządzana i skalowalna infrastruktura obliczeniowa oparta na platformie Jupyter. Stanowi ona bezpieczne, wyizolowane środowisko, w którym analitycy danych mogą wykonywać wszystkie działania uczenia maszynowego, od eksperymentów po wdrożenia.

Vertex AI Matching Engine

Ta wysoce skalowalna usługa pozwala dopasowywać podobieństwa wektorowe przy zapewnieniu niskich kosztów i niskiej latencji.

Vertex AI Data Labelling

Właściwe etykietowanie danych to podstawa przy uczeniu maszynowym. Vertex AI Data Labeling znacznie ten proces usprawnia.

Vertex AI Deep Learning Containers

Konteneryzacja wkracza również do AI. Dzięki Vertex AI Deep Learning Containers można gwałtownie tworzyć i wdrażać modele w przenośnym i spójnym środowisku.

Vertex Explainable AI

Opisywany już wcześniej Explainable AI pozwala lepiej rozumieć i budować zaufanie do prognoz generowanych przez model dzięki integracji z innymi funkcjonalnościami takimi jak Vertex AI Prediction, AutoML Tables czy Vertex AI Workbench.

Vertex AI Feature Store

To w pełni zarządzane repozytorium funkcji do udostępniania oraz ponownego wykorzystania funkcji ML.

Vertex ML Metadata

Funkcja ta pozwala na artifact tracking i lineage tracking w workflow uczenia maszynowego.

Vertex AI Model Monitoring

Dzięki Vertex AI Model Monitoring możliwy jest nadzór modelu za pośrednictwem alertów ostrzegających przed incydentami związanymi z wydajnością modelu, w tym szczególnie data drift i concept drift.

Vertex AI Neural Architecture Search

Ta funkcjonalność, bazująca na badaniach Google dotyczących AI pozwala tworzyć nowe architektury modeli oraz zoptymalizować je pod kątem latencji, mocy i pamięci.

Vertex AI Pipelines

Vertex AI Pipelines pozwala na tworzenie potoków (pipelines) dzięki TensorFlow Extended i Kubeflow Pipelines.

Vertex AI Prediction

Korzystając z ujednoliconej platformy wdrażania niestandardowych modeli wytrenowanych w TensorFlow, sckit, XGB, BigQuery ML oraz AutoML, można je łatwiej wdrażać przy pomocy protokołu HTTP lub prognoz wsadowych.

Vertex AI Tensorboard

Wykorzystasz to narzędzie do wizualizacji i śledzenia postępów eksperymentów uczenia maszynowego. Vertex AI Tensorboard generuje teksty, obraz oraz dane dźwiękowe.

Vertex AI Training

Jeżeli potrzebujesz większej elastyczności, to w tej usłudze znajdziesz zestaw gotowych algorytmów, dzięki którym będziesz mógł wprowadzić własny kod do trenowania modeli.

Vertex AI Vizier

Pod tą funkcjonalnością kryją się zoptymalizowane hiperparametry służące maksymalnej precyzji predykcji.

Pierwsze kroki w Vertex AI

Teraz, kiedy już wiesz czym jest Vertex AI, kto z niego korzysta i jakie są podstawowe funkcjonalności, pora na postawienie pierwszych kroków. o ile jeszcze nie korzystałeś z usług Google Cloud, to pamiętaj, iż na start otrzymujesz od firmy z Mountain View 300 dolarów do wykorzystania na usług dostępne w ramach platformy chmurowej.

Pierwsze kroki w Vertex AI

Jak sprawnie budować, testować i wdrażać modele ML? Zapytaj eksperta!

Sam cennik usług dostępnych w ramach Vertex AI jest mocno rozbudowany i żeby dobrze się w nim odnaleźć kluczowa może być pomoc oficjalnego partnera Google Cloud. Zgłaszając się do ekspertów z firmy FOTC otrzymasz nie tylko wiedzę o kosztach poszczególnych usług, ale również merytoryczne wsparcie, jak z nich optymalnie skorzystać, aby osiągnąć zamierzone efekty. kooperacja z partnerem to też dodatkowe 500 dolarów do wykorzystania w chmurze, więc nie warto zwlekać z kontaktem.

Idź do oryginalnego materiału