Kolejne po prosodii trudne słowo, na które napotkamy się w dokumentacji Azure Speech. Viseme (Wizaż) to termin oznaczający pozycję twarzy i ust, gdy ktoś wypowiada daną głoskę. Może być to pomocne dla osób, które czytają z ruchu ust, albo gdy uczymy się prawidłowej wymowy języka obcego.
Nie pogardzą nią też firmy tworzące cyfrowych asystentów, gry wideo czy animujące postacie.
Implementacja tej usługi wygląda dość prosto, każdy fonem posiada swój obrazek w SVG i można z nich zrobić animację.
Wydaje mi się, że kiedyś widziałem taką usługę w Google, ale teraz nie mogę jej znaleźć.
Prosodia to jeden z parametrów audio, który może być wygenerowany przez Azure AI Text to Speech. W uproszczeniu, są to elementy mowy składające się na to, jak wypowiadamy słowa, które możemy sobie dostosować.
Prosodia oferuje dostosowanie takich elementów, jak:
Wysokość głosu
Tempo mówienia
Głośność
Kontur - zmiana wysokości tonu w obrębie zdania
Azure Speech dostosowujemy za pomocą plików SSML, opartych na formacie XML.
Oczywiście, możemy wykorzystać też gotowe modele, które mają wbudowane Speech Styles, różnicujące prosodię. Można wybrać zarówno ton radosny, jak i profesjonalny i spokojny, czy nawet szepczący.
Azure Custom Text Classification jest dostępna w narzędziach Azure Language, stanowiących część Foundry Tools. Dzięki niej, można dokonać kategoryzacji tekstu do jednej z wybranych przez użytkownika kategorii.
Dostępne są do wyboru 2 typy projektów:
Single Label Classification
Multi Label Classification
Zastosowania Custom Text Classification
Automatyczne klasyfikowanie wiadomości lub ticketów
Moderacja treści, wykrywanie spamu
Tagowanie dokumentów
Knowledge mining - przeszukiwanie i kategoryzowanie dużej ilości dokumentów
Analiza sentymentu
Dlaczego warto wybrać Custom Text Classification, zamiast wbudowanych opcji? Podobnie jak w przypadku Custom Image Recognition, Custom Text Classification pozwala na nauczenie modelu na Twoich przykładach. Przekłada się to na osiąganie znacznie lepszych wyników. Przykładowo, możesz oznaczyć tekst na temat akwarystyki jako taki, który mówi o pielęgnicach z jeziora Malawi i nauczyć model, że takiej kategorii może używać.
Kwestią, bez której nie można osiągnać sukcesu, jest ownership. Można przetłumaczyć je na polski jako branie odpowiedzialność albo traktowanie czegoś, jako własnego.
Tak z 99% ludzi na ulicy ma zerowy ownership.
"Świadectwa nie widziałem, powiedział, że zgubił Po pracy sił nie miałem, aby z nim pomówić"
Tata Dilera, Kazik
Seria Kuchenne rewolucje jest pełna przykładów braku ownership nawet w przypadku właścicieli firm. Niemal w każdej rewolucji słyszymy, że zastany porządek, czyli syf był taki od zawsze, menu jest od poprzedniego właściciela restauracji i zawsze było super, a za błędy odpowiada jakiś inny, bliżej nie określony byt. Kuchnia zwala na obsługę, obsługa na kuchnię, wszystkiemu winni są wszyscy inni tylko nie oni.
Brak ownership jest bardzo widoczny w kwestii zdrowia. Przeciętna osoba ma nadwagę, pali i pije i oczywiście twierdzi, że chorobom winni są lekarze. Zwykły pracownik nie robi nigdy nic dla swojego rozwoju zawodowego i potem dziwi się, jak trudno jest na rynku pracy.
Ownership w pracy
W programowaniu takie osobny nadal się zdarzają, chociaż jest ich znacznie mniej niż w przeciętnej populacji. Ich cytaty to na przykład:
Ja nie odpowiadam za zachowanie aplikacji na środowisku
Nauczę się tego, jak firma wyśle mnie na szkolenie
W pracy siedzę 8 godzin i nie zamierzam się douczać
TRZEBA zrobić to i to - bez wymieniania, kto konkretnie ma zrobić
Od testowania są testerzy
Nie brakuje też zrzucania winy na innych, durnych wymówek i oczywistych błędów, które zostały popełnione, bo ktoś nie testował swojego kodu.
Kiedyś w jednym z banków usłyszałem cytat:
Nie liczy się, że coś spieprzyłeś, liczy się jak zachowałeś się po tym.
Osoby posiadające odpowiedzialność mówią wprost, gdy widzą że coś jest nie tak, albo gdy firma proponuje głupie pomysły. Ownership to traktowanie biznesu, jakby był twój własny i nie godzenie się na rzeczy, przez które traci pieniądze.
Co byś zrobił, gdybyś zobaczył, że nowo wdrażana funkcjonalność ma taką miniaturkę na YouTube?
Brak ownershipu to zrzucanie tematów na innych, przepychanie rzeczy pomiędzy działami w firmie.
Ownership w firmie nie może sprowadzać się do prostego wykonywania roboty za innych i psioczenia na nich. W następnej sytuacji, ten sam problem zostaje powtórzony znowu. Dla mnie ownership to także:
Szkolenie innych osób, pokazywanie im, jak rozwiązywać problemy
Szukanie sposobów na unikanie problemów i dzielenie się nimi
Brak tolerancji dla błędów
Ułatwianie pracy innym osobom.
Przykłady postaci z bardzo dużym ownershipem:
Gustaw Gus Babushka z Pingwinów z Madagaskaru
Pan Wolf z Pulp Fiction
Prawie każdy właściciel dużej firmy. Przykładowo, Steve Jobs po powrocie do Apple wyrzucił z portfolio firmy większość produktów i nakazał skupienie się na najważniejszych rzeczach. Dzięki temu firma osiągnęła obecny status. Podobnie Ferdynand Piech, który był CEO VW i nakazał zbudowanie samochodu Buggatti Veyron.
Teza - Istnieją 2 rodzaje motywacji, sztuczna, narzucona, oraz wewnętrzna. Motywacja wewnętrzna daje znacznie lepsze rezultaty.
Wiele lat temu poznałem faceta, który zafascynowany był tematem grywalizacji. Lubił on mówić o tym, jak gry namawiają nas do robienia nudnych, powtarzalnych czynności. Cytuje - WoW jest symulatorem zapieprzania. Sam pamiętam, jak grałem w liceum w Gothica część 1 i miałem ogromną motywację do wybicia niemal całej kolonii tylko po to, by wbić pod koniec gry 4 poziomy i zdobyć zaklęcie Tchnienie śmierci. Poświęciłem kilkanaście godzin tylko po to, by zaspokoić sztuczną motywację twórców gry.
Każdy, kto próbował swoich sił z bibliotekami do ML typu Pytorch czy Tensorflow wie, że prawidłowe ich ustawienie jest skomplikowane. Musimy wybrać odpowiednie features i labels, następnie zrobić feature engineering, potestować różne modele, robić split danych itd. Wszystko to wymaga znajomości zarówno Pythona, jak i kilku bibliotek.
Kiedyś nawet miałem pomysł, aby napisać nakładkę na Tensorflow w JS, która pozwalała by to wszystko robić w formie wizualnej. Azure ML to właśnie taka nakładka na skomplikowane algorytmy, która pozwala na trenowanie modeli w najprostszy możliwy sposób.
Azure AutoML sprawdza się w sytuacji, gdy chcemy wytrenować własny model do klasyfikacji, regresji lub clusteringu.
Ważną opcją jest zaawansowana featuryzacja, która pozwala na:
uzupełnienie brakujących danych
enkodowanie tekstu na liczby
normalizację wag
embedowanie tekstu
Azure AutoML umożliwia także na używanie kodu w SciKit Learn, Pytorch i TensorFlow.
Knowledge mining to bardzo szeroka dziedzina AI, która umożliwia inteligentne wykorzystywanie zbiorów danych w różnym formacie. Dane są wzbogacane, sztuczna inteligencja wyszukuje w nich wzorce, analizuje je i pozwala na ich łatwiejsze przeszukiwanie.
Knowledge Mining w Azure przebiega w 3 krokach:
Pozyskiwanie danych
Wzbogacanie danych
Eksploracja
Dzięki temu, można na przykład znaleźć niewidoczne wcześniej powiązania między dokumentami. Knowledge mining pomaga w automatyzacji wielu czynności i pozwala przełożyć dokumenty bez struktury w wiedzę biznesową.
Przykładowo, w system można wrzucić tysiące transkrypcji rozmów konsultantów z klientami i dzięki knowledge mining, określić główne problemy.
Knowledge mining jest podstawą wielu innych procesów, takich jak AI Search.
Azure Smart Cropping to prosty i przydatny feature, ułatwiający edycję zdjęć i tworzenie miniaturek. Załóżmy, że mamy zdjęcie zawierające jakiś główny obiekt i trochę tła.
Trochę dużo tutaj tła, a główny temat zdjęcia gubi się. Image Cropper, należący do Computer Vision, mógłby to zdjęcie przerobić na ładną miniaturkę. AI wykrywa Area of Interest (obszar zainteresowania) i usuwa resztę.
Trochę się rozmazało, ale to nic. Taka usługa może być zastosowana na przykład w aplikacji, gdzie użytkownicy mogą tworzyć własne awatary, jak Linkedin, albo do edytowania dużej ilości zdjęć. Można w niej ustawić także proporcje zdjęć. PS - zdjęcie z wróblami jest mojego autorstwa i przyciąłem je manualnie :)
Azure Language w swoich zbiorach zawiera usługę Sentinent Analysis, której nazwa właściwie wyjaśnia wszystko. Dzięki niej, możemy przypisać do tekstu jedną z etykiet:
negatywna
neutralna
pozytywna
Serwis wskazuje nam confidence score dla każdej z tych etykiet i oczywiście, sugerujemy się tą z najwyższą punktacją. Jako wejście dla serwisu możemy użyć zarówno dokumentu, jak i pojedynczych zdań.
Opinion Mining
To opcja dostępna w Sentiment Analysis. Dzięki niej możemy otrzymać jeszcze dokładniejsze informacje na temat nastroju danego tekstu.
Screen pożyczony z YT
Jak widać na załączonym obrazku, model wybrał sobie kilka aspektów recenzji restauracji i ocenił je osobno. Takie dane mogą być bezcenne w biznesie. Przykładowo, jeśli restauracja ma dużo negatywnych recenzji dotyczących obsługi, może coś z tym zrobić.
Innym przykładem może być Steam. Ostatnio często dochodzi do zjawiska Review Bombing, bo społeczności graczy nie spodobał się jakiś aspekt studia tworzącego grę, ale nie związanego z samą grą. W takiej sytuacji, Steam może przeanalizować opinie i usunąć te skrajnie negatywne, dodane w specyficznym czasie od wydania gry.
Language detection to usługa Azure dostępna w Microsoft Foundry. Jest to jedna z prostszych usług AI, ponieważ wysyłamy do niej tekst i otrzymujemy odpowiedź. Jako deweloper możemy wybrać model użyty do wykrywania języka.
Jako zwrotkę otrzymujemy:
kod ISO 6391
nazwę czytelną dla użytkownika
confidence score - czyli jak model jest pewny swojego wyboru
script code ISO 15924
Można wymyślić wiele zastosowań takiej usługi, jak na przykład kategoryzowanie komentarzy użytkowników, przed ich przetłumaczeniem.
Azure AI Face, to serwis umożliwiający wykrywanie, rozpoznawanie i analizowanie ludzkich twarzy.
Jakie są zastosowania takich usług? Przede wszystkim, jest to weryfikacja użytkowników. Już wiele lat temu laptopy Lenovo oferowały logowanie za pomocą twarzy. Dziś można w ten sposób logować się do konta bankowego, mieć dostęp do określonych części budynku, czy potwierdzić, że jesteśmy tą samą osobą co na zdjęciu w dowodzie osobistym.
Systemy rozpoznawania twarzy stosuje się także na lotniskach, podczas wydarzeń sportowych, w szpitalach i tak dalej.
Twarz rozpoznawana jest za pomocą wielu punktów orientacyjnych, takich jak nos, oczy czy usta.
Z twarzy można wyczytać takie szczegóły, jak:
pozycję głowy
wiek
stan emocjonalny (obecnie nie jest dostępne)
włosy
czy osoba nosi okulary
czy zdjęcie jest nieostre
czy użytkownik nosi maskę (btw nie zapominajmy o 2020 :()
Można by się zastanowić, czy logowanie ludzką twarzą można obejść za pomocą wydrukowanego zdjęcia. Otóż - jeśli używana jest usługa AI Face, może być to trudne. Podczas wykrywania twarzy przez wideo, określany jest parametr livenes, dzięki czemu system łatwo rozpozna, że próbujemy go oszukać.
Stosowanie Azure AI wymaga wypełnienia specjalnego formularza i jest możliwe jedynie dla klientów i partnerów zarządzanych przez firmę Microsoft.
Bardzo ciekawe jest to, że Microsoft NIE udostępnia danych policji USA i nie dopuszcza takich zastosowań swojej usługi. Co więcej, usługa nie pozwala na wykrywanie płci użytkownika.
Kiedyś kiedyś dostałem takie zadanie, by przetłumaczyć instrukcje do około 20 efektó gitarowych. W tamtych czasach (2015) używało się programów CAD (Computer Aided Translation) - Omega T. W program wrzucało się wszystkie pliki i tłumaczyło tekst fragment po fragmencie. Z czasem aplikacja podpowiadała nam coraz więcej zdań i tłumaczenie szło szybciej.
Pomyślałem sobie dzisiaj, co by było, gdyby dziś klient poprosił o utworzenie FAQ do każdego z tych efektów. Można by zrobić to na chłopski rozum, wrzucając teksty do LLM i dając w promptcie prośbę o wygenerowanie FAQ. Można jednak sobie jeszcze bardziej uprościć życie, ponieważ mamy dostępny Azure Custom Question Answering, która znajduje się w AI Language.
Około roku 2023 wiele firm promowało wdrażanie własnych botów, utrudniających ułatwiających obsługę stron internetowych. Były to czasy przed premierą wydajnych modeli LLM i miejmy nadzieję, że firmy przeszły na nowocześniejsze rozwiązania.
Jeśli w swoim projekcie chciałbyś wdrożyć bota któremu można zadawać pytania, możesz zajrzeć do Azure AI Bot Service i Microsoft Bot Framework.
Azure zawiera usługę Image Analysis, która pozwala na przykład, na wyszukanie obrazu i zaznaczenie go standardową ramką.
Semantic Segmentation to usługa nieco bardziej zaawansowana, bo pozwala na wykrywanie obiektów na poziomie pikseli. Dzięki temu maszyna wie, gdzie dokładnie znajduje się dany obiekt.
Załóżmy, że mamy serię danych, w której chcemy wychwycić jakieś nieprawidłowości. Przykładowo, mogą być to logi z prób zalogowania się do serwisu. Chcemy upewnić się, że konta użytkowników nie zostaną przejęte i nie zaczną się oni logować przykładowo, z Chin.
Albo mamy listę transakcji kartą i chcemy wychwycić płatności odbiegające od normy. Użytkownik zawsze płacił małe kwoty, ale jednego dnia, zrobił płatność na kilkadziesiąt tysięcy. W takiej sytuacji, warto do niego zadzwonić i się upewnić, że nie kupuje kryptowalut na polecenie scamera.
Azure Anomaly Detector to usługa stworzona pod takie scenariusze. Dzięki niej, można wychwytywać anomalie zarówno w danych jedno, jak i wielowymiarowych.
Wykrywanie wielowymiarowe jest ciekawsze, ponieważ możemy analizować kilka parametrów. Weźmy pod uwagę czujniki badające pracę silnika. Badanie parametrów jego pracy jako każdy z osobna, może nie pokazać anomalii, ale jeśli np. wibracje i temperatura będą zbyt wysokie jednocześnie, może to oznaczać anomalię.
Jakiś czas temu pisałem o NER, czyli wykrywaniu nazwanych encji. PII Detection to usługa bardzo podobna, ale bardziej wyspecjalizowana. PII to po angielsku dane osobowe i właśnie wykrywaniu danych wrażliwych ona służy.
Przykładowo, prowadzisz firmę, w której konsultanci mogą rozmawiać telefonicznie lub przez chat z klientami. Klienci często podają jakieś ważne dane, typu numer telefonu, imię i nazwisko, email czy adres zamieszkania.
Niektóre wyspecjalizowane usługi AI potrafią zaskoczyć.
W narzędziach Azure Vision znajdziesz narzędzie, które pozwala wykrywać marki ubrań na zdjęciu - Azure Brand detection. Jak to działa? No raczej zwyczajnie, została zgromadzona ogromna ilość zdjęć przedmiotów z logo i na tej podstawie, nauczono sieć neuronową ich rozpoznawania.
Narzędzie Azure Brand detection zwraca tablicę wyników, w których każdy wpis zawiera nazwę oraz współrzędne ramki.
Azure Celebrity Recognition to narzędzie wymagające specjalnej rejestracji. Działa ono podobnie do wykrywania marek - na zdjęci wykrywa celebrytów, zwraca współrzędne miejsca ich twarzy oraz pokazuje, jak bardzo prawdopodobna jest diagnoza. Zbiór danych zawiera ponad milion znanych osób, w tym aktorów i osób z Wikipedii.
W tym samym api znajdziemy możliwość rozpoznawania punktów orientacyjnych (landmarks).
Struktura wygląda tak:
Microsoft Foundry > Vision > Object detection > Brand detection
Semantic ranking jest używany w Azure AI Search w celu poprawy wyników wyszukiwania.
Jest to opcja dodatkowo płatna, w ramach usługi otrzymujemy jednak za darmo 1000 wyszukiwań oraz 50 milionów darmowych tokenów.
W uproszczeniu działa w ten sposób, że pobiera zarówno query użytkownika jak i wyniki, a następnie wyniki są skanowane przez modele rozumiejące język (language understanding models), w celu wykrycia najlepszych dopasowań.
1 krok to wyszukanie dokumentów i zwrócenie określonej ilości najlepszych dopasowań. Przykładowo, użytkownik szuka leków na ból golenia.
Następnie dokumenty są analizowane pod względem semantycznym, ustawiając wybrane początkowo dokumenty w odpowiedniej kolejności. Takie wyszukiwanie nie opiera się tylko na słowach kluczowych, ale także na znaczeniu słów. Użytkownik w wynikach wyszukiwania nie powinien dostać kremu do golenia ;)
Według dokumentacji Microsoftu, ten proces kosztuje dużo zasobów i jest czasochłonny, przez co może powodować pewne opóźnienie dla użytkownika.
Wyszukiwanie zużywa około 2000 tokenów na dokument.
Usługa ta wchodzi w skład Azure Language. Jej głównym celem jest rozumienie komunikatów użytkowników, przekazywanych w formie wypowiedzi. Dzięki temu, aplikacja potrafi zrozumieć nasze intencje, wyciągając z wypowiedzi najważniejsze informacje.
Odchodząc od Azure, takie interakcje łatwo zaobserwujemy w różnych chatach z LLM. Przykładowo, Gemini potrafi zrozumieć, gdy poprosimy go o wygenerowanie quizu i przejdzie wtedy w inny tryb niż zwykle.
Używając Conversational Language Understanding, możemy między innymi:
Utworzyć aplikację chatu, która będzie dopytywała użytkownika o szczegóły zadania w formie naturalnego dialogu (Multi-turn conversations)
Tworzyć wyspecjalizowane boty, które potrafią zarówno rozumieć tekst, jak i prosić o większa ilość informacji.
Boty wspierające użytkowników
Aplikacje sterowane za pomocą chatu
Ciekawym przykładem jest wtyczka Copilot do VSCode, która umożliwia wykonywanie nawet bardzo skomplikowanych operacji, opierając się jedynie na tekście. Co więcej, rozwiązania opierające się na rozumieniu mowy, mogą działać także za pomocą głosu. Gdy w chatach umieścimy jeszcze możliwość dodawania obrazków, uzyskujemy prawdziwie multimodalne rozwiązanie.
Ważną kwestią w tego typu rozwiązaniach jest transparency - nasz użytkownik powinien wiedzieć, że rozmawia z botem i być poinformowany o ograniczeniach systemu.
W poprzednim wpisie opisywałem Recall i Precision, 2 ważne wskaźniki wynikające z confussion matrix.
F1 Score wynika bezpośrednio z tych dwóch miar, jest ich średnią harmoniczną. Może przyjmować wartości od 0 do 1, wartość 1 świadczy o idealnym modelu.
Przykładowo, jeśli precyzja wynosi 0.9 a recall 0.8, świadczy to, że:
90% maili oznaczonych jako spam było spamem - precyzja 0.9
Tworząc systemy informatyczne w których użytkownik może wykonywać jakieś akcje, należy zastosować jakieś metody na ich filtrowanie. Gdy zarządzamy forum czy grupą, musimy przeprowadzać moderację treści.
To samo tyczy się filtrowania danych w tak popularnych obecnie aplikacjach AI, oraz filtrowania samych danych zwracanych przez nasz system.
Azure AI Safety oferuje kilka rodzajów filtrowania danych
Prompt Shields - skanuje prompty użytkownika w celu sprawdzenia, czy user nie próbuje prompt injection.
Protected material text detection - sprawdza, czy model nie zwraca danych chronionych prawem autorskim.
Analyze text API/ Analyze image API - skanuje tekst i zdjęcia wrzucane przez użytkownika, pod względem tego, czy nie zawiera zdjęć o charakterze seksualnym, pełnych przemocy czy mowy nienawiści itp. Administrator może ustawić każdy z tych filtrów.
Załóżmy że chcesz założyć sklep i zaprojektować go w jak najbardziej efektywny sposób. Na pewno zauważyłeś, że niektóre miejsca są źle zaprojektowane. Tworzące się strumienie ludzi powodują zattory, ludzie nie wiedzą, gdzie znaleźć artykuły pierwszej potrzeby, często proszą personel o pomoc.
Azure Spatial Analysis to usługa, która pozwala na monitorowanie wielu aspektów przemieszczania się obiektów w przestrzeni. W przykładzie sklepu, pozwala na tworzenie efektywnej nawigacji, analizowanie ruchu w sklepie w czasie rzeczywistym oraz przedstawianie cyfrowych etykiet. Dzięki pomocy takiej usługi, można jak najlepiej wykorzystać eksponowane miejsca w sklepie.
Analizę przestrzeni wykorzystuje się też w produkcji. Sensory mogą monitorować strefy w których pracują niebezpieczne maszyny i wyłączyć je automatycznie, jeśli wykryją, że zbliża się do nich niepowołana osoba. Inne zastosowania to budownictwo i zdalne wsparcie przy naprawach.
Jakiś czas temu wyszło na jaw, że sklepy Amazona działające w koncepcji Just Walk Out, były w rzeczywistości obsługiwane przez osoby z Indii. W 2026 prawdziwe sklepy bezobsługowe są już w Polsce (Żabka Nano).
Podobne rozwiązania stosuje się też w robotyce i zapewne, będzie się stosowało w inteligentnych miastach. Kłania się film Wróg publiczny z 1998.
2 ważne metryki w uczeniu maszynowym to odwołanie (recall) i precyzja (precision).
Najpierw narysujmy sobie macierz pomyłek (Confusion Matrix).
Nano Banana wygenerowało taki obrazek :)
Recall odpowiada na pytanie, ile pozytywnych przypadków udało nam się prawidłowo wykryć.
Przykładowo, jeśli mamy 100 osób chorych, a model umie rozpoznać chorobę u 80 z nich, to recall wynosi 80%. Pozostałe 20% to wyniki False negatives, bo model niepoprawnie uznał je za zdrowe.
Recall ma ważne znaczenie w systemach, w których koszt pominięcia False Positive jest większy, niż koszt fałszywego alarmu.
Jeśli mamy system medyczny, lepiej jest zrobić fałszywy alarm i wysłać kogoś na dodatkowe badania, nawet, jeśli był zdrowy.
W systemie wykrywania fraudów lepiej jest komuś zablokować tymczasowo transakcję, niż dopuścić do wypłacenia pieniędzy oszustowi.
Systemy mające duży Recall mogą powodować jednak więcej fałszywych alarmów i mieć mniejszą precyzję. Z kolei za duża precyzja oznacza, że model zaczyna przegapiać przypadki co do których można mieć wątpliwości.
Model może oznaczyć każdy przypadek jako pozytywny i wtedy jego recall będzie wynosił 100%. Dochodzi wtedy do sytuacji, że wiele rzeczy jest oznaczonych niepotrzebnie jako false postive.
Recall oblicza się dzieląc TP na TP + FN. Jego inna nazwa to TPR, True Positive Rate.
Precyzja skupia się na oznaczeniu, jakie jest prawdopodobieństwo, że jeśli model coś zaznaczył jako positve, to jest to prawda. Pomaga to uniknąć fałszywych alarmów.
Przykładowo, mamy w skrzynce mailowej 100 maili, z czego 90% to jest spam. Model oznaczył 100% maili jako spam, czyli recall wynosi 100%. Precyzja jest miarą dokładniejszą, wynosi 90%.
Obliczamy ją, dzieląc TP na TP + FP
Precyzja jest główną metryką w systemach, w których nie chcemy podnosić fałszywych alarmów. Używana jest między innymi w rekomendacjach na YT czy Spotify, gdzie lepiej jest otrzymać wyniki bardziej dopasowane, niż pokazywać użytkownikowi propozycje jak leci.