Popraw wydajność cenową swojego modelu szkoleniowego, korzystając z heterogenicznych klastrów Amazon SageMaker PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Popraw wydajność cenową szkolenia modelowego za pomocą heterogenicznych klastrów Amazon SageMaker

Ten post został napisany wspólnie z Chaimem Randem z Mobileye.

Niektóre obciążenia uczenia maszynowego (ML), takie jak trenowanie modeli widzenia komputerowego lub uczenie ze wzmacnianiem, często wiążą się z połączeniem zadania intensywnie wykorzystującego procesory GPU lub akceleratora, polegającego na uczeniu modelu sieci neuronowej, z intensywnie wykorzystującym procesor CPU zadaniem wstępnego przetwarzania danych, takim jak powiększanie obrazu. Gdy oba typy zadań są uruchamiane na tym samym typie instancji, wstępne przetwarzanie danych jest ograniczane przez procesor, co prowadzi do mniejszego wykorzystania procesora GPU. Ten problem staje się z czasem coraz gorszy, ponieważ przepustowość nowszych generacji procesorów graficznych rośnie w szybszym tempie niż procesorów.

Aby rozwiązać ten problem, w lipcu 2022 r uruchomiona heterogeniczne klastry dla Amazon Sage Maker uczenie modeli, które umożliwia uruchamianie zadań szkoleniowych, które używają różnych typów wystąpień w jednym zadaniu. Pozwala to na odciążenie części potoku przetwarzania danych do zoptymalizowany pod kątem obliczeń typy instancji, podczas gdy zadanie głębokiej sieci neuronowej (DNN) nadal działa GPU lub akcelerowane obliczenia typy instancji. Nasze testy porównawcze wykazują do 46% korzyści w zakresie ceny i wydajności po włączeniu heterogenicznych klastrów w treningu modelu widzenia komputerowego TensorFlow związanego z procesorem.

W podobnym przypadku użycia Meble, firma zajmująca się rozwojem technologii pojazdów autonomicznych, podzieliła się tym:

„Przenosząc powiązane z procesorem głębokie uczenie modeli widzenia komputerowego w celu uruchomienia na wielu typach instancji (akceleratory CPU i GPU/ML), przy użyciu tf.data.service W oparciu o zbudowane przez nas rozwiązanie, udało nam się skrócić czas szkolenia o 40% przy jednoczesnym obniżeniu kosztów szkolenia o 30%. Jesteśmy podekscytowani heterogenicznymi klastrami, które pozwalają nam uruchamiać to rozwiązanie w Amazon SageMaker”.

— Inżynieria AI, Mobileye

W tym poście omawiamy następujące tematy:

  • Jak heterogeniczne klastry pomagają usuwać wąskie gardła w procesorach
  • Kiedy stosować heterogeniczne klastry i inne alternatywy?
  • Implementacje referencyjne w PyTorch i TensorFlow
  • Wyniki testu wydajności
  • Klastry heterogeniczne w Mobileye

AWS instancja przyspieszonego przetwarzania rodzina zawiera akceleratory z niestandardowych układów AWS (Inferencja AWS, Szkolenie AWS), NVIDIA (GPU), A Akceleratory Gaudi z Habana Labs (firmy Intel). Zauważ, że w tym poście zamiennie używamy terminów GPU i akcelerator.

Jak heterogeniczne klastry usuwają wąskie gardła w przetwarzaniu danych

