SMS Spam Classification dengan NLP

kadek febry ardika

Sosial Media


0 orang menyukai ini
Suka

Summary

Dalam proyek ini, saya membangun aplikasi SMS Spam Classification yang dapat mengidentifikasi apakah suatu pesan SMS termasuk spam atau ham (bukan spam). Aplikasi ini menggunakan model Natural Language Processing (NLP) dan teknik Machine Learning (ML) untuk melakukan klasifikasi teks. Proyek ini terdiri dari dua bagian utama: Backend yang dibuat menggunakan Flask, dan Frontend yang dibangun dengan React untuk interaksi pengguna

Description

Natural Language Processing

NLP (Natural Language Processing) adalah cabang dari Artificial Intelligence (AI) yang berfokus pada interaksi antara komputer dan bahasa manusia (natural language). NLP mencakup berbagai teknik dan algoritma yang memungkinkan mesin untuk memahami, menganalisis, menghasilkan, dan merespons bahasa alami yang digunakan manusia dalam komunikasi sehari-hari.

Tujuan NLP

Tujuan utama NLP adalah untuk memungkinkan komputer memahami dan memproses bahasa manusia dalam bentuk teks atau suara. Hal ini melibatkan berbagai tantangan, seperti:

  • Pemahaman makna dari kalimat atau kata.
  • Analisis struktur kalimat yang kompleks.
  • Penerjemahan bahasa atau konversi satu bahasa ke bahasa lain (misalnya, Google Translate).
  • Generasi bahasa seperti yang dilakukan oleh chatbots atau asisten virtual.

Proses dalam NLP

NLP melibatkan berbagai langkah yang berfungsi untuk mengubah teks atau suara mentah menjadi informasi yang bermakna. Berikut adalah beberapa langkah dasar dalam NLP:

Tokenisasi:

  • Memecah teks menjadi kata-kata atau kalimat-kalimat yang lebih kecil, yang disebut token.
  • Contoh: "Saya suka belajar NLP" -> ["Saya", "suka", "belajar", "NLP"]

Pembersihan Teks:

  • Menghilangkan noise dari teks seperti karakter khusus, angka, dan stop words (kata umum yang tidak memiliki banyak arti seperti "dan", "atau", "adalah").

Stemming/Lemmatization:

  • Mengurangi kata ke bentuk dasarnya. Misalnya, kata "belajar", "belajarannya", dan "belajarlah" akan digabung menjadi bentuk dasar "belajar".

POS Tagging (Part of Speech):

  • Menandai setiap kata dengan jenis kata tertentu (misalnya, kata benda, kata kerja, kata sifat).

Named Entity Recognition (NER):

  • Mengidentifikasi dan mengklasifikasikan entitas tertentu dalam teks, seperti nama orang, tempat, tanggal, dll.

Parsing:

  • Menganalisis struktur gramatikal kalimat untuk memahami hubungan antar kata.

Sentiment Analysis:

  • Menilai perasaan atau opini dalam teks, apakah positif, negatif, atau netral. Teknik ini banyak digunakan dalam analisis media sosial dan ulasan produk.

Machine Translation:

  • Menerjemahkan teks dari satu bahasa ke bahasa lain, seperti yang dilakukan oleh Google Translate.

Text Classification:

  • Mengklasifikasikan teks ke dalam kategori tertentu, misalnya, klasifikasi email menjadi spam atau bukan spam.

Speech Recognition:

  • Mengubah suara manusia menjadi teks yang dapat dipahami oleh komputer.

Metode dan Algoritma dalam NLP

NLP menggunakan berbagai teknik dalam pembelajaran mesin dan deep learning untuk menangani masalah yang lebih kompleks:

  • Bag of Words (BoW): Representasi teks berdasarkan frekuensi kata-kata yang muncul.
  • TF-IDF (Term Frequency-Inverse Document Frequency): Penilaian pentingnya kata dalam dokumen tertentu dibandingkan dengan seluruh koleksi dokumen.
  • Word Embeddings (misalnya, Word2Vec, GloVe): Representasi kata dalam bentuk vektor numerik untuk menangkap hubungan semantik antar kata.
  • Recurrent Neural Networks (RNNs) dan Long Short Term Memory (LSTM): Digunakan dalam tugas-tugas seperti penerjemahan bahasa atau analisis teks sekuensial.
  • Transformer Models (misalnya, BERT, GPT): Model berbasis attention yang digunakan untuk berbagai tugas NLP seperti analisis sentimen, penerjemahan, dan teks generatif.

Disini saya akan membuat sebuah aplikasi SMS Spam Classification dengan menggunakan model NLP. Diaman aplikasi SMS Spam Classification yang dapat mengidentifikasi apakah suatu pesan SMS termasuk spam atau ham (bukan spam). Proyek ini terdiri dari dua bagian utama: Backend yang dibuat menggunakan Flask, dan Frontend yang dibangun dengan React untuk interaksi pengguna.

Datasets yang saya gunakan dalam melaukan penelitian ini adalah :

https://www.kaggle.com/datasets/mariumfaheem666/spam-sms-classification-using-nlp/data 

link pembuatan model NLP,

https://colab.research.google.com/drive/1gsasJg5xk0Wkw7Q2BSQ9R8hEu76N1NIy?usp=sharing 

 

 

 

 

Informasi Course Terkait
  Kategori: Natural Language Processing
  Course: Data Science