- This is a very basic SMS spam recognition ANN written in Python for learning purposes. It uses 3 dense layers (input, hidden, output), Sigmoid activation function, Glorot weight initialization, Stochastic Gradient Descend (SGD) optimizer, and Mean Squared Error (MSE) loss function. Check out this page for complete mathematics of this network.
- Word embeddings are not trainable; used pre-trained GloVe embeddings (100-dimensional version).
- 2 model implementations: Tensorflow and custom. The goal of the custom implementation was to make it as readable as possible. There's no optimization, and the network is VERY slow.
- A dataset with 5k messages (2.5k ham and 2.5k spam) included. The dataset is created with generative AI and modified manually (you may still find some weird messages).
- ~97% success rate with the included dataset (pre-trained custom model attached).
- A video explaining math behind this project
This repository was archived by the owner on Mar 21, 2026. It is now read-only.
maksyche/spam-detector
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|