التحقق بتقسيم K
جزء من قسم التعلّم الخاضع للإشراف في رحلة Machine Learning على Coddy. الدرس 37 من 58.
يجعل هذا الفصل درجاتك موثوقة. وبحلوله نهايته، ستضبط نموذجًا باستخدام مخططات كهذا:
قد يكون تقسيم اختبار واحد محظوظًا. التحقق المتقاطع بـ K طيات يقسم الصفوف إلى طيات، وهنا عددها 5، ويختبر كل طية بالتناوب، مع التدريب على بقية الصفوف:
استدعاء واحد يشغّل التقييمات الخمسة كلها، وهنا لشجرة على أزهار السوسن:
from sklearn.model_selection import cross_val_score
tree = DecisionTreeClassifier(random_state=0)
scores = cross_val_score(tree, X, y, cv=5)
print(np.round(scores, 3))
print(f"{scores.mean():.3f} {scores.std():.3f}")يطبع هذا:
[0.967 0.967 0.9 0.967 1. ]
0.960 0.033اعرض المتوسط بوصفه الدرجة، والانحراف المعياري بوصفه مقدار التذبذب.
التحدي
متوسطيتنبأ مصنع كومبوتشا بالدفعات الفاسدة استنادًا إلى 5 قراءات مخبرية. ما مدى استقرار نموذجه؟ يقرأ البرنامج عدد الطيات؛ أما الكود التمهيدي فيُنشئ البيانات والنموذج.
- تحقق من صحة النموذج باستخدام هذا العدد من الطيات.
- اطبع دقة كل طية، ثم المتوسط والانحراف المعياري، جميعها إلى 3 منازل عشرية.
- اطبع رقم أضعف طية، بدءًا من 1.
للدفعات الأخرى و4:
Fold 1: 0.917
Fold 2: 0.933
Fold 3: 0.883
Fold 4: 0.917
Mean 0.912, std 0.018
Weakest fold: 3جرّب بنفسك
import numpy as np
from sklearn.datasets import make_classification
from sklearn.model_selection import cross_val_score
from sklearn.linear_model import LogisticRegression
n_folds = int(input())
# لا تغيّر الأسطر أدناه: 240 دفعة من الكومبوتشا، لكل منها 5 قراءات مخبرية؛ التصنيف 1 يعني أنها فاسدة
X, y = make_classification(n_samples=240, n_features=5, n_informative=3, n_redundant=0,
flip_y=0.08, class_sep=0.9, random_state=2)
model = LogisticRegression(max_iter=1000)
# اكتب الكود الخاص بك أدناه
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس التعلّم الخاضع للإشراف
تدرّب بنفسك: مترجم Python عبر الإنترنت