ML News Classification System for Afaan Oromoo. This project includes a powerful Afaan Oromoo text preprocessing pipeline, offering custom tools for enhancing NLP tasks beyond classification.
# AFAAN OROMOO NEWS CLASSIFICATION SYSTEM
Live Preview: Click here
## Overview
AFAAN OROMOO NEWS CLASSIFICATION SYSTEM is a machine learning project designed to classify news articles written in Afaan Oromoo, the Oromo language. The primary goal of this project is to leverage natural language processing (NLP) techniques to automatically categorize news content into various predefined categories.
### Key Features
- **Language Support:** Afaan Oromoo is a widely spoken language, and this project aims to enhance accessibility to news articles in this language.
- **Multiclass Classification:** The system is capable of classifying news articles into multiple categories, providing a comprehensive understanding of the content.
- **Rule-Based Stemmer:** The project incorporates a rule-based stemmer based on the hybrid approach described in the paper "Designing a Stemmer for Afaan Oromo Text: A Hybrid Approach" by Debela Tesfaye.
### Purpose
The motivation behind this project is to contribute to the enhancement of information accessibility for Afaan Oromoo speakers. By automating the categorization of news articles, individuals can easily navigate through relevant content based on their interests.
### Target Audience
This project is intended for individuals interested in Afaan Oromoo language and those seeking to implement or understand machine learning techniques for natural language processing.
## Project Structure
The project is organized into distinct directories, each serving a specific purpose.
📦 afaan-oromoo-news-classification-system
┣ 📂api
┃ ┣ 📜app.py
┃ ┣ 📜model_loader.py
┣ 📂data
┣ 📂docs
┃ ┣ 📜model_documentation.pdf
┣ 📂logs
┣ 📂models
┃ ┣ 📂trained_models
┃ ┃ ┣ 📜label_encoder.joblib
┃ ┃ ┣ 📜model_20231116_accuracy_0.9263.h5
┃ ┃ ┗ 📜tokenizer.joblib
┃ ┣ 📜train_model.ipynb
┣ 📂preprocessing
┃ ┣ 📜preprocessing_pipeline.py
┃ ┣ 📜special_character_handler.py
┃ ┣ 📜stemmer.py
┃ ┣ 📜stopword_remover.py
┃ …