Deep Learning for Handwritten Digit Recognition (CNN + PyTorch)

تفاصيل العمل

قمتُ بتطوير شبكة عصبية التفافية (CNN) باستخدام مكتبة PyTorch لتصنيف صور الأرقام المكتوبة يدويًا من قاعدة بيانات MNIST.

خطوات التنفيذ:

تحميل البيانات:

استخدمت مكتبة torchvision.datasets لتحميل بيانات MNIST.

البيانات اتقسمت إلى train set و test set مع تحويل الصور إلى Tensor.

بناء نموذج CNN:

النموذج يتكون من:

طبقتين Convolution + MaxPooling.

ثلاث طبقات Fully Connected.

استخدمت دالة التفعيل ReLU.

الطبقة الأخيرة بتخرج 10 نودز (تمثل الأرقام من 0 لـ 9).

التدريب:

استخدمت CrossEntropyLoss كـ loss function.

الاعتماد على SGD optimizer مع learning rate = 0.001 و momentum = 0.9.

النموذج تم تدريبه على 3 epochs.

الاختبار والتقييم:

بعد التدريب، اختبرت النموذج على بيانات الاختبار.

جمعت التنبؤات وقارنتها بالقيم الحقيقية.

استخدمت مكتبة scikit-learn لحساب مؤشرات الأداء:

Accuracy

Recall

F1-score

Precision

النتائج:

النموذج أظهر دقة عالية في تصنيف الأرقام.

تم حساب مؤشرات الأداء وعرضها بشكل منظم.

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
عدد المشاهدات
5
تاريخ الإضافة
تاريخ الإنجاز
المهارات