To jest gościnny wpis na blogu autorstwa Danny'ego Brocka, Rajeeva Govindana i Krishnarama Kenthapadi z Fiddler AI.
Twój Amazon Sage Maker modele są na żywo. Każdego dnia zajmują się milionami wniosków i osiągają lepsze wyniki biznesowe dla Twojej firmy. Występują dokładnie tak samo, jak w dniu, w którym zostały uruchomione.
Eee, czekaj. Czy oni są? Może. Może nie.
Bez klasy korporacyjnej monitorowanie modelu, twoje modele mogą gnić w ciszy. Twoje zespoły zajmujące się uczeniem maszynowym (ML) mogą nigdy nie wiedzieć, że te modele faktycznie przekształciły się z cudów generowania przychodów w zobowiązania podejmujące błędne decyzje, które kosztują Twoją firmę czas i pieniądze.
Nie martw się. Rozwiązanie jest bliżej niż myślisz.
skrzypek, rozwiązanie do zarządzania wydajnością modeli klasy korporacyjnej dostępne na stronie Rynek AWS, oferuje monitorowanie modeli i wyjaśnioną sztuczną inteligencję, aby pomóc zespołom ML w sprawdzaniu i rozwiązywaniu szerokiego zakresu problemów związanych z modelami. Dzięki monitorowaniu modeli, wyjaśnianiu modeli, analizom i wykrywaniu stronniczości, Fiddler zapewnia Twojej firmie łatwy w użyciu pojedynczy panel, aby upewnić się, że Twoje modele zachowują się tak, jak powinny. A jeśli tak nie jest, Fiddler zapewnia również funkcje, które umożliwiają inspekcję modeli w celu znalezienia podstawowych przyczyn spadku wydajności.
Ten post pokazuje, jak Twój MLOps zespół może zwiększyć produktywność analityków danych i skrócić czas wykrywania problemów z modelami wdrożonymi w programie SageMaker, integrując się w kilku prostych krokach z platformą Fiddler Model Performance Management Platform.
Omówienie rozwiązania
Poniższa architektura referencyjna podkreśla podstawowe punkty integracji. Fiddler istnieje jako „sidecar” do istniejącego przepływu pracy SageMaker ML.
Pozostała część tego postu poprowadzi Cię przez kolejne etapy integracji Twojego modelu SageMaker z Fiddler's Platforma zarządzania wydajnością modelu:
- Upewnij się, że Twój model ma włączone przechwytywanie danych.
- Utwórz środowisko próbne programu Fiddler.
- Zarejestruj informacje o swoim modelu w środowisku Fiddler.
- Tworzenie AWS Lambda funkcja do publikowania wniosków z programu SageMaker do programu Fiddler.
- Poznaj możliwości monitorowania programu Fiddler w środowisku próbnym programu Fiddler.
Wymagania wstępne
W tym poście założono, że skonfigurowałeś SageMaker i wdrożyłeś punkt końcowy modelu. Aby dowiedzieć się, jak skonfigurować SageMaker do obsługi modeli, zobacz Wdrażaj modele do wnioskowania. Niektóre przykłady są również dostępne na GitHub repo.
Upewnij się, że Twój model ma włączone przechwytywanie danych
W konsoli SageMaker przejdź do obsługującego punktu końcowego modelu i upewnij się, że włączono przechwytywania danych w Usługa Amazon Simple Storage (Amazon S3) łyżka. To przechowuje wnioski (prośby i odpowiedzi), które Twój model tworzy każdego dnia jako Pliki linii JSON (.jsonl) w Amazon S3.
Utwórz środowisko próbne Fiddlera
Z skrzypek.ai stronie internetowej, możesz poprosić o bezpłatną wersję próbną. Po wypełnieniu szybkiego formularza, Fiddler skontaktuje się z Tobą, aby poznać specyfikę potrzeb związanych z zarządzaniem wydajnością Twojego modelu i przygotuje dla Ciebie środowisko próbne w ciągu kilku godzin. Możesz oczekiwać dedykowanego środowiska, takiego jak https://yourcompany.try.fiddler.ai.
Zarejestruj informacje o swoim modelu w środowisku Fiddler
Zanim zaczniesz publikować zdarzenia z modelu hostowanego w programie SageMaker w programie Fiddler, musisz utworzyć projekt w środowisku próbnym programu Fiddler i podać szczegółowe informacje programu Fiddler dotyczące modelu za pomocą kroku o nazwie rejestracja modelu. Jeśli chcesz używać wstępnie skonfigurowanego notebooka od wewnątrz Studio Amazon SageMaker zamiast kopiować i wklejać poniższe fragmenty kodu, możesz odwołać się do notesu szybkiego startu Fiddler na GitHub. Studio udostępnia pojedynczy interfejs graficzny oparty na sieci Web, w którym można wykonywać wszystkie etapy programowania ML.
Najpierw musisz zainstalować Klient Fiddler Python w swoim notatniku SageMaker i stwórz instancję klienta Fiddler. Możesz zdobyć AUTH_TOKEN
z Ustawienia w środowisku próbnym programu Fiddler.
Następnie utwórz projekt w środowisku próbnym Fiddler:
Teraz prześlij swój treningowy zestaw danych. Notatnik zawiera również przykładowy zestaw danych do uruchomienia programu Fiddler wyjaśnialność algorytmów i jako punkt odniesienia dla metryk monitorowania. Zestaw danych jest również używany do generowania schematu dla tego modelu w programie Fiddler.
Na koniec, zanim zaczniesz publikować wnioski w programie Fiddler w celu monitorowania, analizy przyczyn źródłowych i wyjaśnień, musisz zarejestrować swój model. Stwórzmy najpierw model_info
obiekt zawierający metadane dotyczące Twojego modelu:
Następnie możesz zarejestrować model za pomocą nowego model_info
obiekt:
Świetny! Teraz możesz opublikować kilka wydarzeń dla Fiddlera, aby obserwować działanie modelu.
Utwórz funkcję Lambda, aby publikować wnioski SageMaker dla Fiddlera
Dzięki prostej we wdrożeniu bezserwerowej architektury Lambda możesz szybko zbudować mechanizm wymagany do przeniesienia wniosków z wcześniej skonfigurowanego zasobnika S3 do nowo aprowizowanego środowiska próbnego Fiddler. Ta funkcja Lambda jest odpowiedzialna za otwieranie wszelkich nowych plików dziennika zdarzeń JSONL w zasobniku S3 modelu, analizowanie i formatowanie zawartości JSONL do ramki danych, a następnie publikowanie tej ramki danych zdarzeń w środowisku próbnym programu Fiddler. Poniższy zrzut ekranu pokazuje szczegóły kodu naszej funkcji.
Funkcja Lambda musi być skonfigurowana do wyzwalania nowo utworzonych plików w Twoim wiadrze S3. Następujące Tutorial przeprowadzi Cię przez proces tworzenia Most zdarzeń Amazona wyzwalacz, który wywołuje funkcję Lambda za każdym razem, gdy plik jest przesyłany do Amazon S3. Poniższy zrzut ekranu przedstawia konfigurację wyzwalacza naszej funkcji. Ułatwia to upewnienie się, że za każdym razem, gdy model wyciąga nowe wnioski, zdarzenia przechowywane w Amazon S3 są ładowane do programu Fiddler, aby zapewnić obserwowalność modelu, której potrzebuje Twoja firma.
Aby jeszcze bardziej to uprościć, kod tej funkcji Lambda jest publicznie dostępny od Strona z dokumentacją Fiddlera. Ten przykład kodu działa obecnie w przypadku modeli klasyfikacji binarnej z ustrukturyzowanymi danymi wejściowymi. Jeśli masz typy modeli z różnymi funkcjami lub zadaniami, skontaktuj się z Fiddlerem, aby uzyskać pomoc dotyczącą drobnych zmian w kodzie.
Funkcja Lambda musi odwoływać się do klienta Fiddler Python. Fiddler stworzył publicznie dostępną warstwę Lambda, do której możesz się odwoływać, aby upewnić się, że: import fiddler as fdl
krok działa bezproblemowo. Możesz odwoływać się do tej warstwy za pośrednictwem ARN w regionie us-west-2: arn:aws:lambda:us-west-2:079310353266:layer:fiddler-client-0814:1
, jak pokazano na poniższym zrzucie ekranu.
Musisz również określić zmienne środowiskowe Lambda, aby funkcja Lambda wiedziała, jak połączyć się ze środowiskiem próbnym programu Fiddler oraz jakie dane wejściowe i wyjściowe znajdują się w plikach .jsonl przechwytywanych przez model. Poniższy zrzut ekranu pokazuje listę wymaganych zmiennych środowiskowych, które również są włączone Strona z dokumentacją Fiddlera. Zaktualizuj wartości zmiennych środowiskowych, aby pasowały do Twojego modelu i zestawu danych.
Poznaj możliwości monitorowania programu Fiddler w środowisku próbnym programu Fiddler
Zrobiłeś to! Po połączeniu podstawowych danych, modelu i ruchu możesz teraz wyjaśnić dryf danych, odstające, nastawienie modelu, problemy z danymi i spadki wydajności oraz udostępnianie pulpitów nawigacyjnych innym osobom. Zakończ swoją podróż do oglądam demo o możliwościach zarządzania wydajnością modelu, które wprowadziłeś do swojej firmy.
Przykładowe zrzuty ekranu poniżej zapewniają wgląd w informacje dotyczące modelu, takie jak dryf, wykrywanie wartości odstających, objaśnienia punktów lokalnych i analizy modelu, które można znaleźć w środowisku próbnym programu Fiddler.
Wnioski
Ten post podkreślił potrzebę klasy korporacyjnej monitorowanie modelu i pokazali, jak można zintegrować swoje modele wdrożone w SageMakerze z Platforma zarządzania wydajnością modelu Fiddler w zaledwie kilku krokach. Fiddler oferuje funkcje monitorowania modeli, wyjaśnialną sztuczną inteligencję, wykrywanie stronniczości i analizę przyczyn źródłowych i jest dostępny na Rynek AWS. Dostarczając swoje MLOps zespół z łatwym w użyciu pojedynczym panelem szklanym, aby upewnić się, że modele zachowują się zgodnie z oczekiwaniami i zidentyfikować podstawowe przyczyny obniżenia wydajności, Fiddler może pomóc zwiększyć produktywność analityków danych i skrócić czas wykrywania i rozwiązywania problemów.
Jeśli chcesz dowiedzieć się więcej o Fiddler, odwiedź skrzypek.ai lub jeśli wolisz skonfigurować spersonalizowaną wersję demonstracyjną i e-mail z dyskusją techniczną sprzedaz@skrzypek.ai.
O autorach
Danny'ego Brocka jest starszym inżynierem ds. rozwiązań w firmie Fiddler AI. Danny od dawna pracuje w obszarze analityki i ML, prowadząc zespoły przedsprzedażowe i posprzedażowe dla startupów, takich jak Endeca i Incorta. W 2012 roku założył własną firmę konsultingową zajmującą się analizą big data, Branchbird.
Rajeev Govindan jest starszym inżynierem ds. rozwiązań w firmie Fiddler AI. Rajeev ma bogate doświadczenie w inżynierii sprzedaży i rozwoju oprogramowania w kilku przedsiębiorstwach, w tym AppDynamics.
Krishnaram Kenthapadi jest głównym naukowcem Fiddler AI. Wcześniej był głównym naukowcem w Amazon AWS AI, gdzie kierował inicjatywami dotyczącymi uczciwości, wyjaśnialności, prywatności i zrozumienia modeli na platformie Amazon AI, a wcześniej zajmował stanowiska w LinkedIn AI i Microsoft Research. Krishnaram uzyskał tytuł doktora informatyki na Uniwersytecie Stanforda w 2006 roku.
- AI
- ai sztuka
- generator sztuki ai
- masz robota
- Amazon Sage Maker
- sztuczna inteligencja
- certyfikacja sztucznej inteligencji
- sztuczna inteligencja w bankowości
- robot sztucznej inteligencji
- roboty sztucznej inteligencji
- oprogramowanie sztucznej inteligencji
- Uczenie maszynowe AWS
- Rynek AWS
- blockchain
- konferencja blockchain ai
- pomysłowość
- sztuczna inteligencja konwersacyjna
- konferencja kryptograficzna
- Dall's
- głęboka nauka
- google to
- uczenie maszynowe
- plato
- Platon Ai
- Analiza danych Platona
- Gra Platona
- PlatoDane
- platogaming
- skala ai
- składnia
- zefirnet