Menu
CoddyTech
flag Ar iconالعربيةdown icon

مخططات البواقي

جزء من قسم التعلّم الخاضع للإشراف في رحلة Machine Learning على Coddy. الدرس 14 من 58.

قد تخفي الدرجة الجيدة شكلًا خاطئًا. يحقق هذا الخط درجة R squared قدرها 0.82 على عجينة ترتفع، لكن أخطاءه تتخذ شكل قوس:

يسارًا: ارتفاع العجينة مقابل الساعات، يرتفع بسرعة ثم يتباطأ، مع خط ملائم مستقيم، وR squared قدره 0.82. يمينًا: تتصاعد البواقي مقابل التنبؤات من -1.3 إلى +0.7 ثم تنخفض إلى -0.7، مشكلةً قوسًا حول خط الصفر المتقطع

ذلك الرسم البياني الموجود على اليمين هو مخطط البواقي: كل باقٍ، أي القيمة الفعلية ناقص القيمة المتوقعة، مقابل القيمة المتوقعة له، مع خط عند 0:

residuals = y_test - pred
fig, ax = plt.subplots()
ax.scatter(pred, residuals)
ax.axhline(0, color="gray", linestyle="--")
plt.show()

تتناثر البواقي السليمة كأنها ضوضاء حول 0. يشير وجود نمط إلى أن النموذج لا يلتقط شيئًا ما: هنا، أن الارتفاع يتباطأ.

مع وجود عدة ميزات، ارسم البواقي مقابل كل ميزة أيضًا: الميزة التي يتخذ رسمها شكل قوس تخفي المنحنى.

challenge icon

التحدي

متوسط

لائمَت مدرسة قيادة خطًا على 80 اختبار كبح: speed_kmh وbraking_m. يحتفظ الكود الابتدائي بتنبؤات الاختبار في pred ويضع تسميات على المخطط.

  1. احسب البواقي.
  2. مثّلها مبعثرة مقابل التنبؤات فوق خط رمادي متقطع عند 0، ثم اعرض المخطط.

هل لا يلتقط الخط منحنى؟ بل إنه يتنبأ على اليسار بمسافة كبح سالبة.

يبدو مخطط خط سليم، باستخدام بيانات أخرى، هكذا:

مخطط للبواقي بعنوان خط سليم: عشرون نقطة مبعثرة بلا أي نمط فوق خط متقطع عند 0 وتحته

يصف Coddy مخططك.

جرّب بنفسك

import pandas as pd
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression

brakes = pd.read_csv("braking.csv")
X_train, X_test, y_train, y_test = train_test_split(brakes[["speed_kmh"]], brakes["braking_m"], test_size=0.25, random_state=0)
model = LinearRegression()
model.fit(X_train, y_train)
pred = model.predict(X_test)

fig, ax = plt.subplots()
ax.set_title("Braking Line Check")
ax.set_xlabel("Predicted braking distance (m)")
ax.set_ylabel("Residual (m)")

# اكتب الكود الخاص بك أدناه
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس التعلّم الخاضع للإشراف

تدرّب بنفسك: مترجم Python عبر الإنترنت