Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Z Amazon Lookout for Metrics zgradite detektor anomalij kakovosti zraka

Danes je onesnaženost zraka znana okoljska težava, ki povzroča resne bolezni dihal in srca, ki resno ogrožajo zdravje. Kisli dež, tanjšanje ozonske plasti in globalno segrevanje so prav tako škodljive posledice onesnaženega zraka. Obstaja potreba po inteligentnem nadzoru in avtomatizaciji, da bi preprečili resne zdravstvene težave in v skrajnih primerih življenjsko nevarne situacije. Kakovost zraka se meri s koncentracijo onesnaževal v zraku. Ključnega pomena je zgodnje prepoznavanje simptomov in nadzorovanje ravni onesnaževal, preden postane nevarno. Postopek ugotavljanja kakovosti zraka in anomalije v teži onesnaževal ter hitrega diagnosticiranja temeljnega vzroka je težaven, drag in nagnjen k napakam.

Postopek uporabe rešitev, ki temeljijo na umetni inteligenci in strojnem učenju (ML), za iskanje anomalij v podatkih vključuje veliko zapletenosti pri zaužitju, kuriranju in pripravi podatkov v pravi obliki ter nato optimiziranju in ohranjanju učinkovitosti teh modelov ML v dolgih obdobjih. čas. To je bila ena od ovir pri hitrem izvajanju in povečanju sprejemanja zmogljivosti ML.

Ta objava prikazuje, kako uporabljati integrirano rešitev z Amazon Lookout za meritve in Amazon Kinesis Data Firehose da premagate te ovire s hitrim in enostavnim vnosom pretočnih podatkov in posledično odkrivanjem nepravilnosti v ključnih kazalnikih uspešnosti, ki vas zanimajo.

Lookout for Metrics samodejno zazna in diagnosticira anomalije (odstopanja od norme) v poslovnih in operativnih podatkih. To je popolnoma upravljana storitev ML, ki uporablja specializirane modele ML za odkrivanje anomalij na podlagi značilnosti vaših podatkov. Na primer, trendi in sezonskost sta dve značilnosti meritev časovnih vrst, pri katerih zaznavanje anomalij na podlagi praga ne deluje. Trendi so nenehne spremembe (povečanje ali zmanjšanje) vrednosti metrike. Po drugi strani pa so sezonskost periodični vzorci, ki se pojavljajo v sistemu, običajno se dvignejo nad izhodiščno vrednost in nato spet zmanjšajo. Za uporabo Lookout for Metrics ne potrebujete izkušenj z ML.

Predstavimo običajni scenarij spremljanja kakovosti zraka, v katerem zaznamo anomalije v koncentraciji onesnaževal v zraku. Ob koncu te objave se boste naučili uporabljati te upravljane storitve AWS za pomoč pri preprečevanju zdravstvenih težav in globalnega segrevanja. To rešitev lahko uporabite za druge primere uporabe za boljše upravljanje okolja, kot je odkrivanje nepravilnosti v kakovosti vode, kakovosti zemlje in vzorcih porabe energije, če naštejemo le nekatere.

Pregled rešitev

Arhitekturo sestavljajo trije funkcionalni bloki:

  • Brezžični senzorji, nameščeni na strateških lokacijah za zaznavanje ravni koncentracije ogljikovega monoksida (CO), žveplovega dioksida (SO2) in dušikovega dioksida (NO2) v zraku
  • Vnos in shranjevanje pretočnih podatkov
  • Odkrivanje in obveščanje o nepravilnostih

Rešitev zagotavlja popolnoma avtomatizirano podatkovno pot od senzorjev do obvestila, ki se pošlje uporabniku. Z rešitvijo lahko komunicirate tudi z uporabniškim vmesnikom Lookout for Metrics, da analizirate ugotovljene anomalije.

Naslednji diagram ponazarja našo arhitekturo rešitev.

Predpogoji

