# MAP Misconception Detection – Classical Models This repository contains classical machine learning components used for the **Kaggle MAP (Misconception Annotation Project)** competition. We developed two independent pipelines using **TF-IDF vectorization** and **Logistic Regression** for: - **Task 1**: Category classification - **Task 2**: Misconception label prediction --- ## 📁 Included Files ### 🔹 Task 1 (Category Classification) | File | Description | |------|-------------| | `tfidf_task1.pkl` | TF-IDF vectorizer fitted on student answers for Task 1 | | `logreg_task1.pkl` | Trained logistic regression model for predicting `category` labels | --- ### 🔹 Task 2 (Misconception Detection) | File | Description | |------|-------------| | `tfidf_task2.pkl` | TF-IDF vectorizer fitted on student answers for Task 2 | | `logreg_task2.pkl` | Trained logistic regression model for predicting misconception labels | --- ### 🔹 Label Encoders | File | Description | |------|-------------| | `label_encoder_category.pkl` | LabelEncoder used to convert `category` labels into integers | | `label_encoder_miscon.pkl` | LabelEncoder used to convert misconception labels into integers | --- ## 🧠 Usage To use the models in your code: ```python import joblib # Load Task 1 components tfidf1 = joblib.load("tfidf_task1.pkl") clf1 = joblib.load("logreg_task1.pkl") # Load Task 2 components tfidf2 = joblib.load("tfidf_task2.pkl") clf2 = joblib.load("logreg_task2.pkl") # Load label encoders le_category = joblib.load("label_encoder_category.pkl") le_miscon = joblib.load("label_encoder_miscon.pkl") 🛠️ Requirements These models were trained using: - scikit-learn - joblib ```bash pip install scikit-learn joblib ``` 📜 Licens: MIT License. You are free to use, modify, and distribute this model with proper attribution. ✍️ Author: Godspower Maurice (PythonCreate) Created for the MAP Math Misconceptions @ Kaggle NLP competition — 2025.