Wdróż i wykorzystuj wieloplatformową platformę głębokiego uczenia na Kubernetes

Węzeł źródłowy: 1580762

Opis

Jako specjalista głębokiego uczenia się potrzebujesz niezawodności i skalowalności podczas koordynowania zadań szkoleniowych. Ponadto warto to zrobić w spójny sposób w wielu bibliotekach. Dzięki Fabric for Deep Learning (FfDL) w Kubernetes możesz to osiągnąć, dając użytkownikom możliwość korzystania z bibliotek głębokiego uczenia się, takich jak Caffe, Torch i TensorFlow w chmurze w sposób odporny i przy minimalnym wysiłku. Platforma wykorzystuje warstwę dystrybucji i orkiestracji, która ułatwia uczenie się na podstawie dużej ilości danych w rozsądnym czasie między węzłami obliczeniowymi. Warstwa udostępniania zasobów umożliwia elastyczne zarządzanie zadaniami dotyczącymi heterogenicznych zasobów, takich jak jednostki przetwarzania grafiki (GPU) i jednostki centralne (CPU), w chmurze typu infrastruktura jako usługa (IaaS).

Przegląd

Uczenie głębokich sieci neuronowych, zwane głębokim uczeniem się (część metod uczenia maszynowego), jest bardzo złożone i wymaga dużej mocy obliczeniowej. Typowy użytkownik głębokiego uczenia się jest niepotrzebnie narażony na kontakt ze szczegółami podstawowej infrastruktury sprzętowej i oprogramowania, w tym z konfiguracją drogich maszyn GPU, instalowaniem bibliotek głębokiego uczenia się i zarządzaniem zadaniami podczas wykonywania w celu obsługi awarii i odzyskiwania. Pomimo łatwości pozyskiwania sprzętu z chmur IaaS i płacenia za godzinę, użytkownik nadal musi zarządzać tymi maszynami, instalować wymagane biblioteki i zapewniać odporność zadań szkoleniowych w zakresie głębokiego uczenia się.

W tym właśnie tkwi szansa na głębokie uczenie się jako usługę. W tym wzorcu kodu pokazujemy, jak wdrożyć strukturę głębokiego uczenia się w Kubernetes. Korzystając z natywnych artefaktów architektonicznych w chmurze, takich jak Kubernetes, mikrousługi, wykresy Helm i magazyn obiektów, pokazujemy, jak wdrożyć i używać sieci szkieletowej do głębokiego uczenia się. Ta tkanina obejmuje wiele silników głębokiego uczenia się, takich jak TensorFlow, Caffe i PyTorch. Łączy w sobie elastyczność, łatwość obsługi i ekonomikę usługi w chmurze z mocą głębokiego uczenia się. Przekonasz się, że jest łatwy w użyciu, a korzystając z interfejsów API REST, możesz dostosować szkolenie za pomocą różnych zasobów w zależności od wymagań użytkownika lub budżetu. Pozwól użytkownikom skupić się na głębokim uczeniu się i aplikacjach, zamiast skupiać się na błędach.

Przepływ

pływ

  1. Wdrażający FfDL wdraża bazę kodu FfDL w klastrze Kubernetes. Klaster Kubernetes jest skonfigurowany pod kątem używanych procesorów graficznych, procesorów lub obu i ma dostęp do obiektowej pamięci masowej zgodnej z S3. Jeśli nie określono, tworzony jest lokalnie symulowany moduł S3.
  2. Po wdrożeniu analityk danych przesyła dane szkoleniowe modelu do składnicy obiektów zgodnej z S3. FfDL zakłada, że ​​dane są już w wymaganym formacie określonym przez różne platformy głębokiego uczenia się.
  3. Użytkownik tworzy plik manifestu modelu FfDL. Plik manifestu zawiera różne pola opisujące model w FfDL, informacje o składnicy obiektów, wymagania dotyczące zasobów i kilka argumentów (w tym hiperparametry), które są wymagane do wykonania modelu podczas uczenia i testowania. Następnie użytkownik wchodzi w interakcję z FfDL za pomocą CLI/SDK lub interfejsu użytkownika w celu wdrożenia pliku manifestu modelu FfDL z plikiem definicji modelu. Użytkownik uruchamia zadanie szkoleniowe i monitoruje jego postęp.
  4. Użytkownik pobiera przeszkolony model i powiązane dzienniki po zakończeniu zadania szkoleniowego.

Instrukcje

Szczegółowe kroki dla tego wzorca znajdziesz w pliku README. Poniższe kroki pokażą Ci, jak:

  1. Kompiluj, koduj i twórz obrazy platformy Docker.
  2. Zainstaluj komponenty FfDL za pomocą instalacji steru.
  3. Uruchom skrypt, aby skonfigurować Grafanę do monitorowania FfDL.
  4. Uzyskaj punkty końcowe Grafana, FfDL Web UI i FfDL REST API.
  5. Uruchom kilka prostych zadań, aby wytrenować model sieci splotowej za pomocą TensorFlow i Caffe.

Źródło: https://developer.ibm.com/patterns/deploy-and-use-a-multi-framework-deep-learning-platform-on-kubernetes/

Znak czasu:

Więcej z Programista IBM