اذهب إلى المحتوى

السؤال

نشر

السلام عليكم

هو كل ما قيمه الaccuracy تزيز كده يكون النموذج افضل ؟

فيه الكود ده

loss, accuracy = deep_hit_model.evaluate(x_test_scaled, y_target_test)
print(f"Test Accuracy: {accuracy}")

ودي النتيجه 

135/135 ━━━━━━━━━━━━━━━━━━━━ 0s 1ms/step - accuracy: 0.6258 - loss: 0.6506
Test Accuracy: 0.6291666626930237

 

Recommended Posts

  • 0
نشر

وعليكم السلام ورحمة الله وبركاته.

ليس في أغلب الأمر أن ارتفاع قيمة الدقة (accuracy) يعني أن النموذج أفضل و يتنبأ بشكل صحيح بنسبة أكبر.

فمثلا تخيل أن في بيانات الأختبار أكثر من 80% من البيانات تعطي نتيجة متشابهة . فلو مثلا نختبر إذا الكان الشخص مريض أم لا . فإذا كانت بيانات الإختبار أكثر من 80% منها الشخص مريض وقام النموذج بالتبنؤ بأن جميع الأشخاص مرضي فهنا الدقة ستظهر لك 80% ولكن هنا النموذج ليس دقيقا بالمرة فالنموذج يخرج جيمع التنبؤات بأن الشخص مريض وتصادف أن بيانات الإختبار الشخص المريض فيها أكثر . فمثلا لو أعطينا النموذج بيانات لإختبارها وكانت تلك البيانات جميعها بهاض الشخص غير مريض . فهنا النموذج دقته ستكون 0% . لأنه تنبأ بأن جميع الأشخاص مرضى وهم عكس ذلك.

لذلك ال accuracy لا تعطيك دقة النموذج بشكل أفضل إذا كانت بيانات الإختبار غير موزعة بشكل صحيح . لذلك يفضل إستخدام مقايس أخرى بالإضافة إلى ال accuracy مثل Precision و Recall و  F1-score .

فمثلا لو كان لديك نموذج يعطي دقة 90% ولكن ال Recall  منخفض جدا فهنا هذا النموذج قد يكون غير مفيد في تطبيقات مثل الكشف عن الأمراض النادرة.

وبالنسبة للنتيجة التي لديك :

  • الدقة = 0.6258 ( 62.9%)
  • الخسارة = 0.6506

فهنا الدقة ليست عالية لديك مما يخبرك أن النموذج يمكن تحسينه من خلال لضبط ال hyperparameters أو استخدام بنية مختلفة.ولاخظ أن ال loss (الخسارة)،لديك هي 0.6506 في هذه الحالةوهي منخفضة و هذا يشير إلى أن النموذج يتعلم بشكل صحيح وهذا جيد.

إذا تلخيصا لما سبق لا تعتمد فقط على ال accuracy لتقييم النموذج قم بتحليل البيانات واستخدم مقاييس أخرى مثل Precision، Recall، F1-Precision و Recall و  F1-score لفهم أداء النموذج بشكل أفضل.

  • 0
نشر

وعليكم السلام ورحمة الله وبركاته.

ليس دائماً القيمة الأعلى للـ accuracy تعني أن النموذج أفضل كم ابالتعليق السابق حيث يمكن أن يكون هناك 

مشكلة Overfitting بمعنى قد يكون النموذج حقق accuracy عالية على بيانات التدريب ولكنه لا يعمم جيداً على البيانات الجديدة ومن المهم مقارنة الـ training accuracy مع validation accuracy

كما أنه إذا كانت البيانات غير متوازنة (مثلاً 90% من الحالات من فئة واحدة)، فقد يحقق النموذج accuracy عالية دون أن يتعلم فعلياً وفي هذه الحالة يجب استخدام مقاييس أخرى مثل:

  • F1-score
  • Precision
  • Recall

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...