Projekt Open Data Hub to otwarta platforma uczenia maszynowego oparta na Red Hat OpenShift

Przyszłość nadeszła, a technologie sztucznej inteligencji i uczenia maszynowego już z powodzeniem wykorzystują Twoje ulubione sklepy, firmy transportowe, a nawet fermy indyków.

Projekt Open Data Hub to otwarta platforma uczenia maszynowego oparta na Red Hat OpenShift

A jeśli coś istnieje, to jest już coś na ten temat w Internecie... projekt otwarty! Zobacz, jak Open Data Hub pomaga skalować nowe technologie i unikać wyzwań wdrożeniowych.

Biorąc pod uwagę wszystkie zalety sztucznej inteligencji (AI) i uczenia maszynowego (ML), organizacje często mają trudności ze skalowaniem tych technologii. Główne problemy w tym przypadku są zwykle następujące:

  • Wymiana informacji i współpraca – prawie niemożliwa jest łatwa wymiana informacji i współpraca w szybkich iteracjach.
  • Dostęp do danych – dla każdego zadania trzeba je zbudować od nowa i ręcznie, co zajmuje dużo czasu.
  • Dostęp na żądanie – nie ma możliwości uzyskania dostępu na żądanie do narzędzi i platformy uczenia maszynowego oraz infrastruktury obliczeniowej.
  • Produkcja – modele pozostają na etapie prototypu i nie są wprowadzane do użytku przemysłowego.
  • Śledź i wyjaśniaj wyniki AI – odtwarzalność, śledzenie i wyjaśnianie wyników AI/ML są trudne.

Pozostawione bez rozwiązania problemy te negatywnie wpływają na szybkość, wydajność i produktywność cennych analityków danych. Prowadzi to do ich frustracji, rozczarowania pracą, a w rezultacie oczekiwania biznesowe dotyczące AI/ML idą w zapomnienie.

Odpowiedzialność za rozwiązanie tych problemów spada na specjalistów IT, którzy muszą zapewnić analitykom danych coś w rodzaju chmury. Mówiąc bardziej szczegółowo, potrzebujemy platformy, która daje swobodę wyboru i ma wygodny, łatwy dostęp. Jednocześnie jest szybki, łatwo rekonfigurowalny, skalowalny na żądanie i odporny na awarie. Budowa takiej platformy w oparciu o technologie open source pomaga uniknąć uzależnienia od dostawcy i utrzymać długoterminową przewagę strategiczną w zakresie kontroli kosztów.

Kilka lat temu coś podobnego działo się w rozwoju aplikacji i doprowadziło do pojawienia się mikrousług, chmur hybrydowych, automatyzacji IT i zwinnych procesów. Aby sobie z tym wszystkim poradzić, specjaliści IT sięgnęli po kontenery, Kubernetes i otwarte chmury hybrydowe.

To doświadczenie jest teraz wykorzystywane, aby sprostać wyzwaniom Ala. Dlatego specjaliści IT budują platformy oparte na kontenerach, umożliwiające tworzenie usług AI/ML w ramach zwinnych procesów, przyspieszające innowacje i budowane z myślą o chmurze hybrydowej.

Projekt Open Data Hub to otwarta platforma uczenia maszynowego oparta na Red Hat OpenShift

Budowę takiej platformy zaczniemy od Red Hat OpenShift, naszej kontenerowej platformy Kubernetes dla chmury hybrydowej, która ma szybko rozwijający się ekosystem programowych i sprzętowych rozwiązań ML (NVIDIA, H2O.ai, Starburst, PerceptiLabs itp.). Niektórzy klienci Red Hat, tacy jak BMW Group, ExxonMobil i inni, wdrożyli już kontenerowe łańcuchy narzędzi ML i procesy DevOps na platformie i jej ekosystemie, aby wprowadzić swoje architektury ML do środowiska produkcyjnego i przyspieszyć pracę analityków danych.

Kolejnym powodem, dla którego uruchomiliśmy projekt Open Data Hub, jest zademonstrowanie przykładu architektury opartej na kilku projektach oprogramowania open source i pokazanie, jak wdrożyć cały cykl życia rozwiązania ML opartego na platformie OpenShift.

Projekt Open Data Hub

