المكوّنات بوصفها أنماطًا
جزء من قسم التعلّم غير الخاضع للإشراف في رحلة Machine Learning على Coddy. الدرس 30 من 51.
ما الذي فحصه PCA؟ يتكوّن كل مكوّن من 64 وزنًا، وزن واحد لكل بكسل، ويحتوي components_ على صف واحد لكل مكوّن:
pca = PCA(n_components=4).fit(X)
print(pca.components_.shape)يطبع هذا (4, 64). أعد تشكيل صف إلى 8 في 8، وسيصبح صورة. cmap="gray_r" يعني التدرج الرمادي المعكوس: الأوزان الكبيرة داكنة، والسالبة منها فاتحة:
ax.imshow(pca.components_[0].reshape(8, 8), cmap="gray_r")المكوّن 1 داكن في المواضع التي تحتوي فيها الرقمين 4 و6 على حبر، لذا يقعان في الجانب الأيمن من الخريطة. تحصل عملية المسح على درجة عالية عندما يقع حبرها على وحدات بكسل داكنة.
التحدي
متوسطيريد معلم الخط رؤية الطرق التي يكتب بها الناس الرقم الواحد. يقرأ البرنامج الرقم، ويحتفظ البرنامج الابتدائي بمسوحه في X.
- طبّق PCA باستخدام 3 مكونات على
X. - ارسم المكوّن
iعلىaxs[i]على هيئة صورة بحجم 8 في 8، باستخدامcmap="gray_r"، مع عنوان منComponent 1إلىComponent 3. - اعرض المخطط.
بالنسبة إلى الرقم 2، يرسم هذا الشكل. ثم يصف Coddy لوحاتك:
جرّب بنفسك
import matplotlib.pyplot as plt
from sklearn.datasets import load_digits
from sklearn.decomposition import PCA
# كل صورة ممسوحة ضوئيًا لرقم واحد يُقرأ من الإدخال: 64 بكسل لكل صف
d = int(input())
digits = load_digits()
X = digits.data[digits.target == d]
# لا تغيّر السطر أدناه
fig, axs = plt.subplots(1, 3)
# اكتب شيفرتك أدناه
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس التعلّم غير الخاضع للإشراف
1اكتشاف المجموعات
التعلّم دون تسمياتقياس التشابهتنفيذ K-Means يدويًااستخدام K-Means في scikit-learnمراجعة: أعضاء النادي الرياضي7تحليل PCA عمليًا
رؤية 64 بُعدًاالمكوّنات بوصفها أنماطًاالضغط وإعادة البناءPCA قبل تدريب النموذجمراجعة: ماسح الوجوهتدرّب بنفسك: مترجم Python عبر الإنترنت