PCA قبل تدريب النموذج
جزء من قسم التعلّم غير الخاضع للإشراف في رحلة Machine Learning على Coddy. الدرس 32 من 51.
عدد أقل من الميزات يجعل النموذج أسرع ويقلل الضوضاء التي يتعامل معها. يمكن أن يكون PCA ضمن خط أنابيب، مباشرةً قبل النموذج:
for n in [2, 5, 10, 20, 40, 64]:
model = make_pipeline(PCA(n_components=n), KNeighborsClassifier())
print(n, f"{cross_val_score(model, X, y, cv=5).mean():.3f}")على مجموعة الأرقام:
يستقر مستوى الدقة قرب 20: لا تضيف الاتجاهات الـ44 الأخرى شيئًا يُذكر. تُلائم كل طية PCA على صفوف التدريب الخاصة بها، لذا لا يحدث أي تسرّب.
وحدات مختلطة؟ ضع StandardScaler() أولًا، كما هو الحال دائمًا.
التحدي
متوسطيُصنّف مختبر لزيت الزيتون الزيوتَ حسب الضوء الذي تمتصه عند 36 طولًا موجيًا، بالإضافة إلى 4 اختبارات مخبرية. ما أقل عدد من الميزات يكفي؟ يقرأ البرنامج قيمة هامش التفاوت.
- لكل
nفيsizes، تحقّق من الصحة باستخدام التحقق المتقاطع (5 طيات) لخط أنابيب يتضمن: أداة تحجيم، وPCA معnمكوّنات، وLogisticRegression(max_iter=1000). اطبع كل درجة. - اطبع أقل عدد من المكوّنات الذي يحقق درجة تقع ضمن هامش التفاوت من أفضل درجة.
في مختبر آخر ومع 0.05:
2 components: 0.817
3 components: 0.833
4 components: 0.889
5 components: 0.928
10 components: 0.928
20 components: 0.917
40 components: 0.922
Fewest within 0.05 of the best: 4 componentsجرّب بنفسك
import pandas as pd
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import cross_val_score
# 180 عينة من زيت الزيتون: الضوء الممتص عند 36 طولًا موجيًا، و4 اختبارات مخبرية، ودرجة الجودة
oils = pd.read_csv("oils.csv")
X = oils.drop(columns=["oil", "grade"])
y = oils["grade"]
sizes = [2, 3, 4, 5, 10, 20, 40]
slack = float(input())
# اكتب الكود الخاص بك أدناه
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس التعلّم غير الخاضع للإشراف
1اكتشاف المجموعات
التعلّم دون تسمياتقياس التشابهتنفيذ K-Means يدويًااستخدام K-Means في scikit-learnمراجعة: أعضاء النادي الرياضي7تحليل PCA عمليًا
رؤية 64 بُعدًاالمكوّنات بوصفها أنماطًاالضغط وإعادة البناءPCA قبل تدريب النموذجمراجعة: ماسح الوجوهتدرّب بنفسك: مترجم Python عبر الإنترنت