Naukowcy zajmujący się danymi, którzy trenują modele uczenia głębokiego, mają na celu maksymalizację opłacalności szkolenia i minimalizację czasu szkolenia. Aby to osiągnąć, jednym z podstawowych celów optymalizacji jest wysokie wykorzystanie GPU, najdroższego i najbardziej deficytowego zasobu w Elastyczna chmura obliczeniowa Amazon (Amazon EC2) instancja. Może to być trudniejsze w przypadku obciążeń ML, które łączą propagację do przodu i do tyłu klasycznego modelu sieci neuronowej intensywnie korzystającego z procesora GPU z zadaniami intensywnie korzystającymi z procesora, takimi jak przetwarzanie danych i augmentacja w wizji komputerowej lub uruchamianie symulacji środowiska w uczeniu ze wzmacnianiem. Te obciążenia mogą ostatecznie być powiązane z procesorem, a posiadanie większej liczby procesorów skutkowałoby wyższą przepustowością oraz szybszym i tańszym szkoleniem, ponieważ istniejące akceleratory są częściowo bezczynne. W niektórych przypadkach wąskie gardła procesora można rozwiązać, przełączając się na inny typ instancji o wyższym stosunku procesora do procesora. Istnieją jednak sytuacje, w których przełączenie na inny typ instancji może nie być możliwe ze względu na architekturę, pamięć masową lub zależności sieciowe rodziny instancji.

W takich sytuacjach trzeba zwiększyć moc procesora, mieszając typy instancji: instancje z GPU wraz z CPU. Podsumowując, skutkuje to ogólnie wyższym stosunkiem CPU:GPU. Do niedawna zadania szkoleniowe SageMaker ograniczały się do posiadania instancji jednego wybranego typu instancji. Dzięki heterogenicznym klastrom SageMaker, analitycy danych mogą łatwo uruchomić zadanie szkoleniowe z wieloma typami instancji, co umożliwia przeniesienie niektórych istniejących zadań procesora z instancji GPU do dedykowanych instancji CPU zoptymalizowanych pod względem obliczeniowym, co skutkuje wyższym wykorzystaniem GPU oraz szybszym i bardziej kosztownym efektywne szkolenie. Co więcej, dzięki dodatkowej mocy procesora możesz sprawić, że zadania wstępnego przetwarzania, które tradycyjnie były wykonywane w trybie offline, jako wstępny etap szkolenia, staną się częścią Twojej pracy szkoleniowej. Dzięki temu można szybciej iterować i eksperymentować zarówno nad wstępnym przetwarzaniem danych, jak i założeniami treningowymi i hiperparametrami DNN.

Rozważmy na przykład potężny typ instancji GPU, ml.p4d.24xlarge (96 vCPU, 8 x NVIDIA A100 GPU), ze stosunkiem CPU:GPU wynoszącym 12:1. Załóżmy, że Twoje zadanie treningowe wymaga 20 procesorów wirtualnych, aby wstępnie przetworzyć wystarczającą ilość danych, aby jeden procesor graficzny był w 100% wykorzystany. Dlatego, aby wszystkie 8 procesorów graficznych było w 100% wykorzystane, potrzebujesz instancji typu 160 vCPU. Jednak w ml.p4d.24xlarge brakuje 64 procesorów wirtualnych lub 40%, co ogranicza wykorzystanie GPU do 60%, jak pokazano po lewej stronie poniższego diagramu. Czy dodanie kolejnej instancji ml.p4d.24xlarge pomogłoby? Nie, ponieważ stosunek CPU:GPU zadania pozostanie taki sam.

W przypadku klastrów heterogenicznych możemy dodać dwa ml.c5.18xlarge (72 vCPU), jak pokazano po prawej stronie diagramu. Całkowita wartość netto procesora wirtualnego w tym klastrze wynosi 210 (96+2*72), co przekłada się na stosunek CPU:GPU do 30:1. Każda z tych instancji zoptymalizowanych pod kątem obliczeń zostanie odciążona za pomocą zadania intensywnie przetwarzającego dane, co pozwoli na efektywne wykorzystanie procesora graficznego. Pomimo dodatkowego kosztu ml.c5.18xlarge, wyższe wykorzystanie GPU umożliwia szybsze przetwarzanie, a tym samym wyższe korzyści w zakresie ceny i wydajności.

Kiedy stosować heterogeniczne klastry i inne alternatywy?

W tej sekcji wyjaśnimy, jak zidentyfikować wąskie gardło procesora i omówimy rozwiązanie go za pomocą skalowania typu instancji w górę w porównaniu z klastrami heterogenicznymi.