Jest to projekt typu open source, który jest rozwijany w odpowiedniej społeczności programistów i realizuje pełny cykl operacji - od ładowania i przekształcania danych początkowych po generowanie, trenowanie i utrzymywanie modelu - podczas rozwiązywania problemów AI / ML przy użyciu kontenerów i Kubernetes na OpenShift platforma. Projekt ten można uznać za implementację referencyjną, przykład budowania otwartego rozwiązania AI/ML-as-a-service w oparciu o OpenShift i powiązane narzędzia open source takie jak Tensorflow, JupyterHub, Spark i inne. Należy zauważyć, że sam Red Hat wykorzystuje ten projekt do świadczenia usług AI/ML. Ponadto OpenShift integruje się z kluczowymi rozwiązaniami programowymi i sprzętowymi ML firm NVIDIA, Seldon, Starbust i innych dostawców, ułatwiając budowanie i uruchamianie własnych systemów uczenia maszynowego.

Projekt Open Data Hub to otwarta platforma uczenia maszynowego oparta na Red Hat OpenShift

Projekt Open Data Hub skupia się na następujących kategoriach użytkowników i przypadkach użycia:

  • Analityk danych, który potrzebuje rozwiązania do realizacji projektów ML, zorganizowanego jak chmura z funkcjami samoobsługowymi.
  • Analityk danych, który potrzebuje maksymalnego wyboru spośród najnowszych narzędzi i platform AI/ML typu open source.
  • Analityk danych, który potrzebuje dostępu do źródeł danych podczas uczenia modeli.
  • Analityk danych potrzebujący dostępu do zasobów obliczeniowych (CPU, GPU, pamięć).
  • Analityk danych, który wymaga umiejętności współpracy i dzielenia się pracą ze współpracownikami, otrzymywania informacji zwrotnych i wprowadzania ulepszeń w ramach szybkiej iteracji.
  • Analityk danych, który chce współpracować z programistami (i zespołami deweloperskimi), aby jego modele ML i wyniki pracy trafiły do ​​produkcji.
  • Inżynier danych, który musi zapewnić analitykowi danych dostęp do różnych źródeł danych, zachowując jednocześnie zgodność z wymogami regulacyjnymi i wymogami bezpieczeństwa.
  • Administrator/operator systemu IT wymagający możliwości łatwego kontrolowania cyklu życia (instalacja, konfiguracja, aktualizacja) komponentów i technologii open source. Potrzebujemy także odpowiednich narzędzi zarządzania i kwot.

Projekt Open Data Hub łączy szereg narzędzi open source w celu wdrożenia pełnego cyklu operacji AI/ML. Jupyter Notebook jest tutaj używany jako główne narzędzie robocze do analizy danych. Zestaw narzędzi jest obecnie bardzo popularny wśród badaczy danych, a Open Data Hub umożliwia im łatwe tworzenie obszarów roboczych Jupyter Notebook i zarządzanie nimi za pomocą wbudowanego JupyterHub. Oprócz tworzenia i importowania notatników Jupyter projekt Open Data Hub zawiera także szereg gotowych notatników w postaci Biblioteki AI.

Ta biblioteka to zbiór komponentów i rozwiązań uczenia maszynowego typu open source dla typowych scenariuszy, które upraszczają szybkie prototypowanie. JupyterHub jest zintegrowany z modelem dostępu RBAC OpenShift, który umożliwia korzystanie z istniejących kont OpenShift i wdrażanie pojedynczego logowania. Dodatkowo JupyterHub oferuje przyjazny interfejs użytkownika zwany spawnerem, za pomocą którego użytkownik może w łatwy sposób skonfigurować ilość zasobów obliczeniowych (rdzeni procesora, pamięci, karty graficznej) dla wybranego Notatnika Jupyter.

Gdy analityk danych utworzy i skonfiguruje laptopa, wszystkimi innymi kwestiami z nim związanymi zajmuje się harmonogram Kubernetes, będący częścią OpenShift. Użytkownicy mogą jedynie przeprowadzać swoje eksperymenty, zapisywać i udostępniać wyniki swojej pracy. Ponadto zaawansowani użytkownicy mogą uzyskać bezpośredni dostęp do powłoki OpenShift CLI bezpośrednio z notatników Jupyter, aby wykorzystać podstawowe funkcje Kubernetes, takie jak Job lub funkcje OpenShift, takie jak Tekton lub Knative. Możesz też w tym celu skorzystać z wygodnego interfejsu GUI OpenShift, zwanego „konsolą internetową OpenShift”.

Projekt Open Data Hub to otwarta platforma uczenia maszynowego oparta na Red Hat OpenShift

Projekt Open Data Hub to otwarta platforma uczenia maszynowego oparta na Red Hat OpenShift

