Bangun pendeteksi spam email menggunakan Amazon SageMaker | Layanan Web Amazon

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Layanan Web Amazon

Email spam, juga dikenal sebagai email sampah, dikirim ke sejumlah besar pengguna sekaligus dan sering kali berisi penipuan, konten phishing, atau pesan rahasia. Email spam terkadang dikirim secara manual oleh manusia, namun paling sering dikirim menggunakan bot. Contoh email spam mencakup iklan palsu, email berantai, dan upaya peniruan identitas. Ada risiko email spam yang disamarkan dengan baik dapat masuk ke kotak masuk Anda, yang bisa berbahaya jika diklik. Penting untuk mengambil tindakan pencegahan ekstra untuk melindungi perangkat dan informasi sensitif Anda.

Seiring dengan kemajuan teknologi, pendeteksian email spam menjadi tugas yang menantang karena sifatnya yang berubah. Spam sangat berbeda dari jenis ancaman keamanan lainnya. Pada awalnya mungkin tampak seperti pesan yang mengganggu dan bukan a ancaman, tapi dampaknya langsung terasa. Spammer juga sering mengadaptasi teknik baru. Organisasi yang menyediakan layanan email ingin meminimalkan spam sebanyak mungkin untuk menghindari kerugian pada pelanggan akhir mereka.

Dalam postingan ini, kami menunjukkan betapa mudahnya membuat pendeteksi spam email menggunakan Amazon SageMaker. Built-in Algoritme BlazingText menawarkan implementasi yang dioptimalkan dari algoritma Word2vec dan klasifikasi teks. Word2vec berguna untuk berbagai tugas pemrosesan bahasa alami (NLP), seperti analisis sentimen, pengenalan entitas bernama, dan terjemahan mesin. Klasifikasi teks sangat penting untuk aplikasi seperti pencarian web, pengambilan informasi, pemeringkatan, dan klasifikasi dokumen.

Ikhtisar solusi

Posting ini menunjukkan bagaimana Anda dapat mengatur pendeteksi spam email dan memfilter email spam menggunakan SageMaker. Mari kita lihat cara kerja pendeteksi spam, seperti yang ditunjukkan pada diagram berikut.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

Email dikirim melalui pendeteksi spam. Email dikirim ke folder spam jika pendeteksi spam mendeteksinya sebagai spam. Jika tidak, itu akan dikirim ke kotak masuk pelanggan.

Kami memandu Anda melalui langkah-langkah berikut untuk menyiapkan model pendeteksi spam kami:

  1. Unduh contoh kumpulan data dari repo GitHub.
  2. Muat data dalam sebuah Studio Amazon SageMaker buku catatan.
  3. Siapkan data untuk model.
  4. Latih, terapkan, dan uji model.

Prasyarat

Sebelum mendalami kasus penggunaan ini, selesaikan prasyarat berikut:

  1. Siapkan Akun AWS.
  2. Mengatur Domain SageMaker.
  3. Buat Layanan Penyimpanan Sederhana Amazon (Amazon S3) ember. Untuk instruksi, lihat Buat ember S3 pertama Anda.

Unduh kumpulan datanya

Unduh email_dataset.csv dari GitHub dan unggah file ke bucket S3.

Algoritme BlazingText mengharapkan satu file teks yang telah diproses sebelumnya dengan token yang dipisahkan spasi. Setiap baris dalam file harus berisi satu kalimat. Jika Anda perlu melatih beberapa file teks, gabungkan file tersebut menjadi satu file dan unggah file tersebut di saluran masing-masing.

Muat data di SageMaker Studio

Untuk melakukan pemuatan data, lakukan langkah-langkah berikut:

  1. Download spam_detector.ipynb file dari GitHub dan unggah file di SageMaker Studio.
  2. Di buku catatan Studio Anda, buka spam_detector.ipynb buku catatan.
  3. Jika Anda diminta untuk memilih Kernel, pilih kernel Python 3 (Data Science 3.0) dan pilih Pilih. Jika tidak, verifikasi bahwa kernel yang tepat telah dipilih secara otomatis.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

  1. Impor pustaka Python yang diperlukan dan atur peran serta bucket S3. Tentukan bucket S3 dan awalan tempat Anda mengunggah email_dataset.csv.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

  1. Jalankan langkah pemuatan data di buku catatan.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

  1. Periksa apakah dataset seimbang atau tidak berdasarkan label Kategori.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

