Sztuczna inteligencja (AI) i uczenie maszynowe (ML) cieszą się powszechnym przyjęciem w przedsiębiorstwach i organizacjach rządowych. Przetwarzanie nieustrukturyzowanych danych stało się łatwiejsze dzięki postępom w przetwarzaniu języka naturalnego (NLP) i przyjaznym dla użytkownika usługom AI/ML, takim jak Ekstrakt z amazonki, Amazon Transcribe, Amazon Comprehend. Organizacje zaczęły korzystać z usług AI/ML, takich jak Amazon Comprehend, do tworzenia modeli klasyfikacyjnych na podstawie nieustrukturyzowanych danych w celu uzyskania głębokiej wiedzy, której nie miały wcześniej. Chociaż można używać wstępnie wyszkolonych modeli przy minimalnym wysiłku, bez odpowiedniego sprawdzania danych i dostrajania modeli, nie można w pełni wykorzystać korzyści modeli AI/ML.
W tym poście wyjaśniamy, jak zbudować i zoptymalizować niestandardowy model klasyfikacji za pomocą Amazon Comprehend. Demonstrujemy to za pomocą niestandardowej klasyfikacji Amazon Comprehend w celu zbudowania wieloetykietowego niestandardowego modelu klasyfikacji i zapewniamy wytyczne dotyczące przygotowania zbioru danych szkoleniowych i dostrojenia modelu w celu spełnienia wskaźników wydajności, takich jak dokładność, precyzja, zapamiętywanie i wynik F1. Korzystamy z artefaktów wyjściowych szkolenia modelu Amazon Comprehend, takich jak macierz zamieszania, aby dostroić wydajność modelu i pomóc Ci w ulepszaniu danych szkoleniowych.
Omówienie rozwiązania
To rozwiązanie przedstawia podejście do budowy zoptymalizowanego niestandardowego modelu klasyfikacji przy użyciu Amazon Comprehend. Przechodzimy przez kilka etapów, obejmujących przygotowanie danych, utworzenie modelu, analizę metryk wydajności modelu i optymalizację wnioskowania na podstawie naszej analizy. Używamy Amazon Sage Maker notatnik oraz Konsola zarządzania AWS aby wykonać niektóre z tych kroków.
Przeanalizujemy również najlepsze praktyki i techniki optymalizacji podczas przygotowywania danych, budowania modelu i dostrajania modelu.
Wymagania wstępne
Jeśli nie masz instancji notatnika SageMaker, możesz ją utworzyć. Aby uzyskać instrukcje, zobacz Utwórz instancję notatnika Amazon SageMaker.
Przygotuj dane
Do tej analizy używamy zestawu danych klasyfikacji komentarzy toksycznych z Kaggle. Ten zbiór danych zawiera 6 etykiet ze 158,571 10 punktami danych. Jednak każda etykieta zawiera tylko mniej niż 1% wszystkich danych jako przykłady pozytywne, przy czym dwie etykiety mają mniej niż XNUMX%.
Konwertujemy istniejący zbiór danych Kaggle do formatu Amazon Comrehend dwukolumnowy format CSV z etykietami podzielonymi za pomocą ogranicznika kreski (|). Amazon Comprehend oczekuje co najmniej jednej etykiety dla każdego punktu danych. W tym zbiorze danych napotykamy kilka punktów danych, które nie mieszczą się w żadnej z podanych etykiet. Tworzymy nową etykietę o nazwie clean i przypisujemy dowolne punkty danych, które nie są toksyczne, jako pozytywne za pomocą tej etykiety. Na koniec podzieliliśmy wybrane zbiory danych na zbiory szkoleniowe i testowe, stosując podział na etykietę w stosunku 80/20.
Będziemy korzystać z notatnika przygotowania danych. Poniższe kroki wykorzystują zbiór danych Kaggle i przygotowują dane dla naszego modelu.
- W konsoli SageMaker wybierz Instancje notebooków w okienku nawigacji.
- Wybierz skonfigurowaną instancję notatnika i wybierz Otwórz Jupyter.
- Na Nowości menu, wybierz terminal.
- Uruchom następujące polecenia w terminalu, aby pobrać wymagane artefakty dla tego wpisu:
- Zamknij okno terminala.
Powinieneś zobaczyć trzy zeszyty i pociąg.csv akta.
- Wybierz notatnik Przygotowanie danych.ipynb.
- Wykonaj wszystkie kroki w notatniku.
Te kroki przygotowują surowy zestaw danych Kaggle, który będzie służył jako wyselekcjonowane zbiory danych szkoleniowych i testowych. Wyselekcjonowane zbiory danych zostaną zapisane w notatniku i Usługa Amazon Simple Storage (Amazonka S3).
W przypadku dużych zbiorów danych zawierających wiele etykiet należy wziąć pod uwagę następujące wytyczne dotyczące przygotowania danych:
- Zestawy danych muszą zawierać co najmniej 10 próbek na etykietę.
- Amazon Comprehend akceptuje maksymalnie 100 etykiet. Jest to miękki limit, który można zwiększyć.
- Upewnij się, że plik zestawu danych to poprawnie sformatowany z odpowiednim ogranicznikiem. Nieprawidłowe ograniczniki mogą spowodować wprowadzenie pustych etykiet.
- Wszystkie punkty danych muszą mieć etykiety.
- Zestawy danych szkoleniowych i testowych powinny mieć zrównoważony rozkład danych na etykietę. Nie używaj rozkładu losowego, ponieważ może to wprowadzić błąd w zbiorach danych szkoleniowych i testowych.
Zbuduj niestandardowy model klasyfikacji
Do zbudowania naszego modelu wykorzystujemy wybrane zestawy danych szkoleniowych i testowych, które utworzyliśmy na etapie przygotowania danych. Poniższe kroki tworzą niestandardowy model klasyfikacji z wieloma etykietami Amazon Comrehend:
- Na konsoli Amazon Comprehend wybierz Niestandardowa klasyfikacja w okienku nawigacji.
- Dodaj Utwórz nowy model.
- W razie zamówieenia projektu Nazwa modelu, wprowadź model klasyfikacji toksyczności.
- W razie zamówieenia projektu Nazwa wersji, wpisz 1.
- W razie zamówieenia projektu Adnotacja i format danychwybierz Korzystanie z trybu wielu etykiet.
- W razie zamówieenia projektu Zbiór danych szkoleniowych, wprowadź lokalizację wybranego zbioru danych szkoleniowych na Amazon S3.
- Dodaj Zestaw danych testowych dostarczony przez klienta i wprowadź lokalizację wybranych danych testowych na Amazon S3.
- W razie zamówieenia projektu Dane wyjściowe, wprowadź lokalizację Amazon S3.
- W razie zamówieenia projektu Rola IAM, Wybierz Utwórz rolę IAM, podaj przyrostek nazwy jako „comprehend-blog”.
- Dodaj Stwórz aby rozpocząć szkolenie niestandardowego modelu klasyfikacji i tworzenie modelu.
Poniższy zrzut ekranu przedstawia szczegóły niestandardowego modelu klasyfikacji w konsoli Amazon Comprehend.
Dostosuj wydajność modelu
Poniższy zrzut ekranu przedstawia metryki wydajności modelu. Obejmuje kluczowe wskaźniki, takie jak precyzja, zapamiętywanie, wynik F1, dokładność i inne.
Po wyszkoleniu i utworzeniu modelu wygenerowany zostanie plik wyjściowy.tar.gz, który będzie zawierał etykiety ze zbioru danych, a także macierz zamieszania dla każdej z etykiet. Aby jeszcze bardziej dostroić skuteczność przewidywania modelu, należy poznać model wraz z prawdopodobieństwami przewidywania dla każdej klasy. Aby to zrobić, musisz utworzyć zadanie analityczne, aby zidentyfikować wyniki Amazon Comrehend przypisane do każdego punktu danych.
Wykonaj następujące kroki, aby utworzyć zadanie analizy:
- Na konsoli Amazon Comprehend wybierz Analiza zadań w okienku nawigacji.
- Dodaj Utwórz pracę.
- W razie zamówieenia projektu Imię, wchodzić
toxic_train_data_analysis_job
. - W razie zamówieenia projektu Typ analizywybierz Niestandardowa klasyfikacja.
- W razie zamówieenia projektu Modele klasyfikacyjne i koła zamachowe, podaj
toxic-classification-model
. - W razie zamówieenia projektu Wersja, określ 1.
- W razie zamówieenia projektu Wprowadź dane o lokalizacji S3, wprowadź lokalizację wybranego pliku danych treningowych.
- W razie zamówieenia projektu Format wejściowywybierz Jeden dokument na linię.
- W razie zamówieenia projektu Lokalizacja danych wyjściowych S3, wprowadź lokalizację.
- W razie zamówieenia projektu Uprawnienia dostępu, Wybierz Użyj istniejącej roli uprawnień i wybierz wcześniej utworzoną rolę.
- Dodaj Utwórz pracę aby rozpocząć zadanie analizy.
- Wybierz Analiza zadań aby wyświetlić szczegóły oferty pracy. Zanotuj identyfikator oferty pracy w obszarze Szczegóły oferty pracy. W następnym kroku użyjemy identyfikatora zadania.
Powtórz kroki, aby rozpocząć zadanie analizy wybranych danych testowych. Wykorzystujemy wyniki prognoz z naszych zadań analitycznych, aby poznać prawdopodobieństwa przewidywań naszego modelu. Proszę zanotować identyfikatory zadań związanych ze szkoleniem i analizą testów.
Używamy Analiza progowa modelu.ipynb notatnik do testowania wyników dla wszystkich możliwych progów i oceniania wyników na podstawie prawdopodobieństwa przewidywania za pomocą narzędzia scikit-learn precision_recall_curve
funkcjonować. Dodatkowo możemy obliczyć wynik F1 na każdym progu.
Będziemy potrzebować identyfikatora zadania analizy Amazon Comprehend jako danych wejściowych Analiza progowa modelu zeszyt. Identyfikatory zadań można uzyskać z konsoli Amazon Comprehend. Wykonaj wszystkie kroki w Analiza progowa modelu notatnik, aby obserwować progi dla wszystkich klas.
Zwróć uwagę, jak precyzja rośnie wraz ze wzrostem progu, podczas gdy w przypadku przywoływania następuje odwrotność. Aby znaleźć równowagę między nimi, używamy wyniku F1 tam, gdzie ma widoczne szczyty na krzywej. Piki w wyniku F1 odpowiadają konkretnemu progowi, który może poprawić wydajność modelu. Zwróć uwagę, że większość etykiet mieści się w okolicach 0.5 progu, z wyjątkiem etykiety zagrożenia, która ma próg w okolicach 0.04.
Możemy następnie użyć tego progu w przypadku określonych etykiet, które mają słabą skuteczność przy domyślnym progu wynoszącym 0.5. Dzięki zastosowaniu zoptymalizowanych progów wyniki modelu na danych testowych poprawiają się dla zagrożenia etykietą z 0.00 do 0.24. Używamy maksymalnego wyniku F1 na progu jako punktu odniesienia w celu określenia pozytywnego i negatywnego wyniku dla tej etykiety, zamiast wspólnego punktu odniesienia (standardowa wartość, np. > 0.7) dla wszystkich etykiet.
Radzenie sobie z klasami niedostatecznie reprezentowanymi
Innym podejściem, które jest skuteczne w przypadku niezrównoważonego zbioru danych, jest oversampling. Nadpróbkując niedostatecznie reprezentowaną klasę, model częściej dostrzega niedostatecznie reprezentowaną klasę i podkreśla znaczenie tych próbek. Używamy Nadpróbkowanie-niedostatecznie reprezentowane.ipynb notebook w celu optymalizacji zbiorów danych.
W przypadku tego zbioru danych sprawdziliśmy, jak zmienia się wydajność modelu w zbiorze danych ewaluacyjnych w miarę dostarczania większej liczby próbek. Używamy techniki nadmiernego próbkowania, aby zwiększyć występowanie niedostatecznie reprezentowanych klas i poprawić wydajność.
W tym konkretnym przypadku testowaliśmy na 10, 25, 50, 100, 200 i 500 pozytywnych przykładach. Zauważ, że chociaż powtarzamy punkty danych, w sposób naturalny poprawiamy wydajność modelu, podkreślając znaczenie niedostatecznie reprezentowanej klasy.
Koszty:
Dzięki Amazon Comprehend płacisz na bieżąco na podstawie liczby przetworzonych znaków tekstowych. Odnosić się do Cennik Amazon Comprehend dla kosztów rzeczywistych.
Sprzątać
Po zakończeniu eksperymentowania z tym rozwiązaniem wyczyść zasoby, aby usunąć wszystkie zasoby wdrożone w tym przykładzie. Dzięki temu unikniesz ciągłych kosztów na koncie.
Wnioski
W tym poście przedstawiliśmy najlepsze praktyki i wskazówki dotyczące przygotowywania danych, dostrajania modelu przy użyciu prawdopodobieństw predykcyjnych i technik radzenia sobie z niedostatecznie reprezentowanymi klasami danych. Możesz skorzystać z tych najlepszych praktyk i technik, aby poprawić wskaźniki wydajności swojego niestandardowego modelu klasyfikacji Amazon Comprehend.
Aby uzyskać więcej informacji na temat Amazon Comrehend, odwiedź stronę Zasoby dla programistów Amazon Comprehen aby znaleźć zasoby wideo i posty na blogu oraz odnieść się do AWS Zapoznaj się z często zadawanymi pytaniami.
O autorach
Sathya Balakrishnan jest Sr. Customer Delivery Architect w zespole Professional Services w AWS, specjalizującym się w rozwiązaniach z zakresu danych i ML. Pracuje z federalnymi klientami finansowymi USA. Pasjonuje się budowaniem pragmatycznych rozwiązań do rozwiązywania problemów biznesowych klientów. W wolnym czasie lubi oglądać filmy i wędrować z rodziną.
Książę Mallari jest NLP Data Scientist w zespole Professional Services w AWS, specjalizującym się w zastosowaniach NLP dla klientów z sektora publicznego. Jest pasjonatem używania ML jako narzędzia umożliwiającego klientom zwiększenie produktywności. W wolnym czasie lubi grać w gry wideo i rozwijać je z przyjaciółmi.
- Dystrybucja treści i PR oparta na SEO. Uzyskaj wzmocnienie już dziś.
- PlatoData.Network Pionowe generatywne AI. Wzmocnij się. Dostęp tutaj.
- PlatoAiStream. Inteligencja Web3. Wiedza wzmocniona. Dostęp tutaj.
- PlatonESG. Węgiel Czysta technologia, Energia, Środowisko, Słoneczny, Gospodarowanie odpadami. Dostęp tutaj.
- Platon Zdrowie. Inteligencja w zakresie biotechnologii i badań klinicznych. Dostęp tutaj.
- Źródło: https://aws.amazon.com/blogs/machine-learning/improve-prediction-quality-in-custom-classification-models-with-amazon-comprehend/
- :ma
- :Jest
- :Gdzie
- $W GÓRĘ
- 1
- 10
- 100
- 200
- 24
- 25
- 50
- 500
- 7
- 9
- a
- O nas
- Akceptuje
- Konto
- precyzja
- w poprzek
- rzeczywisty
- do tego
- Przyjęcie
- postępy
- AI
- AI / ML
- Wszystkie kategorie
- dopuszczać
- również
- Chociaż
- Amazonka
- Amazon Comprehend
- Amazon Sage Maker
- Amazon Web Services
- an
- analiza
- i
- każdy
- aplikacje
- Zastosowania NLP
- podejście
- SĄ
- na około
- AS
- Aktywa
- przydzielony
- At
- uniknąć
- AWS
- Bilans
- na podstawie
- BE
- bo
- stają się
- zanim
- Benchmark
- Korzyści
- BEST
- Najlepsze praktyki
- pomiędzy
- stronniczość
- Blog
- Najnowsze wpisy
- budować
- Budowanie
- biznes
- by
- nazywa
- CAN
- Może uzyskać
- walizka
- Zmiany
- znaków
- Dodaj
- klasa
- Klasy
- klasyfikacja
- klientów
- komentarz
- wspólny
- kompletny
- zrozumieć
- obliczać
- skonfigurowany
- zamieszanie
- Konsola
- zawiera
- kontynuując
- konwertować
- Koszty:
- Stwórz
- stworzony
- tworzenie
- kurator
- kuracja
- krzywa
- zwyczaj
- klient
- Klientów
- dane
- punkty danych
- Przygotowywanie danych
- naukowiec danych
- zbiory danych
- czynienia
- głęboko
- Domyślnie
- dostawa
- wykazać
- wdrażane
- detale
- Ustalać
- Deweloper
- rozwijanie
- 分配
- do
- dokument
- nie
- pobieranie
- podczas
- każdy
- łatwiej
- Efektywne
- wysiłek
- podkreśla
- podkreślając
- Wchodzę
- Enterprise
- ewaluację
- przykład
- przykłady
- Z wyjątkiem
- wykonać
- Przede wszystkim system został opracowany
- oczekuje
- Wyjaśniać
- f1
- Spadać
- członków Twojej rodziny
- Federalny
- filet
- Akta
- W końcu
- budżetowy
- Znajdź
- następujący
- W razie zamówieenia projektu
- przyjaciele
- od
- pełny
- funkcjonować
- dalej
- Games
- Generować
- otrzymać
- Go
- Goes
- Rząd
- poradnictwo
- poprowadzi
- wytyczne
- uchwyt
- Have
- mający
- he
- pomaga
- jego
- W jaki sposób
- How To
- Jednak
- HTML
- http
- HTTPS
- ID
- zidentyfikować
- ids
- znaczenie
- podnieść
- poprawy
- in
- obejmuje
- Włącznie z
- Zwiększać
- wzrosła
- Informacja
- właściwie
- wkład
- spostrzeżenia
- przykład
- zamiast
- instrukcje
- Inteligencja
- najnowszych
- przedstawiać
- IT
- Praca
- Oferty pracy
- właśnie
- Klawisz
- Etykieta
- Etykiety
- język
- na dużą skalę
- UCZYĆ SIĘ
- nauka
- najmniej
- mniej
- lubić
- LIMIT
- lokalizacja
- maszyna
- uczenie maszynowe
- robić
- i konserwacjami
- znak
- Matrix
- max
- maksymalny
- Poznaj nasz
- Menu
- metryczny
- Metryka
- może
- minimalny
- minimum
- ML
- model
- modele
- jeszcze
- większość
- Kino
- musi
- Nazwa
- Naturalny
- Przetwarzanie języka naturalnego
- Nawigacja
- Potrzebować
- ujemny
- Nowości
- Następny
- nlp
- notatnik
- Zauważyć..
- numer
- obserwować
- występowanie
- of
- często
- on
- ONE
- tylko
- optymalizacja
- Optymalizacja
- zoptymalizowane
- optymalizacji
- organizacji
- ludzkiej,
- wydajność
- chleb
- szczególny
- namiętny
- Zapłacić
- dla
- jest gwarancją najlepszej jakości, które mogą dostarczyć Ci Twoje monitory,
- wybierać
- rura
- plato
- Analiza danych Platona
- PlatoDane
- gra
- Proszę
- punkt
- zwrotnica
- pozytywny
- możliwy
- Post
- Wiadomości
- praktyki
- pragmatyczny
- Detaliczność
- przepowiednia
- przygotowanie
- Przygotować
- prezenty
- poprzednio
- problemy
- Obrobiony
- przetwarzanie
- produktywny
- profesjonalny
- właściwy
- zapewniać
- pod warunkiem,
- publiczny
- jakość
- przypadkowy
- stosunek
- Surowy
- zrealizować
- odnosić się
- wymagany
- Zasoby
- Efekt
- Rola
- sagemaker
- Naukowiec
- wynik
- sektor
- widzieć
- widziany
- widzi
- służyć
- Usługi
- kilka
- powinien
- Targi
- Prosty
- Miękki
- rozwiązanie
- Rozwiązania
- ROZWIĄZANIA
- kilka
- specjalizujący się
- specyficzny
- dzielić
- standard
- początek
- rozpoczęty
- Ewolucja krok po kroku
- Cel
- przechowywanie
- przechowywany
- taki
- Brać
- zespół
- technika
- Techniki
- terminal
- test
- przetestowany
- XNUMX
- niż
- że
- Połączenia
- ich
- następnie
- Te
- one
- to
- tych
- groźba
- trzy
- próg
- Przez
- czas
- do
- narzędzie
- Kwota produktów:
- przeszkolony
- Trening
- drugiej
- dla
- niedostatecznie reprezentowany
- zrozumieć
- us
- Federalna USA
- posługiwać się
- łatwy w obsłudze
- za pomocą
- wartość
- Wideo
- gier wideo
- Zobacz i wysłuchaj
- widoczny
- Odwiedzić
- vs
- oglądania
- we
- sieć
- usługi internetowe
- DOBRZE
- jeśli chodzi o komunikację i motywację
- który
- Podczas
- rozpowszechniony
- będzie
- okno
- w
- bez
- działa
- You
- Twój
- zefirnet
- Zamek błyskawiczny