03/29/2024

Conectați și executați modele de învățare automată pentru anomalii vizuale în arhitectura AWS Serverless

Imaginați-vă că aveți o infrastructură mare de diferite tipuri de dispozitive pe care trebuie să le întrețineți în mod regulat sau să vă asigurați că nu sunt periculoase pentru mediul înconjurător.

O modalitate de a realiza acest lucru este să trimiți în mod regulat oameni în fiecare loc pentru a verifica dacă totul este în regulă. Acest lucru este cumva realizabil, dar, de asemenea, este destul de costisitor de timp și resurse. Și dacă infrastructura este suficient de mare, s-ar putea să nu o poți acoperi în întregime într-un an.

O altă modalitate este să automatizezi acel proces și să lași joburile din cloud să verifice pentru tine. Pentru ca acest lucru să se întâmple, va trebui să faceți următoarele:

👉 Un proces rapid despre cum să obțineți imagini ale dispozitivelor. Acest lucru poate fi în continuare făcut de către persoane, deoarece este încă mult mai rapid să faci doar o imagine, cum ar fi toate procesele de verificare a dispozitivului. Se poate face și prin fotografiile făcute din mașini sau chiar din drone, caz în care devine un proces de adunare a pozelor mult mai rapid și mai automatizat.

👉 Apoi trebuie să trimiteți toate imaginile obținute într-un singur loc dedicat în cloud.

👉 În cloud, aveți nevoie de o lucrare automată pentru a prelua imaginile și a le procesa prin modele de învățare automată instruite să recunoască defecțiunile sau anomaliile dispozitivului.

👉 În sfârșit, rezultatele trebuie să fie vizibile pentru utilizatorii solicitați, astfel încât reparația să poată fi programată pentru dispozitivele cu probleme.

Să vedem cum putem realiza detectarea anomaliilor din imaginile din cloudul AWS. Amazon are câteva modele de învățare automată prefabricate pe care le putem folosi în acest scop.

Cum se creează un model pentru detectarea anomaliilor vizuale

Pentru a crea un model pentru detectarea anomaliilor vizuale, va trebui să urmați câțiva pași:

Pasul 1: Definiți clar problema pe care doriți să o rezolvați și tipurile de anomalii pe care doriți să le detectați. Acest lucru vă va ajuta să determinați setul de date de testare adecvat de care veți avea nevoie pentru a antrena modelul.

Pasul 2: Colectați un set mare de date de imagini reprezentând condiții normale și anormale. Etichetați imaginile pentru a indica care sunt normale și care conțin anomalii.

Pasul 3: Alegeți o arhitectură model care este potrivită pentru sarcină. Aceasta poate implica selectarea unui model pre-antrenat și ajustarea lui pentru cazul dvs. de utilizare specific sau crearea unui model personalizat de la zero.

Pasul 4: Antrenați modelul folosind setul de date pregătit și algoritmul selectat. Aceasta înseamnă folosirea învățării prin transfer pentru a valorifica modele pre-antrenate sau antrenarea modelului de la zero folosind tehnici precum rețelele neuronale convoluționale (CNN).

Cum să antrenezi un model de învățare automată

Sursa: aws.amazon.com

Procesul de instruire a modelelor de învățare automată AWS pentru detectarea anomaliilor vizuale implică de obicei câțiva pași importanți.

  Browserul pentru câmpuri de remediere nu conține o configurație de alias validă

#1. Colectați Datele

La început, trebuie să colectați și să etichetați un set mare de date de imagini care reprezintă atât condiții normale, cât și anormale. Cu cât setul de date este mai mare, cu atât modelul poate fi antrenat mai bine și mai precis. Dar, de asemenea, implică mult mai mult timp dedicat antrenării modelului.

De obicei, doriți să aveți în jur de 1000 de imagini într-un set de testare pentru a avea un început bun.

#2. Pregătiți datele

Datele imaginii trebuie mai întâi preprocesate pentru ca modelele de învățare automată să le poată prelua. Preprocesarea poate însemna diverse lucruri, cum ar fi:

  • Curățarea imaginilor de intrare în subdosare separate, corectarea metadatelor etc.
  • Redimensionarea imaginilor pentru a îndeplini cerințele de rezoluție ale modelului.
  • Distribuiți-le în bucăți mai mici de imagini pentru o procesare mai eficientă și paralelă.

#3. Selectați modelul

Acum alege modelul potrivit pentru a face treaba potrivită. Fie alegeți un model pre-antrenat, fie puteți crea un model personalizat potrivit pentru detectarea anomaliilor vizuale pe model.

#4. Evaluați rezultatele

Odată ce modelul vă prelucrează setul de date, veți valida performanța acestuia. De asemenea, doriți să verificați dacă rezultatele sunt satisfăcătoare pentru nevoi. Aceasta poate însemna, de exemplu, că rezultatele sunt corecte pe mai mult de 99% din datele de intrare.

#5. Implementați modelul