Szybkim sposobem na zidentyfikowanie wąskiego gardła procesora jest monitorowanie procesora i karty graficznej wskaźniki wykorzystania dla zadań szkoleniowych SageMaker w Amazon Cloud Watch. Możesz uzyskać dostęp do tych widoków z Konsola zarządzania AWS w hiperłączu do metryk instancji na stronie szkolenia. Wybierz odpowiednie dane i zmień rozdzielczość z 5-minutowej na 1-minutową. Należy pamiętać, że skala wynosi 100% na procesor wirtualny lub GPU, więc wskaźnik wykorzystania dla wystąpienia z 4 procesorami wirtualnymi/GPU może wynosić nawet 400%. Poniższy rysunek jest jednym z takich przykładów z metryk CloudWatch, gdzie CPU jest w przybliżeniu w 100% wykorzystany, co wskazuje na wąskie gardło CPU, podczas gdy GPU jest niewykorzystane.

Popraw wydajność cenową swojego modelu szkoleniowego, korzystając z heterogenicznych klastrów Amazon SageMaker PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Aby uzyskać szczegółową diagnozę, uruchom zadania szkoleniowe z Debuger Amazon SageMaker do profilowania stanu wykorzystania zasobów, statystyk i operacji struktury, dodając konfigurację profilera podczas konstruowania estymatora SageMaker przy użyciu zestawu SDK SageMaker Python. Po przesłaniu zadania szkoleniowego przejrzyj wynik raport profilera wąskich gardeł procesora.

Jeśli uznasz, że Twoje zadanie może skorzystać na wyższym współczynniku mocy obliczeniowej CPU:GPU, najpierw rozważ skalowanie do innego typu instancji w tej samej rodzinie instancji, jeśli jest dostępna. Na przykład, jeśli trenujesz model na ml.g5.8xlarge (32 vCPU, 1 GPU), rozważ skalowanie do ml.g5.16xlarge (64 vCPU, 1 GPU). Lub, jeśli trenujesz swój model przy użyciu wystąpienia wieloprocesorowego ml.g5.12xlarge (48 procesorów wirtualnych, 4 procesory GPU), rozważ skalowanie do poziomu ml.g5.24xlarge (96 procesorów wirtualnych, 4 procesory GPU). Zapoznaj się z G5 specyfikacja rodziny wystąpień, aby uzyskać więcej szczegółów.

Czasami skalowanie w górę nie wchodzi w grę, ponieważ w tej samej rodzinie instancji nie ma typu instancji o wyższym współczynniku vCPU:GPU. Na przykład, jeśli trenujesz model na ml.trn1.32xlarge, ml.p4d.24xlarge lub ml.g5.48xlarge, należy wziąć pod uwagę heterogeniczne klastry do uczenia modelu SageMaker.

Oprócz zwiększania skali, chcielibyśmy zauważyć, że istnieją dodatkowe alternatywy dla heterogenicznego klastra, takiego jak NVIDIA DALI, który odciąża wstępne przetwarzanie obrazu na GPU. Aby uzyskać więcej informacji, zobacz Pokonywanie wąskich gardeł podczas wstępnego przetwarzania danych dzięki usłudze danych TensorFlow, NVIDIA DALI i innym metodom.

Aby uprościć podejmowanie decyzji, zapoznaj się z poniższym schematem blokowym.

Popraw wydajność cenową swojego modelu szkoleniowego, korzystając z heterogenicznych klastrów Amazon SageMaker PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Jak korzystać z heterogenicznych klastrów SageMaker

Aby szybko rozpocząć, możesz bezpośrednio przejść do przykładów TensorFlow lub PyTorch dostarczonych w ramach tego postu.

W tej sekcji na prostym przykładzie przeprowadzimy Cię przez proces korzystania z heterogenicznego klastra SageMaker. Zakładamy, że wiesz już, jak trenować model za pomocą SDK SageMaker Python i klasy Estimator. Jeśli nie, zapoznaj się z Korzystanie z pakietu SageMaker Python SDK przed kontynuowaniem.