Preden lahko nadaljujete z rešitvijo, potrebujete naslednje predpogoje. Za to objavo uporabljamo regijo us-east-1.

  1. Prenesite skript Python (objavi.py) in podatkovno datoteko iz GitHub repo.
  2. odprite live_data.csv datoteko v želenem urejevalniku in zamenjajte datume za današnji in jutrišnji datum. Na primer, če je današnji datum 8. julij 2022, zamenjajte 2022-03-25 z 2022-07-08. Format naj bo enak. To je potrebno za simulacijo podatkov senzorja za trenutni datum s pomočjo skripta simulatorja IoT.
  3. Ustvari Preprosta storitev shranjevanja Amazon (Amazon S3) vedro in mapo z imenom air-quality. Znotraj ustvarite podmapo air-quality imenovan historical. Za navodila glej Ustvarjanje mape.
  4. Naložite live_data.csv datoteko v korenskem vedru S3 in historical_data.json v zgodovinski mapi.
  5. Ustvari AWS Cloud9 razvojno okolje, ki ga uporabljamo za izvajanje simulatorskega programa Python za ustvarjanje senzorskih podatkov za to rešitev.

Zaužijte in preoblikujte podatke z uporabo AWS IoT Core in Kinesis Data Firehose

Uporabljamo tok dostave Kinesis Data Firehose za vnos pretočnih podatkov iz AWS IoT jedro in ga dostavite Amazonu S3. Izvedite naslednje korake:

  1. Na konzoli Kinesis Data Firehose izberite Ustvari tok dostave.
  2. za vir, izberite Neposredni PUT.
  3. za destinacija, izberite Amazon S3.
  4. za Ime toka dostave, vnesite ime za vaš tok dostave.
    Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.
  5. za Vedro S3, vnesite vedro, ki ste ga ustvarili kot predpogoj.
  6. Vnesite vrednosti za Predpona vedra S3 in Izhodna predpona napake vedra S3Ena od ključnih točk, ki jih je treba upoštevati, je konfiguracija predpone po meri, ki je konfigurirana za cilj Amazon S3. Ta vzorec predpone zagotavlja, da so podatki ustvarjeni v vedru S3 v skladu s hierarhijo predpon, ki jo pričakuje Lookout for Metrics. (Več o tem kasneje v tej objavi.) Za več informacij o predponah po meri glejte Predpone po meri za predmete Amazon S3.
    Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.
  7. za Medpomnilniški interval, vnesite 60.
    Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.
  8. Izberite Ustvarite ali posodobite vlogo IAM.
  9. Izberite Ustvari tok dostave.
    Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.
    Zdaj konfiguriramo AWS IoT Core in zaženemo program simulatorja kakovosti zraka.
  10. Na konzoli AWS IoT Core, ustvarite pravilnik AWS IoT imenovan admin.
  11. V navigacijskem podoknu pod Usmerjanje sporočil, izberite Pravila.
  12. Izberite Ustvari pravilo.
  13. Ustvarite pravilo z Akcija Kinesis Data Firehose (gasilska cev)..
    To pošlje podatke iz sporočila MQTT v tok dostave Kinesis Data Firehose.
  14. Izberite ustvarjanje.
    Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.
  15. Ustvarite stvar AWS IoT z imenom Test-Thing in priložite pravilnik, ki ste ga ustvarili.
  16. Prenesite potrdilo, javni ključ, zasebni ključ, potrdilo naprave in korenski CA za AWS IoT Core.
  17. Vsako preneseno datoteko shranite v certificates podimenik, ki ste ga ustvarili prej.
    Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.
  18. Naložite publish.py v iot-test-publish mapa.
  19. Na konzoli AWS IoT Core v podoknu za krmarjenje izberite Nastavitve.
  20. Pod Končna točka po meri, kopirajte končno točko.
    Ta URL končne točke po meri AWS IoT Core je oseben za vaš račun AWS in regijo.
  21. Zamenjaj customEndpointUrl z vašim URL-jem končne točke po meri AWS IoT Core, potrdili z imenom potrdila in Your_S3_Bucket_Name z imenom vedra S3.
    Nato namestite pip in AWS IoT SDK za Python.
  22. Prijavite se v AWS Cloud9 in ustvarite delovni imenik v svojem razvojnem okolju. Na primer: aq-iot-publish.
  23. V novem delovnem imeniku ustvarite podimenik za potrdila. Na primer: certificates.
  24. Namestite AWS IoT SDK za Python v2 tako, da v ukazni vrstici zaženete naslednje.
    pip install awsiotsdk

  25. Če želite preizkusiti podatkovni cevovod, zaženite naslednji ukaz:
    python3 publish.py