Dacă sunteți mulțumit de rezultate și performanță, implementați modelul cu o anumită versiune în mediul de cont AWS, astfel încât procesele și serviciile să poată începe să-l folosească.

#6. Monitorizați și îmbunătățiți

Lăsați-l să ruleze prin diferite lucrări de testare și seturi de date de imagine și evaluați în mod constant dacă parametrii necesari pentru corectitudinea detectării sunt încă aplicați.

Dacă nu, reantrenați modelul prin includerea noilor seturi de date în care modelul a furnizat rezultate greșite.

Modele de învățare automată AWS

Acum, uită-te la câteva modele concrete pe care le poți folosi în cloudul Amazon.

Recunoaștere AWS

Sursa: aws.amazon.com

Rekognition este un serviciu general de analiză a imaginilor și video, care poate fi utilizat pentru diferite cazuri de utilizare, cum ar fi recunoașterea feței, detectarea obiectelor și recunoașterea textului. De cele mai multe ori, veți folosi modelul Rekognition pentru o generare inițială brută de rezultate de detecție pentru a forma un lac de date al anomaliilor identificate.

Oferă o gamă de modele prefabricate pe care le poți folosi fără antrenament. Rekognition oferă, de asemenea, analize în timp real a imaginilor și videoclipurilor cu precizie ridicată și latență scăzută.

Iată câteva cazuri de utilizare tipice în care Rekognition este o alegere bună pentru detectarea anomaliilor:

  • Aveți un caz de utilizare general pentru detectarea anomaliilor, cum ar fi detectarea anomaliilor în imagini sau videoclipuri.
  • Efectuați detectarea anomaliilor în timp real.
  • Integrați modelul dvs. de detectare a anomaliilor cu servicii AWS precum Amazon S3, Amazon Kinesis sau AWS Lambda.

Și iată câteva exemple concrete de anomalii pe care le puteți detecta folosind Rekognition:

  • Anomalii ale fețelor, cum ar fi detectarea expresiilor faciale sau a emoțiilor în afara limitei normale.
  • Obiecte lipsă sau deplasate într-o scenă.
  • Cuvinte greșite sau modele neobișnuite de text.
  • Condiții de iluminare neobișnuite sau obiecte neașteptate dintr-o scenă.
  • Conținut inadecvat sau ofensator în imagini sau videoclipuri.
  • Schimbări bruște în mișcare sau modele neașteptate de mișcare.
  Cum să creați imagini de fundal pentru iPhone și iPad folosind comenzi rapide

AWS Lookout pentru Vision

Sursa: aws.amazon.com

Lookout for Vision este un model special conceput pentru detectarea anomaliilor în procesele industriale, cum ar fi liniile de producție și producție. De obicei, necesită o preprocesare și postprocesare a codului personalizat a unei imagini sau o decupare concretă a imaginii, de obicei realizată folosind un limbaj de programare Python. De cele mai multe ori, este specializat în unele probleme cu totul speciale din imagine.

Este nevoie de instruire personalizată pe un set de date de imagini normale și anormale pentru a crea un model personalizat pentru detectarea anomaliilor. Nu este atât de concentrat în timp real; mai degrabă, este conceput pentru procesarea în serie a imaginilor, concentrându-se pe acuratețe și precizie.

Iată câteva cazuri tipice de utilizare în care Lookout for Vision este o alegere bună dacă trebuie să detectați:

  • Defecte ale produselor fabricate sau identificarea defecțiunilor echipamentelor dintr-o linie de producție.
  • Un set mare de date de imagini sau alte date.
  • Anomalie în timp real într-un proces industrial.
  • Anomalie integrată cu alte servicii AWS, cum ar fi Amazon S3 sau AWS IoT.

Și iată câteva exemple concrete de anomalii pe care le puteți detecta folosind Lookout for Vision:

  • Defectele produselor fabricate, cum ar fi zgârieturile, loviturile sau alte imperfecțiuni, pot afecta calitatea produsului.
  • Defecțiuni ale echipamentelor dintr-o linie de producție, cum ar fi detectarea mașinilor stricate sau defectuoase, care pot cauza întârzieri sau pericole de siguranță.
  • Problemele de control al calității într-o linie de producție includ detectarea produselor care nu îndeplinesc specificațiile sau toleranțele cerute.
  • Riscurile de siguranță într-o linie de producție includ detectarea obiectelor sau materialelor care pot prezenta un risc pentru lucrători sau echipamente.
  • Anomalii într-un proces de producție, cum ar fi detectarea modificărilor neașteptate ale fluxului de materiale sau produse prin linia de producție.

AWS Sagemaker

Sursa: aws.amazon.com

Sagemaker este o platformă complet gestionată pentru construirea, instruirea și implementarea modelelor personalizate de învățare automată.

Este o soluție mult mai robustă. De fapt, oferă o modalitate de a conecta și de a executa mai multe procese în mai mulți pași într-un lanț de joburi care urmează unul după altul, la fel ca funcțiile AWS Step Functions.