Przechodząc do kolejnego etapu, Open Data Hub umożliwia zarządzanie potokami danych. W tym celu wykorzystywany jest obiekt Ceph, który jest udostępniany jako obiektowa pamięć danych kompatybilna z S3. Apache Spark umożliwia strumieniowe przesyłanie danych ze źródeł zewnętrznych lub wbudowanej pamięci Ceph S3, a także pozwala na wykonanie wstępnych transformacji danych. Apache Kafka zapewnia zaawansowane zarządzanie potokami danych (gdzie dane można ładować wielokrotnie, a także przekształcać, analizować i wykonywać operacje na danych).

Analityk danych uzyskał więc dostęp do danych i zbudował model. Teraz ma chęć podzielić się uzyskanymi wynikami ze współpracownikami lub twórcami aplikacji i udostępnić im swój model na zasadach usługi. Wymaga to serwera wnioskowania, a Open Data Hub ma taki serwer, nazywa się Seldon i pozwala na publikację modelu jako usługę RESTful.

W pewnym momencie na serwerze Seldona znajduje się kilka takich modeli i istnieje potrzeba monitorowania sposobu ich wykorzystania. Aby to osiągnąć, Open Data Hub oferuje zbiór odpowiednich metryk i silnik raportowania oparty na powszechnie używanych narzędziach monitorujących typu open source Prometheus i Grafana. Dzięki temu otrzymujemy informacje zwrotne umożliwiające monitorowanie wykorzystania modeli AI, szczególnie w środowisku produkcyjnym.

Projekt Open Data Hub to otwarta platforma uczenia maszynowego oparta na Red Hat OpenShift

W ten sposób Open Data Hub zapewnia podejście podobne do chmury w całym cyklu życia AI/ML, od dostępu do danych i przygotowania po szkolenie modeli i produkcję.

Wszystko razem

Teraz pojawia się pytanie, jak to wszystko zorganizować dla administratora OpenShift. I tu z pomocą przychodzi specjalny operator Kubernetes dla projektów Open Data Hub.

Projekt Open Data Hub to otwarta platforma uczenia maszynowego oparta na Red Hat OpenShift

Operator ten zarządza instalacją, konfiguracją i cyklem życia projektu Open Data Hub, w tym wdrożeniem wyżej wymienionych narzędzi takich jak JupyterHub, Ceph, Spark, Kafka, Seldon, Prometheus i Grafana. Projekt Open Data Hub można znaleźć w konsoli internetowej OpenShift, w sekcji operatorów społeczności. W ten sposób administrator OpenShift może określić, że odpowiednie projekty OpenShift zostaną sklasyfikowane jako „projekty Open Data Hub”. Robi się to raz. Następnie analityk danych loguje się do swojej przestrzeni projektowej za pośrednictwem konsoli internetowej OpenShift i sprawdza, czy odpowiedni operator Kubernetes jest zainstalowany i dostępny dla jego projektów. Następnie jednym kliknięciem tworzy instancję projektu Open Data Hub i od razu ma dostęp do opisanych powyżej narzędzi. A wszystko to można skonfigurować w trybie wysokiej dostępności i odporności na awarie.

Projekt Open Data Hub to otwarta platforma uczenia maszynowego oparta na Red Hat OpenShift

Jeśli chcesz samodzielnie wypróbować projekt Open Data Hub, zacznij od instrukcje instalacji i samouczek wprowadzający. Szczegóły techniczne architektury Open Data Hub można znaleźć tutaj, plany rozwoju projektu – tutaj. W przyszłości planujemy wdrożenie dodatkowej integracji z Kubeflow, rozwiązanie szeregu problemów z regulacją i bezpieczeństwem danych, a także zorganizowanie integracji z systemami opartymi na regułach Drools i Optaplanner. Wyraź swoją opinię i zostań uczestnikiem projektu Otwórz centrum danych możliwe na stronie społeczność.

Podsumowując: poważne wyzwania związane ze skalowaniem uniemożliwiają organizacjom wykorzystanie pełnego potencjału sztucznej inteligencji i uczenia maszynowego. Red Hat OpenShift od dawna jest z powodzeniem stosowany do rozwiązywania podobnych problemów w branży oprogramowania. Projekt Open Data Hub, realizowany w ramach społeczności programistów open source, oferuje architekturę referencyjną do organizacji pełnego cyklu operacji AI/ML w oparciu o chmurę hybrydową OpenShift. Mamy jasny i przemyślany plan rozwoju tego projektu i poważnie podchodzimy do stworzenia wokół niego aktywnej i owocnej społeczności do rozwijania otwartych rozwiązań AI na platformie OpenShift.

Źródło: www.habr.com

Dodaj komentarz