Tovor lahko vidite na naslednjem posnetku zaslona.

Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Končno so podatki dostavljeni v določeno vedro S3 v strukturi predpone.

Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Podatki datotek so naslednji:

  • {"TIMESTAMP":"2022-03-20 00:00","LOCATION_ID":"B-101","CO":2.6,"SO2":62,"NO2":57}
  • {"TIMESTAMP":"2022-03-20 00:05","LOCATION_ID":"B-101","CO":3.9,"SO2":60,"NO2":73}

Časovni žigi kažejo, da vsaka datoteka vsebuje podatke za 5-minutne intervale.

Z minimalno kodo smo zdaj zaužili podatke senzorja, ustvarili vhodni tok iz zaužitih podatkov in shranili podatke v vedro S3 na podlagi zahtev za Lookout for Metrics.

V naslednjih razdelkih si podrobneje ogledamo konstrukcije znotraj Lookout for Metrics in kako enostavno je konfigurirati te koncepte s konzolo Lookout for Metrics.

Ustvarite detektor

Detektor je vir Lookout for Metrics, ki spremlja nabor podatkov in identificira anomalije pri vnaprej določeni pogostosti. Detektorji uporabljajo ML za iskanje vzorcev v podatkih in razlikovanje med pričakovanimi variacijami podatkov in legitimnimi anomalijami. Za izboljšanje delovanja detektor sčasoma izve več o vaših podatkih.

V našem primeru uporabe detektor analizira podatke s senzorja vsakih 5 minut.

Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Če želite ustvariti detektor, se pomaknite do konzole Lookout for Metrics in izberite Ustvari detektor. Navedite ime in opis (neobvezno) za detektor, skupaj z intervalom 5 minut.

Vaši podatki so privzeto šifrirani s ključem, ki ga ima AWS in ga upravlja namesto vas. Konfigurirate lahko tudi, če želite uporabiti drug šifrirni ključ od tistega, ki se uporablja privzeto.

Zdaj pa usmerimo ta detektor na podatke, za katere želite, da zažene zaznavanje nepravilnosti.

Ustvarite nabor podatkov

Nabor podatkov pove detektorju, kje naj najde vaše podatke in katere meritve naj analizira za nepravilnosti. Če želite ustvariti nabor podatkov, izvedite naslednje korake:

  1. Na konzoli Amazon Lookout for Metrics se pomaknite do svojega detektorja.
  2. Izberite Dodajte nabor podatkov.
    Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.
  3. za Ime, vnesite ime (npr. air-quality-dataset).
  4. za Vir podatkov, izberite vir podatkov (za to objavo Amazon S3).
    Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.
  5. za Način detektorja, izberite svoj način (za to objavo, Neprekinjeno).

Z Amazon S3 lahko ustvarite detektor v dveh načinih:

    • Backtest – Ta način se uporablja za iskanje anomalij v zgodovinskih podatkih. Potrebuje, da so vsi zapisi združeni v eno datoteko.
    • Neprekinjeno – Ta način se uporablja za odkrivanje nepravilnosti v podatkih v živo. Ta način uporabljamo v našem primeru uporabe, ker želimo zaznati anomalije, ko prejmemo podatke o onesnaževalih zraka od senzorja za spremljanje zraka.
  1. Vnesite pot S3 za živo mapo S3 in vzorec poti.
  2. za Interval vira podatkov, izberite 5 minutni intervali.Če imate zgodovinske podatke, iz katerih se lahko detektor nauči vzorcev, jih lahko zagotovite med to konfiguracijo. Pričakuje se, da bodo podatki v isti obliki, kot jo uporabljate za izvedbo preizkusa za nazaj. Zagotavljanje preteklih podatkov pospeši proces usposabljanja modela ML. Če to ni na voljo, neprekinjeni detektor počaka, da je na voljo dovolj podatkov, preden sklepa.
  3. Za to objavo že imamo zgodovinske podatke, zato izberite Uporabite pretekle podatke.
  4. Vnesite pot S3 historical_data.json.
  5. za format datoteketako, da izberete Vrstice JSON.
    Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Na tej točki Lookout for Metrics dostopa do vira podatkov in preveri, ali lahko podatke razčleni. Če je razčlenjevanje uspešno, se prikaže sporočilo »Preverjanje uspešno« in vas popelje na naslednjo stran, kjer konfigurirate mere, dimenzije in časovne žige.

Konfigurirajte mere, dimenzije in časovne žige

