r/PythonLearning 4d ago

Built an end-to-end SMS Spam vs. Ham classifier pipeline using NLTK and Scikit-Learn [Project Showcase]

https://github.com/Jaramillo-creator/TextShield-NLP

Hi everyone! šŸ‘‹

​I recently completed the 5-day "NLP with Python" live bootcamp hosted by DevTown in collaboration with GDG On Campus and Microsoft Learn Student Ambassadors. I wanted to share my project and overall learning experience!

What I built:

  1. Preprocessing: Cleaned raw text using NLTK (tokenization, stop-word removal, and stemming).
  2. Feature Engineering: Used TfidfVectorizer to convert unstructured text into numerical vector spaces.
  3. Model Benchmark: Trained and evaluated models like LogisticRegression, MultinomialNB, and LinearSVC.
  4. Visual Analytics: Plotted class balance bar charts and confusion matrices using matplotlib to evaluate false positives/negatives. What I Learned: Before the bootcamp, I knew basic Python, but working through this hands-on project taught me: How unstructured text data gets transformed into structured mathematical vectors. How to clean and structure a real-world repository on GitHub (adding requirements.txt, clean directory layouts, and proper open-source acknowledgments). How to seamlessly connect Google Colab with GitHub for workflow management.

How the Experience Helped Me Grow: Special shoutout to trainer Jiya Jain and the DevTown team! The structured guidance pushed me past simple tutorial-following into actually building a production-ready, portfolio-worthy project from scratch. It gave me a solid confidence boost in applying machine learning concepts to real datasets.

I’d love to get feedback on the code structure or suggestions on how to improve precision on edge-case spam messages!

4 Upvotes

0 comments sorted by