مشروع Image Classification using Logistic Regression and K-Means يعتمد على تصنيف الصور باستخدام خوارزميتين مختلفتين: واحدة Supervised Learning (Logistic Regression) والأخرى Unsupervised Learning (K-Means)، وذلك على جزء من مجموعة بيانات Fashion-MNIST المكونة من 5 فئات (T-shirt, Trouser, Pullover, Dress, Coat).
يهدف المشروع إلى مقارنة أداء النموذجين في مهمة تصنيف الصور، مع تطبيق خط معالجة كامل للبيانات (End-to-End Pipeline) يشمل استخراج الخصائص، المعالجة المسبقة، تقليل الأبعاد، وتقييم الأداء.
مراحل العمل:
Data Handling
تحميل مجموعة بيانات Fashion-MNIST باستخدام OpenML
استكشاف البيانات والتحقق من عدم وجود قيم مفقودة أو تكرارات
تحليل توزيع الفئات والتأكد من توازن البيانات
اختيار 5 فئات فقط لتقليل التعقيد الحسابي
Feature Extraction
استخدام Histogram of Oriented Gradients (HOG) لاستخراج الخصائص من الصور
تحويل كل صورة إلى متجه خصائص يمثل البنية والشكل بدلًا من البكسلات الخام
Data Preprocessing
تقسيم البيانات إلى تدريب واختبار باستخدام Stratified Split
تطبيق Standard Scaling لتوحيد نطاق القيم
استخدام Principal Component Analysis (PCA) لتقليل الأبعاد مع الاحتفاظ بـ 95% من المعلومات
Model Building
Logistic Regression (Supervised Learning)
استخدام GridSearchCV لاختيار أفضل Hyperparameters
تدريب النموذج باستخدام Cross-Validation
تقييم الأداء باستخدام Accuracy, Confusion Matrix, Classification Report, ROC-AUC
K-Means Clustering (Unsupervised Learning)
تطبيق K-Means بعدد clusters = 5
تحويل النتائج إلى تصنيفات باستخدام Majority Voting
تقييم النموذج باستخدام Accuracy, Purity Score, Silhouette Score, Confusion Matrix
استخدام Elbow Method لاختيار عدد clusters المناسب