Jest to post gościnny, którego autorami są Andrew Masek, inżynier oprogramowania w The Barcode Registry i Erik Quisling, dyrektor generalny The Barcode Registry.
Podrabianie produktów jest największym pojedynczym przedsięwzięciem przestępczym na świecie. Rosnąca o ponad 10,000 1.7% w ciągu ostatnich dwóch dekad sprzedaż podrabianych towarów na całym świecie wynosi obecnie XNUMX biliona dolarów rocznie, czyli więcej niż handel narkotykami i ludźmi. Chociaż tradycyjne metody zapobiegania fałszerstwom, takie jak unikalne kody kreskowe i weryfikacja produktów, mogą być bardzo skuteczne, nowe technologie uczenia maszynowego (ML), takie jak wykrywanie obiektów, wydają się bardzo obiecujące. Dzięki wykrywaniu obiektów możesz teraz zrobić zdjęcie produktu i niemal natychmiast dowiedzieć się, czy ten produkt może być legalny, czy fałszywy.
Połączenia Rejestr kodów kreskowych (w połączeniu ze swoim partnerem) Kupabarcode.com) to kompleksowe rozwiązanie, które pomaga klientom zapobiegać oszustwom i podrabianiu produktów. Robi to poprzez sprzedaż unikalnych kodów kreskowych zarejestrowanych w GS1, weryfikację własności produktu oraz rejestrację produktów i kodów kreskowych użytkowników w obszernej bazie danych. Ich najnowsza oferta, którą omawiamy w tym poście, wykorzystuje Amazon Sage Maker do tworzenia modeli wykrywania obiektów, aby pomóc natychmiast rozpoznać podrabiane produkty.
Przegląd rozwiązania
Aby korzystać z tych modeli wykrywania obiektów, musisz najpierw zebrać dane, aby je wyszkolić. Firmy przesyłają zdjęcia swoich produktów z adnotacjami do rejestru kodów kreskowych . Po przesłaniu tych danych do Usługa Amazon Simple Storage (Amazon S3) i przetwarzane przez AWS Lambda funkcji, możesz go użyć do trenowania modelu wykrywania obiektów SageMaker. Ten model jest hostowany na punkcie końcowym SageMaker, gdzie witryna łączy go z użytkownikiem końcowym.
Tworzenie niestandardowych modeli wykrywania obiektów w programie SageMaker składa się z trzech kluczowych etapów tworzenia rejestru kodów kreskowych:
- Utwórz skrypt szkoleniowy do uruchomienia SageMaker.
- Zbuduj kontener Dockera ze skryptu szkoleniowego i prześlij go do Amazon ECR.
- Użyj konsoli SageMaker, aby wytrenować model za pomocą niestandardowego algorytmu.
Dane produktu
Warunkiem wstępnym do trenowania modelu wykrywania obiektów będzie konto AWS i obrazy szkoleniowe, składające się z co najmniej 100 wysokiej jakości (w wysokiej rozdzielczości i w wielu warunkach oświetleniowych) zdjęć obiektu. Jak w przypadku każdego modelu ML, najważniejsza jest wysoka jakość danych. Aby wytrenować model wykrywania obiektów, potrzebujemy obrazów zawierających odpowiednie produkty, a także ramek ograniczających opisujących, gdzie produkty znajdują się na obrazach, jak pokazano w poniższym przykładzie.
Aby wytrenować skuteczny model, potrzebne są zdjęcia każdego z produktów danej marki z różnym tłem i warunkami oświetlenia — około 30–100 unikalnych obrazów z adnotacjami dla każdego produktu.
Po przesłaniu obrazów na serwer sieciowy są one przesyłane do Amazon S3 za pomocą AWS SDK dla PHP. Zdarzenie Lambda jest wyzwalane za każdym razem, gdy przesyłany jest obraz. Funkcja usuwa metadane Exif z obrazów, co może czasami powodować, że są one obrócone, gdy są otwierane przez biblioteki ML, które są później używane do trenowania modelu. Powiązane dane ramki ograniczającej są przechowywane w plikach JSON i przesyłane do Amazon S3 w celu dołączenia do obrazów.
SageMaker do modeli wykrywania obiektów
SageMaker to zarządzana usługa ML, która obejmuje różnorodne narzędzia do budowania, trenowania i hostowania modeli w chmurze. W szczególności TheBarcodeRegistry wykorzystuje SageMaker do swojej usługi wykrywania obiektów ze względu na niezawodne i skalowalne usługi szkolenia i hostingu modeli ML firmy SageMaker. Oznacza to, że wiele marek może mieć wyszkolone i hostowane własne modele wykrywania obiektów, a nawet jeśli użycie gwałtownie wzrośnie, nie będzie żadnych przestojów.
Rejestr kodów kreskowych korzysta z niestandardowych kontenerów platformy Docker przesłanych do Rejestr elastycznego pojemnika Amazon (Amazon ECR) w celu dokładniejszej kontroli algorytmu wykrywania obiektów wykorzystywanego do uczenia i wnioskowania, a także obsługi Serwer wielu modeli (MMS-y). MMS jest bardzo ważny w przypadku wykrywania fałszerstw, ponieważ umożliwia ekonomiczne hostowanie wielu modeli marek na tym samym serwerze. Alternatywnie możesz użyć wbudowanego algorytm wykrywania obiektów do szybkiego wdrażania standardowych modeli opracowanych przez AWS.
Wytrenuj niestandardowy model wykrywania obiektów za pomocą SageMaker
Najpierw musisz dodać swój algorytm wykrywania obiektów. W takim przypadku prześlij kontener Docker zawierający skrypty do trenowania modelu wykrywania obiektów Yolov5 do Amazon ECR:
- Na konsoli SageMaker pod Notatnik w okienku nawigacji wybierz Instancje notebooków.
- Dodaj Utwórz instancję notatnika.
- Wpisz nazwę instancji notatnika i pod Uprawnienia i szyfrowanie wybierz plik AWS Zarządzanie tożsamością i dostępem (IAM) z niezbędnymi uprawnieniami.
- Otwórz Repozytoria Git menu.
- Wybierz Klonuj publiczne repozytorium Git tylko do tego wystąpienia notebooka i wklej następujące Adres URL repozytorium Git: https://github.com/portoaj/SageMakerObjectDetection
- Kliknij Utwórz instancję notesu i poczekaj około pięciu minut, aż stan instancji zaktualizuje się z Do czasu do Czynny Instancja notebooka menu.
- Gdy notebook jest Czynny, wybierz go i kliknij Akcje i Otwórz Jupyter aby uruchomić instancję notatnika w nowej karcie.
- Wybierz SageMakerWykrywanie obiektów katalog, a następnie kliknij
sagemakerobjectdetection.ipynb
aby uruchomić notatnik Jupyter. - Wybierz
conda_python3
jądro i kliknij Ustaw jądro. - Wybierz komórkę kodu i ustaw
aws_account_id
zmienna na identyfikator Twojego konta AWS. - Kliknij run rozpoczęcie procesu budowania kontenera Dockera i wgrywania go do Amazon ECR. Ten proces może potrwać około 20 minut.
- Po przesłaniu kontenera Docker wróć do Instancje notebooków wybierz instancję i kliknij Akcje i Stop aby zamknąć instancję notebooka.
Po zbudowaniu algorytmu i przesłaniu go do Amazon ECR możesz go użyć do trenowania modelu za pomocą konsoli SageMaker.
- Na konsoli SageMaker pod Trening w okienku nawigacji wybierz Praca szkoleniowa.
- Dodaj Utwórz pracę szkoleniową.
- Wprowadź nazwę pracy i wybierz AWS Zarządzanie tożsamością i dostępem (IAM) z niezbędnymi uprawnieniami.
- W razie zamówieenia projektu Źródło algorytmu, Wybierz Twój własny kontener algorytmu w ECR.
- W razie zamówieenia projektu Pojemnik, wprowadź ścieżkę rejestru.
- Ustawienie pojedynczego wystąpienia ml.p2.xlarge w ramach konfiguracji zasobów powinno wystarczyć do trenowania modelu Yolov5.
- Określ lokalizacje Amazon S3 zarówno dla danych wejściowych, jak i ścieżki wyjściowej, a także wszelkich innych ustawień, takich jak konfiguracja VPC za pomocą Wirtualna prywatna chmura Amazon (Amazon VPC) lub włączenie zarządzanego szkolenia punktowego.
- Dodaj Utwórz pracę szkoleniową.
Postęp szkolenia modelki można śledzić na konsoli SageMaker.
Zautomatyzowane szkolenie modeli
Poniższy diagram ilustruje zautomatyzowany przepływ pracy uczenia modelu:
Aby SageMaker zaczął trenować model wykrywania obiektów, gdy tylko użytkownik zakończy przesyłanie swoich danych, serwer sieciowy używa Brama Amazon API powiadomienie funkcji Lambda, że marka zakończyła pracę i rozpoczęcie pracy szkoleniowej.
Gdy model marki zostanie pomyślnie przeszkolony, Most zdarzeń Amazona wywołuje funkcję Lambda, która przenosi wyszkolony model do zasobnika S3 działającego punktu końcowego, gdzie jest już gotowy do wnioskowania. Nowszą alternatywą dla korzystania z Amazon EventBridge do przenoszenia modeli przez cykl życia MLOps, którą należy rozważyć, jest Rurociągi SageMaker.
Hostuj model do wnioskowania
Poniższy diagram ilustruje przepływ wnioskowania:
Aby korzystać z przeszkolonych modeli, SageMaker wymaga, aby model wnioskowania był obsługiwany przez punkt końcowy. Punkt końcowy to serwer lub tablica serwerów, które są używane do faktycznego hostowania modelu wnioskowania. Podobnie jak kontener szkoleniowy, który stworzyliśmy, kontener Docker do wnioskowania jest hostowany w Amazon ECR. Model wnioskowania używa tego kontenera Docker i pobiera obraz wejściowy, który użytkownik wykonał za pomocą telefonu, przepuszcza go przez wyszkolony model wykrywania obiektów i wyświetla wynik.
Ponownie rejestr kodów kreskowych używa niestandardowych kontenerów platformy Docker dla modelu wnioskowania, aby umożliwić korzystanie z serwera Multi Model Server, ale jeśli potrzebny jest tylko jeden model, który można łatwo hostować za pomocą wbudowanego algorytmu wykrywania obiektów.
Wnioski
Rejestr kodów kreskowych (w połączeniu ze swoim partnerem Buyabarcode.com) używa AWS do całego procesu wykrywania obiektów. Serwer WWW niezawodnie przechowuje dane w Amazon S3 i wykorzystuje funkcje API Gateway i Lambda do połączenia serwera WWW z chmurą. SageMaker chętnie szkoli i udostępnia modele ML, co oznacza, że użytkownik może zrobić zdjęcie produktu telefonem i sprawdzić, czy jest on podrobiony. Ten post pokazuje, jak stworzyć i hostować model wykrywania obiektów za pomocą SageMaker, a także jak zautomatyzować ten proces.
Podczas testów model był w stanie osiągnąć ponad 90% dokładność na zestawie uczącym składającym się z 62 obrazów i zestawie testowym składającym się z 32 obrazów, co jest imponujące w przypadku modelu uczonego bez interwencji człowieka. Aby zacząć samodzielnie trenować modele wykrywania obiektów, sprawdź oficjalne dokumentacja lub naucz się wdrożyć model wykrywania obiektów na obrzeżu za pomocą AWS IoT Greengrass.
Treść i opinie zawarte w tym poście należą do autora będącego osobą trzecią, a AWS nie ponosi odpowiedzialności za treść ani dokładność tego postu.
O autorach
Andrzej Masek, inżynier oprogramowania w The Barcode Registry.
Eryka Quislinga, CEO Rejestru Kodów Kreskowych.
- Coinsmart. Najlepsza w Europie giełda bitcoinów i kryptowalut.
- Platoblockchain. Web3 Inteligencja Metaverse. Wzmocniona wiedza. DARMOWY DOSTĘP.
- CryptoJastrząb. Radar Altcoin. Bezpłatna wersja próbna.
- Źródło: https://aws.amazon.com/blogs/machine-learning/how-the-barcode-registry-detects-counterfeit-products-using-object-detection-and-amazon-sagemaker/
- "
- 000
- 10
- 100
- 7
- O nas
- dostęp
- Konto
- algorytm
- Chociaż
- Amazonka
- api
- zautomatyzowane
- AWS
- granica
- Pudełko
- marek
- Budowanie
- wbudowany
- Spowodować
- ceo
- Chmura
- kod
- zbierać
- Firmy
- systemu
- Konsola
- Pojemnik
- Pojemniki
- zawartość
- kontrola
- Podróbka
- Tworzenie
- Karny
- zwyczaj
- Klientów
- dane
- Baza danych
- rozwijać
- Wykrywanie
- rozwinięty
- różne
- dyskutować
- Doker
- na dół
- przestojów
- Narkotyki
- z łatwością
- krawędź
- Efektywne
- umożliwiając
- Punkt końcowy
- inżynier
- Enterprise
- wydarzenie
- przykład
- W końcu
- i terminów, a
- następujący
- oszustwo
- funkcjonować
- git
- towary
- Rozwój
- Gość
- Guest Post
- pomoc
- pomaga
- W jaki sposób
- How To
- HTTPS
- człowiek
- tożsamość
- obraz
- ważny
- Internet przedmiotów
- IT
- Praca
- Klawisz
- firmy
- uruchomić
- UCZYĆ SIĘ
- nauka
- lokalizacji
- maszyna
- uczenie maszynowe
- zarządzane
- ML
- model
- modele
- jeszcze
- ruch
- Nawigacja
- notatnik
- oferuje
- urzędnik
- Opinie
- zamówienie
- Inne
- własność
- partnerem
- obraz
- bardzo
- Zapobieganie
- prywatny
- wygląda tak
- Produkt
- Produkty
- obiecujący
- publiczny
- szybko
- rozpoznać
- składnica
- Zasób
- odpowiedzialny
- run
- sole
- skalowalny
- Sdk
- usługa
- Usługi
- zestaw
- podobny
- Prosty
- Snap
- Tworzenie
- Software Engineer
- rozwiązanie
- Spot
- początek
- rozpoczęty
- Rynek
- przechowywanie
- sklep
- Z powodzeniem
- wsparcie
- Technologies
- Testowanie
- świat
- innych firm
- Przez
- czas
- narzędzia
- śledzić
- tradycyjny
- Trening
- pociągi
- wyjątkowy
- Aktualizacja
- posługiwać się
- Weryfikacja
- Wirtualny
- czekać
- sieć
- serwer wWW
- Strona internetowa
- bez
- świat
- na calym swiecie
- rok