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

السؤال

نشر

السلام عليكم

ده الكود

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

ودي النتجيه 

135/135 ━━━━━━━━━━━━━━━━━━━━ 1s 1ms/step - loss: 15.3364 - mse: 15.3364 
Test Loss: 15.340315818786621

 

Recommended Posts

  • 0
نشر

مرحبًا علي،

نعم كلما كانت أقل كلما كانت أفضل.

و لكن عليك النظر إلى كل من نتيجة الخطأ على بيانات التدريب و بيانات الاختبار، فإذا كان الخطأ كبير في بيانات التدريب هذا يعني أن النموذج لم يتعلم الأنماط الموجودة في البيانات و عليك زيادة تعقيده.

أما في حال كان الخطأ صغير على بيانات التدريب، فهنا يكون هناك مشكلة over-fitting و عليك البدء بحلول بسيطة مثل تقليل تعقيد النموذج و إضافة regularization و غيرها من الطرق البسيطةـ في حال لم ينجح الأمر حاول استعمل transfer learning عن طريق استعمال نموذج مدرب مسبقًا على بيانات كثيرة في مهمة تشبه المهمة التي تحاول القيام بها، عندها يمكنك الاستفادة من الأنماط التي اكتشفها و تدريب جزء صغير منه فقط ليناسب المهمة الخاصة بك.

في حال لم ينجح أي مما سبق قد تضطر إلى جمع بيانات أكثر.

تحياتي.

  • 0
نشر

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

نعم بالطبع . بشكل عام كلما كانت قيمة الـ loss أقل كان النموذج أفضل في أدائه ولكن بشرط أن يكون قد تم تدريبه بشكل جيد ولم يقع في مشكلة underfitting أو overfitting. و ال loss يمثل الخطأ الذي يرتكبه النموذج في التنبؤ،وبالتالي فإن انخفاض قيمته يشير إلى أن النموذج يتنبأ بشكل أكثر دقة وأخطاء أقل.

ولكن يجب أن تنظر إلى معايير أخرى مثل accuracy أو MSE (Mean Squared Error) لفهم أداء النموذج بشكل كامل حيث في النتيجة مرفقة نجد أن ال MSE هو نفسه ال loss مما يشير إلى أن النموذج يستخدم ال MSE كدالة خسارة.

وإن ال MSE يقوم بقياس الفرق بين القيم الحقيقية والقيم المتوقعة. وكلما كان أصغر كان النموذج أكثر دقة. و لكن لا يمكن مقارنة هذه القيمة مباشرة دون معرفة نطاق البيانات. فإذا كانت القيم المستهدفة y_target_test كبيرة فإن ال MSE بقيمة 15 مقبول ولكن إذا كانت صغيرة فقد يكون مرتفع . لهذا يجب أن تقارن هذا بالنسبة لحجم البيانات لديك.

  • 0
نشر
بتاريخ 1 دقيقة مضت قال محمد عاطف17:

MSE (Mean Squared Error) 

المشكله ان بستخدم الداله دي بيظهر خطاء 

mean_squared_error_value = mean_squared_error(y_target_test , target , multioutput='uniform_average') 
print(f"Mean Squared Error: {mean_squared_error_value}")

بيظهر الخطاء ده

File "e:\PYHON\project-lifetrack\lifetrack2.py", line 246, in <module>
    mean_squared_error_value = mean_squared_error(y_target_test , target , multioutput='uniform_average') 
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "E:\PYHON\project-lifetrack\Lib\site-packages\sklearn\utils\_param_validation.py", line 216, in wrapper
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "E:\PYHON\project-lifetrack\Lib\site-packages\sklearn\metrics\_regression.py", line 565, in mean_squared_error
    _check_reg_targets_with_floating_dtype(
  File "E:\PYHON\project-lifetrack\Lib\site-packages\sklearn\metrics\_regression.py", line 198, in _check_reg_targets_with_floating_dtype
    y_type, y_true, y_pred, multioutput = _check_reg_targets(
                                          ^^^^^^^^^^^^^^^^^^^
  File "E:\PYHON\project-lifetrack\Lib\site-packages\sklearn\metrics\_regression.py", line 104, in _check_reg_targets
    check_consistent_length(y_true, y_pred)
  File "E:\PYHON\project-lifetrack\Lib\site-packages\sklearn\utils\validation.py", line 475, in check_consistent_length
    raise ValueError(
ValueError: Found input variables with inconsistent numbers of samples: [4320, 3]

 

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...