Dar, deoarece Sagemaker utilizează instanțe EC2 ad-hoc pentru procesarea sa, nu există o limită de 15 minute pentru procesarea unui singur job, ca în cazul funcțiilor AWS lambda din AWS Step Functions.

De asemenea, puteți face reglarea automată a modelului cu Sagemaker, care este cu siguranță o caracteristică care îl face o opțiune remarcabilă. În cele din urmă, Sagemaker poate implementa fără efort modelul într-un mediu de producție.

Iată câteva cazuri de utilizare tipice în care SageMaker este o alegere bună pentru detectarea anomaliilor:

  • Un caz de utilizare specific care nu este acoperit de modele prefabricate sau de API-uri și dacă trebuie să construiți un model personalizat, adaptat nevoilor dvs. specifice.
  • Dacă aveți un set mare de date de imagini sau alte date. Modelele pre-construite necesită o pre-procesare în astfel de cazuri, dar Sagemaker o poate face fără ea.
  • Dacă trebuie să efectuați detectarea anomaliilor în timp real.
  • Dacă trebuie să vă integrați modelul cu alte servicii AWS, cum ar fi Amazon S3, Amazon Kinesis sau AWS Lambda.
  Shotgun Farmers Coduri de deblocare: Valorificați acum

Și iată câteva detectări tipice de anomalii pe care Sagemaker este capabil să le efectueze:

  • Detectarea fraudei în tranzacțiile financiare, de exemplu, modele de cheltuieli neobișnuite sau tranzacții în afara intervalului normal.
  • Securitatea cibernetică în traficul de rețea, cum ar fi modele neobișnuite de transfer de date sau conexiuni neașteptate la servere externe.
  • Diagnosticul medical în imagini medicale, cum ar fi detectarea tumorilor.
  • Anomalii în performanța echipamentului, cum ar fi detectarea modificărilor vibrațiilor sau temperaturii.
  • Controlul calității în procesele de producție, cum ar fi detectarea defectelor produselor sau identificarea abaterilor de la standardele de calitate așteptate.
  • Modele neobișnuite de utilizare a energiei.

Cum se încorporează modelele în arhitectura serverless

Un model de învățare automată instruit este un serviciu cloud care nu utilizează niciun server de cluster în fundal; astfel, poate fi inclus cu ușurință într-o arhitectură fără server existentă.

Automatizarea se realizează prin funcții AWS lambda, conectate la o lucrare cu mai mulți pași în cadrul unui serviciu AWS Step Functions.

De obicei, aveți nevoie de detectarea inițială imediat după colectarea imaginilor și preprocesarea lor pe găleata S3. Acolo veți genera detectarea anomaliilor atomice pe imaginile de intrare și veți salva rezultatele într-un lac de date, de exemplu, reprezentat de baza de date Athena.

În unele cazuri, această detectare inițială nu este suficientă pentru cazul dvs. concret de utilizare. S-ar putea să aveți nevoie de o altă detectare, mai detaliată. De exemplu, modelul inițial (de exemplu, Recunoaștere) poate detecta o problemă pe dispozitiv, dar nu este posibil să se identifice în mod fiabil ce fel de problemă este.

Pentru asta, este posibil să aveți nevoie de un alt model cu capacități diferite. Într-un astfel de caz, puteți rula celălalt model (de exemplu, Lookout for Vision) pe subsetul de imagini în care modelul inițial a identificat problema.

Aceasta este, de asemenea, o modalitate bună de a economisi unele costuri, deoarece nu trebuie să rulați al doilea model pe un întreg set de imagini. În schimb, îl rulați numai pe subsetul semnificativ.

Funcțiile AWS Lambda vor acoperi toate astfel de procesări folosind codul Python sau Javascript din interior. Depinde doar de natura proceselor și de câte funcții AWS lambda va trebui să includeți într-un flux. Limita de 15 minute pentru durata maximă a unui apel AWS lambda va determina câți pași trebuie să conțină un astfel de proces.

Cuvinte finale

Lucrul cu modele de învățare automată în cloud este o muncă foarte interesantă. Dacă te uiți la asta din perspectiva abilităților și tehnologiilor, vei descoperi că trebuie să ai o echipă cu o mare varietate de abilități.

Echipa trebuie să înțeleagă cum să antreneze un model, fie el pre-construit sau creat de la zero. Aceasta înseamnă că o mulțime de matematică sau algebră este implicată în echilibrarea fiabilității și performanței rezultatelor.

De asemenea, aveți nevoie de abilități avansate de codare Python sau Javascript, abilități de bază de date și SQL. Și după ce toată munca de conținut este finalizată, aveți nevoie de abilități DevOps pentru a-l conecta la o conductă care o va face o lucrare automatizată pregătită pentru implementare și execuție.

Definirea anomaliei și antrenamentul modelului este un lucru. Dar este o provocare să integrezi totul într-o singură echipă funcțională care poate procesa rezultatele modelelor și poate salva datele într-un mod eficient și automat pentru a le oferi utilizatorilor finali.

Apoi, consultați totul despre recunoașterea facială pentru companii.