Розмір шрифта:
АВТОМАТИЗОВАНЕ ВИЯВЛЕННЯ СПАМ-ПОВІДОМЛЕНЬ У ТЕКСТОВОМУ НАБОРІ ДАНИХ KAGGLE З ВИКОРИСТАННЯМ НАЇВНОГО КЛАСИФІКАТОРА БАЄСА
Остання редакція: 2026-05-04
Анотація
У роботі досліджено застосування наївного класифікатора Баєса для автоматизованої класифікації текстових
повідомлень на два класи: звичайні повідомлення та спам. Для експериментального дослідження використано
текстовий набір даних з Kaggle, що містить 83 448 повідомлень із мітками класів. Виконано завантаження даних,
створення DataFrame, аналіз структури набору, перевірку пропущених значень, візуалізацію розподілу класів та
попередню обробку тексту засобами бібліотеки NLTK. Реалізовано власну версію алгоритму Naive Bayes із
використанням згладжування Лапласа. Якість класифікації оцінено за метриками Accuracy, Precision, Recall та
F1-score. Отримані результати показали, що наївний класифікатор Баєса забезпечує високу якість розпізнавання
спам-повідомлень: Accuracy = 0,9699, Precision = 0,9906, Recall = 0,9517, F1-score = 0,9708.
AUTOMATED DETECTION OF SPAM MESSAGES IN A KAGGLE TEXT DATASET USING THE NAIVE BAYES CLASSIFIER
The paper investigates the application of the Naive Bayes classifier for automated text message classification into two
classes: regular messages and spam. A text dataset from Kaggle containing 83,448 labeled messages was used for the
experimental study. Data loading, DataFrame creation, dataset structure analysis, missing value checking, class
distribution visualization, and text preprocessing using the NLTK library were performed. A custom implementation of
the Naive Bayes algorithm with Laplace smoothing was developed. Classification quality was evaluated using Accuracy,
Precision, Recall, and F1-score metrics. The obtained results showed that the Naive Bayes classifier provides high-quality
spam message detection: Accuracy = 0.9699, Precision = 0.9906, Recall = 0.9517, and F1-score = 0.9708.
повідомлень на два класи: звичайні повідомлення та спам. Для експериментального дослідження використано
текстовий набір даних з Kaggle, що містить 83 448 повідомлень із мітками класів. Виконано завантаження даних,
створення DataFrame, аналіз структури набору, перевірку пропущених значень, візуалізацію розподілу класів та
попередню обробку тексту засобами бібліотеки NLTK. Реалізовано власну версію алгоритму Naive Bayes із
використанням згладжування Лапласа. Якість класифікації оцінено за метриками Accuracy, Precision, Recall та
F1-score. Отримані результати показали, що наївний класифікатор Баєса забезпечує високу якість розпізнавання
спам-повідомлень: Accuracy = 0,9699, Precision = 0,9906, Recall = 0,9517, F1-score = 0,9708.
AUTOMATED DETECTION OF SPAM MESSAGES IN A KAGGLE TEXT DATASET USING THE NAIVE BAYES CLASSIFIER
The paper investigates the application of the Naive Bayes classifier for automated text message classification into two
classes: regular messages and spam. A text dataset from Kaggle containing 83,448 labeled messages was used for the
experimental study. Data loading, DataFrame creation, dataset structure analysis, missing value checking, class
distribution visualization, and text preprocessing using the NLTK library were performed. A custom implementation of
the Naive Bayes algorithm with Laplace smoothing was developed. Classification quality was evaluated using Accuracy,
Precision, Recall, and F1-score metrics. The obtained results showed that the Naive Bayes classifier provides high-quality
spam message detection: Accuracy = 0.9699, Precision = 0.9906, Recall = 0.9517, and F1-score = 0.9708.
Ключові слова
наївний класифікатор Баєса; класифікація тексту; спам; машинне навчання; NLTK; Python; аналіз даних
Посилання
Email Spam Classification Dataset. Kaggle [Електронний ресурс]. – Режим доступу:
https://www.kaggle.com/datasets/purusinghvi/email-spam-classification-dataset
Naive Bayes Classifier. Scikit-learn Documentation [Електронний ресурс]. – Режим доступу: https://scikit-learn.org
NLTK Documentation [Електронний ресурс]. – Режим доступу: https://www.nltk.org
Pandas Documentation [Електронний ресурс]. – Режим доступу: https://pandas.pydata.org
Matplotlib Documentation [Електронний ресурс]. – Режим доступу: https://matplotlib.org
Seaborn Documentation [Електронний ресурс]. – Режим доступу: https://seaborn.pydata.org
Python Documentation [Електронний ресурс]. – Режим доступу: https://docs.python.org
https://www.kaggle.com/datasets/purusinghvi/email-spam-classification-dataset
Naive Bayes Classifier. Scikit-learn Documentation [Електронний ресурс]. – Режим доступу: https://scikit-learn.org
NLTK Documentation [Електронний ресурс]. – Режим доступу: https://www.nltk.org
Pandas Documentation [Електронний ресурс]. – Режим доступу: https://pandas.pydata.org
Matplotlib Documentation [Електронний ресурс]. – Режим доступу: https://matplotlib.org
Seaborn Documentation [Електронний ресурс]. – Режим доступу: https://seaborn.pydata.org
Python Documentation [Електронний ресурс]. – Режим доступу: https://docs.python.org
Повний текст:
PDF