"Akaun anda telah disekat, sila klik linkβ¦" β Malaysians lose millions of ringgit to message scams yearly, and scam text is uniquely local: Malay, English, and rojak mixed with urgency tricks. Detecting it is a genuinely useful, genuinely researchable problem.
A web app (or Telegram bot): paste any suspicious SMS/WhatsApp message β scam risk score, highlighted red-flag phrases, and safety advice. Instant, shareable, demo-friendly.
Three generations of text classification go head-to-head on local scam messages: classical ML, fine-tuned transformer, and zero-shot LLM β accuracy vs cost vs latency.
Pernyataan masalah: Scam messages targeting Malaysians use code-switched Malay/English and local context (bank names, JPJ, LHDN, parcel delivery); English-centric spam filters miss them, and elderly users can't judge authenticity themselves.
| Experiment | Setup | What it proves |
|---|---|---|
| Eksperimen 1 Classical ML |
TF-IDF + character n-grams β SVM vs Random Forest vs Logistic Regression, 80/20 split. | The cheap, fast, offline-capable baseline every comparison needs. |
| Eksperimen 2 Fine-tuned transformer |
mBERT / MalayBERT fine-tuned on the same split. | How much contextual understanding improves detection of subtle scam phrasing. |
| Eksperimen 3 Zero-shot LLM |
An LLM API classifying the same test set with a fixed prompt (no training). | The 2026 question: does prompting beat training? Includes cost + latency trade-off table. |
Collect 1,000β2,000 messages: scam samples from public scam-alert channels (PDRM/MCMC awareness posts, scam-report communities) + legitimate messages (promos, bank alerts, personal texts β anonymized). Label with a guideline; keep a balanced legitimate set including tricky look-alikes (real bank notifications) so false positives are meaningfully tested.
| Metric | Why it matters here |
|---|---|
| Recall on scam class | A missed scam is the costly error β this is the headline safety number. |
| Precision / false-positive rate | Flagging real bank alerts as scams destroys user trust β measured on look-alike messages. |
| Macro F1 | Balanced single number for the 3-way model comparison. |
| Latency & cost per 1,000 messages | Classical β free, transformer needs a GPU, LLM bills per token β the deployment reality table. |
| Chapter | What goes in it (from this package) |
|---|---|
| Bab 1 β Pengenalan | Scam statistics in Malaysia, problem statement, objectives, scope (SMS/WhatsApp text only, 3 model families), Gantt chart. |
| Bab 2 β Sorotan Kesusasteraan | Comparison tables: spam/phishing detection studies, code-switched NLP, LLM-as-classifier papers (2023β2026). |
| Bab 3 β Metodologi | Data collection + ethics/anonymization note, labeling guideline, preprocessing, system architecture (input β classifier β explanation UI). |
| Bab 4 β Pembangunan & Pengujian | The 3 experiments, metric tables, false-positive analysis on look-alikes, cost/latency table, app screenshots. |
| Bab 5 β Dapatan Kajian | Recommended pipeline (e.g., classical filter + LLM confirmation), limitations (dataset recency, voice scams excluded), future work (image scam detection). |
Pythonscikit-learnHugging Face LLM APIFlask / Telegram Bot API
β Back to all FYP ideas Β· Assignment Helper