İşlem Hatları
Coddy'nin Machine Learning Journey'sinin Denetimli Öğrenme bölümünün bir parçası. Ders 45 / 58.
Gerçek tablolar eksik değerler, sözcükler ve farklı ölçeklerle gelir. Bu bölüm, onları temizleyen ve tahmin yapan tek bir nesne oluşturur: bir pipeline:
Küçük başlayın: make_pipeline bir ölçekleyiciyi ve modeli zincirler:
from sklearn.pipeline import make_pipeline
pipe = make_pipeline(StandardScaler(), KNeighborsClassifier())
pipe.fit(X_train, y_train)
print(pipe.score(X_test, y_test))Güçlü ya da zayıf 200 test kaynağı için bu, ölçeklendirilmemiş 0.74 değerine karşılık 0.86 değerini yazdırır.
fit eğitim satırlarından ölçeklendirmeyi öğrenir, ardından modeli eğitir. Daha sonraki her satır otomatik olarak aynı şekilde ölçeklendirilir.
Görev
OrtaBir balon şirketi her akşam yarının uçuş günü olup olmadığına karar verir. Başlangıç kodu ölçeklendirmeyi elle yapar: test doğruluğu iyidir, ancak tahmin hiçbir zaman ölçeklendirilmez; bu yüzden her hava koşulunda yes der.
- Bunun yerine, eğitim satırları üzerinde eğitilen bir işlem hattı kullan: önce ölçekleyici, ardından k-NN.
- Test doğruluğunu yazdır ve tahmini bununla değerlendir.
Başka bir şirket, gün 20, 32, 7000, 9:
Test accuracy: 0.880
Flying day: noKendin dene
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.neighbors import KNeighborsClassifier
from sklearn.pipeline import make_pipeline
# Bir balon şirketindeki geçmiş günler: uçuş yapılan gün (1) veya yapılmayan gün (0)
days = pd.read_csv("balloons.csv")
X = days[["wind_kmh", "gusts_kmh", "visibility_m", "passengers"]].to_numpy()
y = days["flying_day"].to_numpy()
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=0)
# Yarının hava tahmini: rüzgâr, rüzgâr hamleleri, görüş mesafesi, rezervasyon yaptıran yolcular
day = np.array([[float(input()), float(input()), float(input()), float(input())]])
# Elle ölçeklendirme: sonuç iyi görünüyor, ancak tahmin verileri hiç ölçeklendirilmiyor
scaler = StandardScaler()
X_train_scaled = scaler.fit_transform(X_train)
X_test_scaled = scaler.transform(X_test)
model = KNeighborsClassifier()
model.fit(X_train_scaled, y_train)
print(f"Test accuracy: {model.score(X_test_scaled, y_test):.3f}")
if model.predict(day)[0] == 1:
print("Flying day: yes")
else:
print("Flying day: no")
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Denetimli Öğrenme bölümündeki tüm dersler
1İlk Modeliniz
Örneklerden ÖğrenmeEğitim ve Test KümeleriUydurma ve Tahmin EtmeBir Modeli PuanlamaÖzet: Tohum Sınıflandırıcı4Lojistik Regresyon
Evet-Hayır TahminleriKarar EşiğiKanıt Olarak AğırlıklarBirden Fazla SınıfÖzet: Spam Filtresi7Aşırı Öğrenme
Eksik ve Aşırı ÖğrenmeÖğrenme EğrileriDüzenlileştirmeDoğrulama KümeleriÖzet: Bir Ağacı Ayarlama10İşlem Hatları
İşlem HatlarıKarma Sütunlarİşlem Hattında Eksik Değerleri Tamamlamaİşlem Hattını AyarlamaÖzet: Temizle ve Tahmin Et2En Yakın Komşular
k-NN Nasıl Karar Verirk'yi SeçmekKarar SınırlarıKomşular İçin ÖlçeklemeÖzet: Şarap Komşuları5Sınıflandırıcıları Değerlendirme
Karmaşıklık MatrisiKesinlik ve DuyarlılıkF1 SkoruDengesiz SınıflarROC EğrileriÖzet: Tarama Testi8Çapraz Doğrulama
K-Katlı DoğrulamaModelleri Adil Bir Şekilde KarşılaştırmaIzgara AramasıÖzet: Kaykay Tamiri11Proje: Penguen Türleri
Penguenlerle TanışınVerileri HazırlayınBir Model SeçinEn İyisini AyarlayınModeli Yayına AlınKendi başına pratik yap: Online Python derleyicisi