Zgradite detektor vsiljene e-pošte z uporabo Amazon SageMaker | Spletne storitve Amazon

Zgradite detektor vsiljene e-pošte z uporabo Amazon SageMaker | Spletne storitve Amazon

Neželena pošta, znana tudi kot neželena pošta, je poslana velikemu številu uporabnikov hkrati in pogosto vsebuje goljufije, vsebino z lažnim predstavljanjem ali skrivnostna sporočila. Neželeno e-pošto včasih ročno pošlje človek, najpogosteje pa jih pošlje bot. Primeri vsiljene e-pošte vključujejo lažne oglase, verižna e-poštna sporočila in poskuse lažnega predstavljanja. Obstaja nevarnost, da v vašo mapo »Prejeto« pristane še posebej dobro prikrita neželena pošta, kar je lahko nevarno, če kliknete nanjo. Pomembno je, da sprejmete dodatne varnostne ukrepe za zaščito vaše naprave in občutljivih podatkov.

Ker se tehnologija izboljšuje, postane odkrivanje neželene e-pošte zahtevna naloga zaradi spreminjajoče se narave. Neželena pošta se precej razlikuje od drugih vrst varnostnih groženj. Morda se sprva zdi kot nadležno sporočilo in ne kot Grožnja, vendar ima takojšen učinek. Tudi pošiljatelji neželene pošte pogosto prilagajajo nove tehnike. Organizacije, ki ponujajo e-poštne storitve, želijo čim bolj zmanjšati neželeno pošto, da se izognejo škodi svojim končnim strankam.

V tej objavi prikazujemo, kako preprosto je zgraditi detektor vsiljene e-pošte z uporabo Amazon SageMaker. Vgrajen BlazingText algoritem ponuja optimizirane izvedbe Word2vec in algoritmov za klasifikacijo besedil. Word2vec je uporaben za različne naloge obdelave naravnega jezika (NLP), kot so analiza čustev, prepoznavanje poimenovanih entitet in strojno prevajanje. Klasifikacija besedila je bistvena za aplikacije, kot so spletno iskanje, iskanje informacij, razvrščanje in klasifikacija dokumentov.

Pregled rešitev

Ta objava prikazuje, kako lahko s SageMakerjem nastavite detektor neželene e-pošte in filtrirate neželeno pošto. Oglejmo si, kako običajno deluje detektor neželene pošte, kot je prikazano v naslednjem diagramu.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

E-poštna sporočila se pošiljajo prek detektorja neželene pošte. E-poštno sporočilo se pošlje v mapo z neželeno pošto, če ga detektor neželene pošte zazna kot neželeno pošto. V nasprotnem primeru se pošlje v nabiralnik stranke.

Vodimo vas skozi naslednje korake za nastavitev našega modela detektorja vsiljene pošte:

  1. Prenesite vzorčni nabor podatkov iz skladišča GitHub.
  2. Naložite podatke v an Amazon SageMaker Studio zvezek.
  3. Pripravite podatke za model.
  4. Usposobite, uvedite in preizkusite model.

Predpogoji

Preden se poglobite v ta primer uporabe, izpolnite naslednje predpogoje:

  1. Nastavite AWS račun.
  2. Nastavite a Domena SageMaker.
  3. Ustvari Preprosta storitev shranjevanja Amazon (Amazon S3) vedro. Za navodila glejte Ustvarite svoje prvo vedro S3.

Prenesite nabor podatkov

Prenesite email_dataset.csv iz GitHub in naložite datoteko v vedro S3.

Algoritem BlazingText pričakuje eno vnaprej obdelano besedilno datoteko z žetoni, ločenimi s presledki. Vsaka vrstica v datoteki mora vsebovati en stavek. Če se morate učiti na več besedilnih datotekah, jih združite v eno datoteko in naložite datoteko v ustrezen kanal.

Naložite podatke v SageMaker Studio