Ukrepi definirajte KPI-je, za katere želite slediti nepravilnostim. Dodate lahko do pet meritev na detektor. Polja, ki se uporabljajo za ustvarjanje KPI-jev iz vaših izvornih podatkov, morajo biti v številski obliki. KPI-je je mogoče trenutno definirati z združevanjem zapisov v časovnem intervalu z uporabo SUM ali AVERAGE.

dimenzije vam omogoča, da svoje podatke razdelite na rezine z definiranjem kategorij ali segmentov. To vam omogoča sledenje nepravilnostim za podmnožico celotnega nabora podatkov, za katere velja določen ukrep.

V našem primeru uporabe dodamo tri mere, ki izračunajo AVG predmetov, videnih v 5-minutnem intervalu, in imajo samo eno dimenzijo, za katero se meri koncentracija onesnaževal.

Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Vsak zapis v naboru podatkov mora imeti časovni žig. Naslednja konfiguracija vam omogoča, da izberete polje, ki predstavlja vrednost časovnega žiga, in tudi obliko časovnega žiga.

Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Na naslednji strani lahko pregledate vse podrobnosti, ki ste jih dodali, nato pa shranite in aktivirate detektor.

Detektor se nato začne učiti podatkov, ki se pretakajo v vir podatkov. Na tej stopnji se status detektorja spremeni v Initializing.

Pomembno je upoštevati minimalno količino podatkov, ki je potrebna, preden lahko Lookout for Metrics začne zaznavati anomalije. Za več informacij o zahtevah in omejitvah glejte Poiščite kvote meritev.

Z minimalno konfiguracijo ste ustvarili svoj detektor, ga usmerili na nabor podatkov in definirali metrike, v katerih želite, da Lookout for Metrics najde anomalije.

Vizualizirajte anomalije

Lookout for Metrics ponuja bogato izkušnjo uporabniškega vmesnika za uporabnike, ki želijo uporabljati Konzola za upravljanje AWS za analizo odkritih nepravilnosti. Omogoča tudi poizvedovanje o anomalijah prek API-jev.

Oglejmo si primer anomalije, odkrite v našem primeru uporabe podatkov o kakovosti zraka. Naslednji posnetek zaslona prikazuje anomalijo, zaznano v koncentraciji CO v zraku ob določenem času in datumu z oceno resnosti 93. Prikazuje tudi odstotek prispevka dimenzije k anomaliji. V tem primeru 100 % prispeva dimenzija ID lokacije B-101.

Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Ustvarite opozorila

Lookout for Metrics vam omogoča pošiljanje opozoril prek različnih kanalov. Konfigurirate lahko prag ocene resnosti anomalije, pri katerem se morajo sprožiti opozorila.

V našem primeru uporabe konfiguriramo opozorila za pošiljanje na Amazon Simple notification Service (Amazon SNS), ki nato pošlje SMS. Naslednji posnetki zaslona prikazujejo podrobnosti konfiguracije.

Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.

Uporabite lahko tudi opozorilo za sprožitev avtomatizacije z uporabo AWS Lambda funkcije za poganjanje operacij, ki jih poganja API, na AWS IoT Core.

zaključek

V tej objavi smo vam pokazali, kako enostavno je uporabljati Lookout for Metrics in Kinesis Data Firehose za odstranitev nediferenciranega težkega dela, ki je vključeno v upravljanje celotnega življenjskega cikla gradnje aplikacij za odkrivanje nepravilnosti, ki jih poganja ML. Ta rešitev vam lahko pomaga pospešiti vašo sposobnost iskanja anomalij v ključnih poslovnih meritvah in vam omogoči, da svoja prizadevanja osredotočite na rast in izboljšanje svojega poslovanja.

Priporočamo vam, da izveste več, tako da obiščete Vodnik za razvijalce Amazon Lookout for Metrics in preizkusite rešitev od konca do konca, ki jo omogočajo te storitve, z naborom podatkov, ki ustreza KPI-jem vašega podjetja.


O avtorju

Zgradite detektor anomalij kakovosti zraka z Amazon Lookout for Metrics PlatoBlockchain Data Intelligence. Navpično iskanje. Ai.Dhiraj Thakur je arhitekt rešitev pri Amazon Web Services. Sodeluje s strankami in partnerji AWS, da bi zagotovil smernice o sprejemanju oblaka v podjetju, migraciji in strategiji. Navdušen je nad tehnologijo in uživa v gradnji in eksperimentiranju na področju analitike in AI/ML.

Časovni žig:

Več od Strojno učenje AWS