Kami dapat melihat dataset kami seimbang.

Siapkan datanya

Algoritme BlazingText mengharapkan data dalam format berikut:

__label__<label> "<features>"

Berikut ini adalah contohnya:

__label__0 โ€œThis is HAM"
__label__1 "This is SPAM"

Memeriksa Format Data Pelatihan dan Validasi untuk Algoritma BlazingText.

Anda sekarang menjalankan langkah persiapan data di buku catatan.

  1. Pertama, Anda perlu mengonversi kolom Kategori menjadi bilangan bulat. Sel berikut menggantikan nilai SPAM dengan 1 dan nilai HAM dengan 0.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

  1. Sel berikutnya menambahkan awalan __label__ ke setiap nilai Kategori dan memberi token pada kolom Pesan.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

  1. Langkah selanjutnya adalah membagi kumpulan data menjadi kumpulan data pelatihan dan validasi serta mengunggah file ke bucket S3.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

Latih modelnya

Untuk melatih model, selesaikan langkah-langkah berikut di buku catatan:

  1. Siapkan estimator BlazingText dan buat instance estimator yang meneruskan gambar container.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

  1. Atur hyperparameter mode pembelajaran ke diawasi.

BlazingText memiliki mode pembelajaran tanpa pengawasan dan diawasi. Kasus penggunaan kami adalah klasifikasi teks, yang merupakan pembelajaran yang diawasi.

  1. Buat saluran data pelatihan dan validasi.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

  1. Mulai latih modelnya.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

  1. Dapatkan keakuratan dataset pelatihan dan validasi.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

Menyebarkan model

Pada langkah ini, kami menerapkan model terlatih sebagai titik akhir. Pilih instans pilihan Anda

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

Uji modelnya

Mari kita berikan contoh tiga pesan email yang ingin kita prediksi:

  • Klik tautan di bawah, berikan detail Anda dan menangkan penghargaan ini
  • Kesepakatan musim panas terbaik di sini
  • Sampai jumpa di kantor pada hari Jumat.

Tokenisasikan pesan email dan tentukan payload yang akan digunakan saat memanggil REST API.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

Sekarang kita dapat memprediksi klasifikasi email untuk setiap email. Panggil metode prediksi pengklasifikasi teks, dengan meneruskan contoh kalimat yang diberi token (payload) ke dalam argumen data.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

Membersihkan

Terakhir, Anda dapat menghapus titik akhir untuk menghindari biaya tak terduga.

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

Hapus juga file data dari ember S3.

Kesimpulan

Dalam postingan ini, kami memandu Anda melalui langkah-langkah membuat pendeteksi spam email menggunakan Algoritma SageMaker BlazingText. Dengan algoritma BlazingText, Anda dapat menskalakan ke kumpulan data yang besar. BlazingText digunakan untuk analisis tekstual dan masalah klasifikasi teks, serta memiliki mode pembelajaran tanpa pengawasan dan pengawasan. Anda dapat menggunakan algoritme untuk kasus penggunaan seperti analisis sentimen pelanggan dan klasifikasi teks.

Untuk mempelajari lebih lanjut tentang algoritma BlazingText, lihat Algoritme BlazingText.


tentang Penulis

Bangun pendeteksi spam email menggunakan Amazon SageMaker | Kecerdasan Data PlatoBlockchain Layanan Web Amazon. Pencarian Vertikal. Ai.

Dhiraj Thakur adalah Arsitek Solusi dengan Amazon Web Services. Dia bekerja dengan pelanggan dan mitra AWS untuk memberikan panduan tentang adopsi cloud perusahaan, migrasi, dan strategi. Dia sangat menyukai teknologi dan suka membangun serta bereksperimen dalam ruang analitik dan AI / ML.

Stempel Waktu:

Lebih dari Pembelajaran Mesin AWS