Za izvedbo nalaganja podatkov izvedite naslednje korake:

  1. Prenos spam_detector.ipynb datoteka od GitHub in naložite datoteko v SageMaker Studio.
  2. V zvezku Studio odprite spam_detector.ipynb zvezek.
  3. Če ste pozvani, da izberete jedro, izberite jedro Python 3 (Data Science 3.0) in izberite Izberite. Če ni, preverite, ali je bilo samodejno izbrano pravo jedro.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

  1. Uvozite zahtevano knjižnico Python in nastavite vloge in vedra S3. Določite vedro S3 in predpono, kamor ste naložili email_dataset.csv.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

  1. Zaženite korak nalaganja podatkov v zvezku.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

  1. Preverite, ali je nabor podatkov uravnotežen ali ne temelji na oznakah kategorije.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Vidimo lahko, da je naš nabor podatkov uravnotežen.

Pripravite podatke

Algoritem BlazingText pričakuje podatke v naslednji obliki:

__label__<label> "<features>"

Tukaj je primer:

__label__0 “This is HAM"
__label__1 "This is SPAM"

Preveri Format podatkov za usposabljanje in validacijo za algoritem BlazingText.

Zdaj izvajate korak priprave podatkov v zvezku.

  1. Najprej morate stolpec Kategorija pretvoriti v celo število. Naslednja celica nadomesti vrednost SPAM z 1 in vrednost HAM z 0.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

  1. Naslednja celica doda predpono __label__ na vsako vrednost kategorije in tokenizira stolpec Sporočilo.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

  1. Naslednji korak je razdelitev nabora podatkov na nabore podatkov o usposabljanju in preverjanju ter nalaganje datotek v vedro S3.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Trenirajte model

Če želite usposobiti model, dokončajte naslednje korake v zvezku:

  1. Nastavite ocenjevalnik BlazingText in ustvarite primerek ocenjevalnika, ki posreduje sliko vsebnika.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

  1. Nastavite hiperparameter načina učenja na nadzorovano.

BlazingText ima tako nenadzorovan kot nadzorovan način učenja. Naš primer uporabe je klasifikacija besedil, ki je nadzorovano učenje.

  1. Ustvarite vlakovne in validacijske podatkovne kanale.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

  1. Začnite trenirati model.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

  1. Pridobite natančnost nabora podatkov o vlaku in validaciji.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Namestite model

V tem koraku uvedemo usposobljeni model kot končno točko. Izberite želeni primerek

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Preizkusite model

Vzemimo primer treh e-poštnih sporočil, za katera želimo pridobiti napovedi:

  • Kliknite spodnjo povezavo, vnesite svoje podatke in osvojite to nagrado
  • Najboljša poletna ponudba tukaj
  • Se vidimo v pisarni v petek.

Tokenizirajte e-poštno sporočilo in določite obremenitev, ki bo uporabljena pri klicu API-ja REST.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Zdaj lahko predvidimo klasifikacijo e-pošte za vsako e-pošto. Pokličite metodo napovedi klasifikatorja besedila, tako da primerke stavkov s tokeniziranimi stavki (tovor) posredujete v podatkovni argument.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Čiščenje

Končno lahko izbrišete končno točko, da se izognete morebitnim nepričakovanim stroškom.

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Prav tako izbrišite podatkovna datoteka iz vedra S3.

zaključek

V tej objavi smo vas vodili skozi korake za ustvarjanje detektorja vsiljene e-pošte z uporabo SageMaker BlazingText algoritem. Z algoritmom BlazingText lahko razširite na velike nabore podatkov. BlazingText se uporablja za analizo besedil in težave s klasifikacijo besedil ter ima tako nenadzorovan kot nadzorovan način učenja. Algoritem lahko uporabite za primere uporabe, kot sta analiza razpoloženja strank in klasifikacija besedila.

Če želite izvedeti več o algoritmu BlazingText, si oglejte BlazingText algoritem.


O Author

Build an email spam detector using Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. 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