ضبط مسار المعالجة
جزء من قسم التعلّم الخاضع للإشراف في رحلة Machine Learning على Coddy. الدرس 48 من 58.
يمكن ضبط خط الأنابيب مثل أي نموذج، بما في ذلك خطوات التنظيف. يُسمّى كل إعداد باسم الخطوة، ثم شرطتين سفليتين، ثم المعلمة:
pipe = make_pipeline(SimpleImputer(), DecisionTreeClassifier(random_state=0))
grid = {"simpleimputer__strategy": ["mean", "median", "most_frequent"],
"decisiontreeclassifier__max_depth": [2, 4, 6, 8]}
search = GridSearchCV(pipe, grid, cv=5)
search.fit(X_train, y_train)تُسمّي make_pipeline كل خطوة باسم فئتها، بأحرف صغيرة. بالنسبة إلى 200 عملية إطلاق لصواريخ نموذجية، سواء بلغت 300 m أم لا، كانت نتائج الإعدادات الـ12 كما يلي:
تعيد كل طية ملاءمة خط الأنابيب بالكامل، بما في ذلك أداة التعويض، لذا لا تطّلع أي طية على الصفوف التي تختبرها.
التحدي
متوسطتريد مدرسة موسيقى معرفة أيّ من طلاب الكمان سينجحون في امتحان المستوى. يقرأ الكود الابتدائي ثلاث قيم لـ k، ويتوقف البحث الشبكي عبر خط الأنابيب بسبب خطأ.
- أصلح مفتاحَي الشبكة لكي يضبط البحث استراتيجية المُعوِّض وعدد الجيران في k-NN.
- اطبع أفضل الإعدادات، ودقتها المتحقَّق منها بالتقاطع، ودقة الاختبار، كما هو موضح أدناه.
مدرسة أخرى، مع 2، 4، 6:
Best: mean fills, 6 neighbors
Cross-validated accuracy: 0.720
Test accuracy: 0.820جرّب بنفسك
import pandas as pd
from sklearn.model_selection import train_test_split, GridSearchCV
from sklearn.impute import SimpleImputer
from sklearn.preprocessing import StandardScaler
from sklearn.neighbors import KNeighborsClassifier
from sklearn.pipeline import make_pipeline
# طلاب الكمان: اجتازوا امتحان المستوى (1) أم لم يجتازوه (0)؛ بعض سجلات التمرين
# ودرجات القراءة الموسيقية من النظرة الأولى مفقودة
students = pd.read_csv("violins.csv")
X = students.drop(columns="passed")
y = students["passed"]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=0)
ks = [int(input()), int(input()), int(input())]
# يتوقف هذا البحث بسبب خطأ: أصلح شبكة المعلمات
pipe = make_pipeline(SimpleImputer(), StandardScaler(), KNeighborsClassifier())
grid = {
"strategy": ["mean", "median"],
"n_neighbors": ks,
}
search = GridSearchCV(pipe, grid, cv=5)
search.fit(X_train, y_train)
# اكتب الكود الخاص بك أدناه
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس التعلّم الخاضع للإشراف
1نموذجك الأول
التعلّم من الأمثلةمجموعتا التدريب والاختبارالملاءمة والتنبؤتقييم النموذجمراجعة: فارز البذور10مسارات المعالجة
مسارات المعالجةالأعمدة المختلطةتعويض القيم المفقودة ضمن مسار المعالجةضبط مسار المعالجةمراجعة: تنظيف البيانات والتنبؤتدرّب بنفسك: مترجم Python عبر الإنترنت