Amazon Comprehend
Amazon Comprehend
Serwis NLP (Natural Language Processing) do analizy tekstu. Wykrywaj sentyment, encje, jezyk, tematy i dane osobowe - bez budowania modeli ML.
Amazon Comprehend to w pelni zarzadzany serwis NLP (Natural Language Processing), ktory wykorzystuje machine learning do wyciagania informacji z tekstu. Nie musisz trenowac zadnych modeli - wystarczy wyslac tekst do API, a Comprehend zwroci analize sentymentu, wykryte encje (osoby, miejsca, organizacje), kluczowe frazy i jezyk dokumentu.
Comprehend oferuje rowniez Custom Classifiers i Custom Entity Recognizers, dzieki ktorym mozesz wytrenowac modele dopasowane do Twojej domeny. Wersja Comprehend Medical jest specjalnie zoptymalizowana do analizy tekstow medycznych.
Amazon Comprehend potrafi wykryc ponad 100 jezykow w jednym wywolaniu API. Custom Classifiers moga osiagnac dokladnosc powyzej 95% przy odpowiednio przygotowanych danych treningowych. Comprehend Medical jest zgodny z HIPAA, co pozwala na przetwarzanie prawdziwych danych medycznych.
Dla duzych zbiorow dokumentow uzyj Comprehend w trybie asynchronicznym (StartEntitiesDetectionJob) zamiast synchronicznego API. Oszczedzisz pieniadze i unikniesz limitow throttlingu. Dane wejsciowe i wyjsciowe przechowuj w S3.
Comprehend to serwis NLP (Natural Language Processing), ktory analizuje tekst i wyciaga z niego strukturalne informacje: encje, sentyment, jezyk, frazy kluczowe i tematy. Dziala na gotowych modelach ML bez potrzeby trenowania.
Przeslanie tekstu do analizy
Tekst przekazujesz bezposrednio w zapytaniu API (do 100 KB na dokument) lub wskazujesz pliki na S3 dla analizy batchowej. Comprehend obsluguje wiele jezykow (en, es, fr, de, it, pt i inne). Mozesz wyslac pojedynczy dokument (DetectSentiment) lub batch do 25 dokumentow (BatchDetectSentiment) w jednym wywolaniu.
Wybor typu analizy NLP
Comprehend oferuje rozne API: DetectSentiment (pozytywny/negatywny/neutralny/mieszany), DetectEntities (osoby, miejsca, organizacje, daty), DetectKeyPhrases (wazne frazy), DetectDominantLanguage (rozpoznawanie jezyka), DetectPiiEntities (dane osobowe: PESEL, email, numer telefonu). Kazde API mozna wywolac synchronicznie lub batchowo.
Przetwarzanie przez modele NLP
Comprehend uzywa wytrenowanych modeli deep learning. Dla analizy synchronicznej odpowiedz przychodzi w milisekundach. Dla batch jobs (StartSentimentDetectionJob) Comprehend przetwarza duze zbiory dokumentow z S3 i zapisuje wyniki do S3. Batch job lepiej obsluguje duze wolumeny i unika limitow throttlingu - cena za jednostke jest taka sama jak w API synchronicznym.
Custom classification i entity recognition
Custom Classifier pozwala klasyfikowac dokumenty wg wlasnych kategorii (np. reklamacja/zapytanie/pochwala). Potrzebujesz min. 50 dokumentow na klase. Custom Entity Recognition rozpoznaje niestandardowe encje (np. nazwy produktow, kody wewnetrzne). Modele custom sa hostowane jako endpointy z kosztem ok. $0.5/h za inference unit.
Wykrywanie danych osobowych (PII)
DetectPiiEntities identyfikuje ponad 30 typow danych osobowych: imiona, adresy, numery telefonow, emaile, numery dokumentow. ContainsPiiEntities szybko sprawdza czy tekst zawiera PII bez lokalizacji. Mozesz uzyc tego do automatycznego maskowania danych w logach, emailach czy dokumentach przed dalszym przetwarzaniem.
Topic Modeling na duzych zbiorach
StartTopicsDetectionJob automatycznie grupuje dokumenty w tematy (topics). Algorytm LDA (Latent Dirichlet Allocation) analizuje czestotliwosc slow i odkrywa ukryte tematy. Potrzebujesz min. 1000 dokumentow dla sensownych wynikow. Wynik to lista tematow ze slowami kluczowymi i przypisanie dokumentow do tematow z wagami.
Comprehend daje szybkie wyniki out-of-the-box, ale prawdziwa wartosc pojawia sie przy integracji z pipeline przetwarzania danych i dostrojeniu do specyfiki Twojej dziedziny.
Batch API zamiast real-time dla duzych zbiorow
Real-time API przetwarza do 25 dokumentow na wywolanie. Dla analiz tysiecy dokumentow uzyj StartSentimentDetectionJob z danymi na S3. Batch job jest asynchroniczny - ustawiasz InputDataConfig (S3 path, format), OutputDataConfig (S3 output) i czekasz na SNS notification. Koszt jest identyczny, ale batch lepiej obsluguje duze wolumeny.
PoczatkujacyFlywheel do ciaglego doskonalenia modeli custom
Comprehend Flywheel automatyzuje cykl zycia modeli custom: zbiera nowe dane, retrenuje model i porownuje z poprzednia wersja. Jezeli nowy model jest lepszy, automatycznie go wdraza. Skonfiguruj Flywheel z Data Lake na S3 - nowe dokumenty oznaczone przez czlowieka trafiaja do zbioru treningowego automatycznie.
ZaawansowanyLacz wiele API dla pelnego obrazu
Pojedyncze API daje czesciowy obraz. Lacz DetectSentiment + DetectEntities + DetectKeyPhrases w jednym pipeline. Np. analiza opinii klientow: sentyment mowi CZY jest problem, entities mowi O CZYM jest problem, key phrases daje kontekst. Uzywaj Step Functions do orkiestracji wielu wywolan Comprehend.
PoczatkujacyPII detection w pipeline danych
Wbuduj ContainsPiiEntities jako brame w pipeline ETL. Dane z PII kieruj do osobnego flow z szyfrowaniem i ograniczonym dostepem. Uzyj DetectPiiEntities + redakcja do maskowania danych przed zapisem do data lake. Comprehend rozpoznaje PII w jezyku angielskim najlepiej - dla polskiego rozwaaz custom entity recognition.
ZaawansowanyEndpoint auto-scaling dla custom models
Custom classifier endpoint kosztuje min. $0.5/h (1 inference unit). Skonfiguruj auto-scaling: min 1, max N inference units na podstawie metryki InferenceUtilization. Dla workloadow z przerwa nocna ustaw scheduled scaling - zmniejsz do 1 IU na noc. Jezeli uzywasz endpointu sporadycznie, rozwaaz usuwanie i odtwarzanie z modelu.
ZaawansowanyPreprocessuj tekst przed analiza
Comprehend analizuje surowy tekst - HTML tagi, naglowki emaili czy sygnatury zaburzaja wyniki. Usun HTML, stopki emaili, powtorzony tekst z cytowan (> ). Dla dlugich dokumentow analizuj akapity osobno i agreguj wyniki - sentyment calego dokumentu moze byc neutralny mimo silnie pozytywnych i negatywnych fragmentow.
PoczatkujacyScreenshoty z AWS Console
Wkrotce pojawia sie tu zrzuty ekranu pokazujace jak korzystac z Amazon Comprehend bezposrednio w konsoli AWS.
Do czego sluzy Amazon Comprehend?
Analiza opinii klientow
Automatycznie analizuj sentyment recenzji, maili i komentarzy w mediach spolecznosci. Wykrywaj niezadowolonych klientow w czasie rzeczywistym.
Wykrywanie danych osobowych (PII)
Automatycznie identyfikuj i maskuj dane osobowe (numery PESEL, adresy email, numery telefonow) w dokumentach i logach.
Klasyfikacja dokumentow
Sortuj przychodzace dokumenty, maile i zgloszenia do odpowiednich kategorii za pomoca Custom Classifiers.
Topic modeling
Odkrywaj glowne tematy w duzych zbiorach dokumentow. Idealne do analizy ankiet, raportow i feedbacku.
Co musisz wiedziec?
Sentiment Analysis
Okreslanie nastawienia emocjonalnego tekstu: POSITIVE, NEGATIVE, NEUTRAL lub MIXED. Zwraca wyniki pewnosci dla kazdej kategorii.
Entity Recognition (NER)
Wykrywanie nazwanych encji w tekscie: osoby (PERSON), organizacje (ORGANIZATION), miejsca (LOCATION), daty (DATE), ilosci i inne.
Key Phrase Extraction
Automatyczne wyciaganie najwazniejszych fraz i wyrazen z tekstu. Przydatne do podsumowania i indeksowania dokumentow.
PII Detection & Redaction
Wykrywanie i maskowanie danych osobowych: imiona, adresy, numery telefonow, numery kart kredytowych, adresy email.
Custom Classifiers
Trenowanie wlasnych modeli klasyfikacji tekstu na Twoich danych. Przydatne do sortowania dokumentow, ticketow, maili.
Comprehend Medical
Specjalna wersja zoptymalizowana do tekstow medycznych. Rozpoznaje leki, diagnozy, zabiegi, dawkowanie i relacje miedzy nimi.
Architektura: Analiza opinii klientow z Comprehend
Pipeline do automatycznej analizy feedbacku klientow z wielu kanalow. Comprehend klasyfikuje sentyment, wykrywa tematy i identyfikuje encje, umozliwiajac zespolom produktowym szybkie reagowanie na trendy.
Ile kosztuje Amazon Comprehend?
NLP APIs
Platnosc za jednostke (100 znakow). Obejmuje sentyment, encje, frazy, jezyk.
$0.0001 za jednostke (min. 3 jednostki/request)
Custom Models
Platnosc za trening modelu (za godzine) i za inferencje (za jednostke tekstu).
Trening: $3.00/godz., Inferencja: $0.0005/jednostke
Topic Modeling & PII
Asynchroniczne zadania - platnosc za jednostke przetworzonych danych.
PII: $0.0001/jednostke, Topics: $1.00/zadanie + $0.0004/jednostke
Free Tier
50 000 jednostek tekstu miesiecznie przez 12 miesiecy dla kazdego API.
Wystarczy na ~5 mln znakow/miesiac
Przyklady AWS CLI
Analiza sentymentu
Sprawdza nastawienie emocjonalne tekstu (Comprehend nie obsluguje polskiego - uzyj en lub przetlumacz najpierw przez Amazon Translate)
aws comprehend detect-sentiment \
--text "This product is great, I am very happy with the purchase!" \
--language-code en
Wykryj encje w tekscie
Rozpoznaje osoby, organizacje, miejsca, daty
aws comprehend detect-entities \
--text "John Smith from Seattle worked at Amazon since 2020." \
--language-code en
Wykryj jezyk tekstu
Automatyczna identyfikacja jezyka dokumentu
aws comprehend detect-dominant-language \
--text "Ceci est un texte en francais"
Wykryj dane PII
Identyfikuje dane osobowe w tekscie
aws comprehend detect-pii-entities \
--text "Jan Kowalski, email [email protected], tel. 123-456-789" \
--language-code en
Quiz: Amazon Comprehend
Sprawdz czy dobrze rozumiesz podstawy. Kliknij odpowiedz — feedback pojawi sie od razu.
1. Jakie kategorie sentymentu zwraca Comprehend?
2. Co to jest PII Detection w Comprehend?
3. Do czego sluzy Comprehend Medical?
4. Ile jednostek tekstu obejmuje Free Tier Comprehend?
Czesto uzywane razem z Amazon Comprehend
Chcesz poznac Amazon Comprehend w praktyce?
Darmowy kurs "AWS od podstaw" pokazuje jak uzywac Amazon Comprehend krok po kroku. Teoria + praktyka od zera.