Modelden Önce PCA
Coddy'nin Machine Learning Journey'sinin Denetimsiz Öğrenme bölümünün bir parçası. Ders 32 / 51.
Daha az özellik, modeli hızlandırır ve modelin peşinden koşacağı gürültüyü azaltır. PCA, modelden hemen önce bir işlem hattında yer alabilir:
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}")digits veri kümesinde:
Doğruluk 20 civarında plato yapar: diğer 44 yön neredeyse hiçbir şey katmaz. Her kat, PCA'yı kendi eğitim satırlarına göre uydurur; böylece veri sızıntısı olmaz.
Karışık birimler mi? Her zamanki gibi önce StandardScaler() ekleyin.
Görev
OrtaBir zeytinyağı laboratuvarı, yağları 36 dalga boyunda soğurdukları ışığa ve 4 laboratuvar testine göre derecelendiriyor. En az kaç özellik yeterli olur? Program bir tolerans değeri okur.
sizesiçindeki herniçin şu ardışık işlem hattını 5 katlı çapraz doğrulayın: ölçekleyici,nbileşenli PCA,LogisticRegression(max_iter=1000). Her puanı yazdırın.- Tolerans dahilinde en yüksek puanı alan en az sayıda bileşeni yazdırın.
Başka bir laboratuvar için ve 0.05 değeriyle:
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 componentsKendin dene
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 zeytinyağı: 36 dalga boyunda soğurulan ışık, 4 laboratuvar testi ve kalite derecesi
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())
# Kodunuzu aşağıya yazın
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Denetimsiz Öğrenme bölümündeki tüm dersler
1Grupları Bulma
Etiketler Olmadan ÖğrenmeBenzerliği ÖlçmeK-Means'i Elle Uygulamascikit-learn ile K-MeansÖzet: Spor Salonu Üyeleri7Uygulamada PCA
64 Boyutu GörmekBileşenleri Örüntü Olarak GörmekSıkıştır ve Yeniden OluşturModelden Önce PCATekrar: Yüz Tarayıcı10Proje: Rakam Kaşifi
Rakamları İncelePCA ile KüçültRakamları KümeleKümelere Ad VerAykırı Olanları Bul2k Sayısını Seçme
AtaletDirsek YöntemiSilüet PuanlarıKümeleme Öncesi ÖlçeklemeÖzet: Teslimat BölgeleriKendi başına pratik yap: Online Python derleyicisi