Przed wprowadzeniem tej funkcji zainicjowałeś klasę estymatora zadania szkoleniowego za pomocą InstanceCount i parametry InstanceType, które niejawnie zakładają, że masz tylko jeden typ wystąpienia (jednorodny klaster). Wraz z wydaniem klastrów heterogenicznych wprowadziliśmy nowe sagemaker.instance_group.InstanceGroup klasa. Reprezentuje grupę co najmniej jednej instancji określonego typu, zaprojektowaną do pełnienia logicznej roli (takiej jak przetwarzanie danych lub optymalizacja sieci neuronowej. Możesz mieć dwie lub więcej grup i określić niestandardową nazwę dla każdej grupy instancji, instancja typ i liczbę instancji dla każdej grupy instancji. Aby uzyskać więcej informacji, zobacz Korzystanie z pakietu SageMaker Python SDK i Korzystanie z niskopoziomowych interfejsów API SageMaker.

Po zdefiniowaniu grup instancji należy zmodyfikować skrypt szkoleniowy, aby odczytywał SageMaker informacje o środowisku szkoleniowym która obejmuje heterogeniczną konfigurację klastra. Konfiguracja zawiera takie informacje, jak bieżące grupy instancji, bieżące hosty w każdej grupie oraz grupa, w której znajduje się bieżący host wraz z ich rankingiem. Możesz zbudować logikę w skrypcie uczącym, aby przypisać grupy instancji do określonych zadań uczących i przetwarzania danych. Ponadto Twój skrypt szkoleniowy musi dbać o komunikację między instancjami w grupie lub mechanizmy rozproszonego ładowania danych (np. tf.data.usługa w TensorFlow lub generycznym klient-serwer gRPC) lub jakąkolwiek inną platformę (na przykład Apache Spark).

Przeanalizujmy prosty przykład uruchamiania heterogenicznego zadania szkoleniowego i odczytywania konfiguracji środowiska w czasie wykonywania.

  1. Definiując i uruchamiając zadanie szkoleniowe, konfigurujemy dwie grupy instancji wykorzystywane jako argumenty do estymatora SageMaker:
    from sagemaker.instance_group import InstanceGroup
    data_group = InstanceGroup("data_group", "ml.c5.18xlarge", 2)
    dnn_group = InstanceGroup("dnn_group", "ml.p4d.24xlarge", 1)
    
    from sagemaker.pytorch import PyTorch
    estimator = PyTorch(...,
        entry_point='launcher.py',
        instance_groups=[data_group, dnn_group]
    )
  2. W skrypcie treningowym punktu wejścia (o nazwie launcher.py), w heterogenicznej konfiguracji klastra odczytujemy, czy instancja uruchomi kod preprocessingu czy DNN:
    from sagemaker_training import environment
    env = environment.Environment()
    if env.current_instance_group == 'data_group': ...;

W ten sposób podsumujmy zadania, które SageMaker wykonuje w Twoim imieniu, oraz zadania, za które jesteś odpowiedzialny.

SageMaker wykonuje następujące zadania:

  1. Zapewnij różne typy instancji zgodnie z definicją grupy instancji.
  2. Zapewnij kanały wejściowe we wszystkich lub określonych grupach instancji.
  3. Dystrybuuj skrypty szkoleniowe i zależności do instancji.
  4. Skonfiguruj klaster MPI w określonej grupie instancji, jeśli jest zdefiniowana.

Jesteś odpowiedzialny za następujące zadania:

  1. Zmodyfikuj skrypt zadania startowego szkolenia, aby określić grupy instancji.
  2. Zaimplementuj rozproszony potok danych (na przykład tf.data.service).
  3. Zmodyfikuj skrypt punktu wejścia (zobacz launcher.py w przykładowym notatniku) jako pojedynczy punkt wejścia, który będzie działał we wszystkich instancjach, wykryje, w której grupie instancji jest uruchomiony, i wywoła odpowiednie zachowanie (takie jak przetwarzanie danych lub optymalizacja DNN).
  4. Po zakończeniu pętli szkoleniowej należy upewnić się, że proces punktu wejścia kończy działanie we wszystkich wystąpieniach we wszystkich grupach wystąpień. Jest to ważne, ponieważ program SageMaker czeka, aż wszystkie instancje zakończą przetwarzanie, zanim oznaczy zadanie jako zakończone i zatrzyma naliczanie opłat. The launcher.py skrypt w przykładowych notatnikach TensorFlow i PyTorch zapewnia referencyjną implementację sygnalizujących instancji grup danych, aby zakończyć pracę, gdy instancje grupy DNN zakończą swoją pracę.

Przykładowe notebooki dla heterogenicznych klastrów SageMaker

W tej sekcji przedstawiamy podsumowanie przykładowe zeszyty zarówno dla frameworków TensorFlow, jak i PyTorch ML. W notesach można znaleźć szczegóły implementacji, instrukcje dotyczące działania kodu, fragmenty kodu, które można ponownie wykorzystać w skryptach szkoleniowych, diagramy blokowe i analizę porównawczą kosztów.

Zauważ, że w obu przykładach nie powinieneś oczekiwać, że model będzie zbieżny w znaczący sposób. Naszym zamiarem jest wyłącznie mierzenie przepustowości optymalizacji potoku danych i sieci neuronowej wyrażonej w czasie epoki/kroku. Musisz przeprowadzić testy porównawcze z własnym modelem i zbiorem danych, aby uzyskać korzyści pod względem ceny i wydajności odpowiadające Twojemu obciążeniu.

Heterogeniczny klaster wykorzystujący rozproszony moduł ładujący dane oparty na tf.data.service (TensorFlow)

To zdjęcie notatnik pokazuje, jak wdrożyć heterogeniczny klaster do szkolenia SageMaker przy użyciu TensorFlow tf.data.service oparty na rozproszonym potoku danych. Szkolimy model widzenia komputerowego głębokiego uczenia Resnet50 które wymaga zwiększania danych intensywnie korzystających z procesora. To używa Horwod do równoległości danych rozproszonych na wielu GPU.

Uruchamiamy obciążenie w dwóch konfiguracjach: najpierw jako jednorodny klaster, pojedyncza instancja ml.p4d.24xlarge, przy użyciu standardowego tf.data potok, który pokazuje wąskie gardła procesora prowadzące do niższego wykorzystania procesora graficznego. W drugim biegu przełączamy się z jednego typu instancji na dwie grupy instancji przy użyciu heterogenicznego klastra SageMaker. To uruchomienie odciąża część przetwarzania danych na dodatkowe instancje procesora (używając tf.data.service).

Następnie porównujemy konfiguracje jednorodne i heterogeniczne i znajdujemy kluczowe korzyści w zakresie ceny i wydajności. Jak pokazano w poniższej tabeli, niejednorodne zadanie (86 ms/krok) jest 2.2 razy szybsze do trenowania niż jednorodne (192 ms/krok), co sprawia, że ​​trenowanie modelu jest o 46% tańsze.

Przykład 1 (TF) ml.p4d.24xl ml.c5.18xl Cena za godzinę* Średni czas kroku Koszt na krok Poprawa wydajności cen
Jednorodny 1 0 $37.688 192 ms $0.201 .
Heterogeniczny 1 2 $45.032 86 ms $0.108 46%

* Cena za godzinę jest oparta na us-wschód-1 SageMaker cennik na żądanie

Przyspieszenie to jest możliwe dzięki wykorzystaniu dodatkowego procesora wirtualnego dostarczanego przez grupę danych i szybszemu przetwarzaniu wstępnemu. Zobacz notatnik więcej szczegółów i wykresów.

Klaster heterogeniczny korzystający z modułu ładującego dane rozproszone opartego na kliencie-serwerze gRPC (PyTorch)

To zdjęcie notatnik przedstawia przykładowe obciążenie przy użyciu heterogenicznego klastra do szkolenia SageMaker przy użyciu rozproszonego modułu ładującego dane opartego na gRPC klient-serwer. W tym przykładzie zastosowano pojedynczy procesor graficzny. Używamy modelu PyTorch w oparciu o następujące oficjalny przykład MNIST. Kod szkoleniowy został zmodyfikowany tak, aby obciążał wstępne przetwarzanie danych. Szkolimy ten model zarówno w trybach jednorodnych, jak i heterogenicznych klastrów i porównujemy wydajność cenową.

W tym przykładzie założyliśmy, że obciążenie nie może korzystać z wielu procesorów GPU i jest zależne od określonej architektury GPU (NVIDIA V100). Przeprowadziliśmy zarówno jednorodne, jak i heterogeniczne zadania szkoleniowe i znaleźliśmy kluczowe korzyści w zakresie wydajności cenowej, jak pokazano w poniższej tabeli. Szkolenie zadania heterogenicznego (1.19 s/krok) jest 6.5 razy szybsze niż zadania jednorodnego (0.18 s/krok), co sprawia, że ​​szkolenie modelu jest o 77% tańsze.

Przykład 2 (PT) ml.p3.2xl ml.c5.9xl Cena za godzinę* Średni czas kroku Koszt na krok Poprawa wydajności cen
Jednorodny 1 0 $3.825 1193 ms $0.127 .
Heterogeniczny 1 1 $5.661 184 ms $0.029 77%

* Cena za godzinę jest oparta na us-wschód-1 SageMaker cennik na żądanie

Jest to możliwe, ponieważ przy większej liczbie procesorów moglibyśmy użyć 32 pracowników programu ładującego dane (w porównaniu z 8 w przypadku ml.p3.2xlarge) do wstępnego przetwarzania danych i utrzymywania w częstych odstępach czasu wykorzystania karty graficznej na poziomie zbliżonym do 100%. Zobacz notatnik więcej szczegółów i wykresów.

Klastry heterogeniczne w Mobileye

Mobileye, firma Intel, opracowuje zaawansowane systemy wspomagania kierowcy (ADAS) i technologie pojazdów autonomicznych w celu zrewolucjonizowania branży transportowej, zwiększenia bezpieczeństwa dróg i ratowania życia. Technologie te są włączane przy użyciu zaawansowanych modeli widzenia komputerowego (CV), które są szkolone za pomocą programu SageMaker na dużych ilościach danych przechowywanych w Usługa Amazon Simple Storage (Amazonka S3). Modele te wykorzystują najnowocześniejsze techniki sieci neuronowych głębokiego uczenia.

Zauważyliśmy, że w przypadku jednego z naszych modeli CV wąskie gardło procesora było spowodowane głównie przez intensywne wstępne przetwarzanie danych, które prowadziło do niedostatecznego wykorzystania procesorów graficznych. W przypadku tego konkretnego obciążenia zaczęliśmy szukać alternatywnych rozwiązań, oceniliśmy technologie rozproszonego potoku danych z heterogenicznymi klastrami opartymi na instancjach EC2 i opracowaliśmy referencyjne implementacje dla obu TensorFlow i PyTorch. Wydanie heterogenicznego klastra SageMaker pozwala nam uruchamiać to i podobne obciążenia w SageMaker, aby osiągnąć lepsze korzyści w zakresie ceny i wydajności.

rozważania

Wraz z uruchomieniem funkcji heterogenicznego klastra, SageMaker oferuje znacznie większą elastyczność w mieszaniu i dopasowywaniu typów instancji w ramach zadania szkoleniowego. Należy jednak wziąć pod uwagę następujące kwestie podczas korzystania z tej funkcji:

  • Funkcja heterogenicznego klastra jest dostępna za pośrednictwem SageMaker PyTorch i TensorFlow klasy estymatorów ramowych. Obsługiwane frameworki to PyTorch w wersji 1.10 lub nowszej oraz TensorFlow w wersji 2.6 lub nowszej.
  • Wszystkie grupy instancji współdzielą ten sam obraz platformy Docker.
  • Wszystkie grupy instancji współdzielą ten sam skrypt szkoleniowy. Dlatego skrypt szkoleniowy powinien zostać zmodyfikowany, aby wykryć, do której grupy instancji należy, i odpowiednio uruchomić fork.
  • Nazwy hostów instancji szkoleniowych (na przykład alog-1, algo-2 itd.) są przypisywane losowo i nie wskazują, do której grupy instancji należą. Aby uzyskać rolę instancji, zalecamy uzyskanie członkostwa w grupie instancji w czasie wykonywania. Dotyczy to również przeglądania logów Cloud Watch, ponieważ nazwa strumienia dziennika [training-job-name]/algo-[instance-number-in-cluster]-[epoch_timestamp] ma nazwę hosta.
  • Strategię szkolenia rozproszonego (zwykle klaster MPI) można zastosować tylko do jednej grupy instancji.
  • SageMaker Zarządzane ciepłe baseny i SageMaker Tryb lokalny obecnie nie może być stosowany z heterogenicznym szkoleniem klastrowym.

Wnioski

W tym poście omówiliśmy, kiedy i jak korzystać z funkcji heterogenicznych klastrów w treningu SageMaker. Wykazaliśmy 46% poprawę ceny i wydajności w rzeczywistym przypadku użycia i pomogliśmy szybko rozpocząć pracę z rozproszonym modułem ładowania danych (tf.data.service i gRPC klient-serwer). Możesz używać tych implementacji przy minimalnych zmianach kodu w istniejących skryptach szkoleniowych.

Aby rozpocząć, wypróbuj nasz przykładowe zeszyty. Aby dowiedzieć się więcej o tej funkcji, zapoznaj się z Trenuj przy użyciu heterogenicznego klastra.


O autorach

Popraw wydajność cenową swojego modelu szkoleniowego, korzystając z heterogenicznych klastrów Amazon SageMaker PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Gili Nachuma jest starszym architektem rozwiązań AI/ML, który pracuje w zespole Amazon Machine Learning w regionie EMEA. Gili pasjonuje się wyzwaniami związanymi z trenowaniem modeli głębokiego uczenia oraz tym, jak uczenie maszynowe zmienia świat, jaki znamy. W wolnym czasie Gili lubi grać w tenisa stołowego.

Popraw wydajność cenową swojego modelu szkoleniowego, korzystając z heterogenicznych klastrów Amazon SageMaker PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Hrushikesh Gangur jest głównym architektem rozwiązań dla start-upów AI/ML z doświadczeniem zarówno w szkoleniach ML, jak i sieciach AWS. Pomaga startupom w technologiach Autonomous Vehicle, Robotics, CV, NLP, MLOps, ML Platform i Robotics Process Automation w sprawnym i efektywnym prowadzeniu biznesu w AWS. Przed dołączeniem do AWS Hrushikesh zdobył ponad 20-letnie doświadczenie w branży, głównie w zakresie platform chmurowych i danych.

Popraw wydajność cenową swojego modelu szkoleniowego, korzystając z heterogenicznych klastrów Amazon SageMaker PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Gal Oshri jest starszym menedżerem produktu w zespole Amazon SageMaker. Posiada 7-letnie doświadczenie w pracy nad narzędziami, frameworkami i usługami Machine Learning.

Popraw wydajność cenową swojego modelu szkoleniowego, korzystając z heterogenicznych klastrów Amazon SageMaker PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Chaima Randa jest twórcą algorytmów uczenia maszynowego pracującym nad technologiami głębokiego uczenia i widzenia komputerowego dla rozwiązań Autonomous Vehicle w Mobileye, firmie Intel. Sprawdź jego blogi.

Znak czasu:

Więcej z Uczenie maszynowe AWS