Özet: Kaykay Tamiri
Coddy'nin Machine Learning Journey'sinin Denetimli Öğrenme bölümünün bir parçası. Ders 40 / 58.
Görev
OrtaBir kaykay parkının kiralama masası, iade edilen kaykaylardan tamir edilmesi gerekenleri belirleyen bir model istiyor. Program, denenecek en büyük k değerini okur.
- %25'ini test satırları olarak ayır (
random_state=0). ksiçindeki her k için eğitim satırlarında k-NN çapraz doğrulaması yap (cv=5). Ortalamaları çubuklar olarak çiz ve en iyi k değerini yazdır.- Bir ağacın
max_depthdeğerinidepthsüzerinde ızgara aramasıyla bul (cv=5,random_state=0) ve en iyisini yazdır. - Daha yüksek ortalama kazanır: test doğruluğuyla birlikte
Winner: k-NNveyaWinner: treeyazdır.
Başka bir park ve 13 için:
Best k: 13 (mean 0.785)
Best depth: 5 (mean 0.763)
Winner: k-NN, test accuracy 0.822Coddy daha sonra grafiğini açıklar. Onlarınki şöyle görünüyor:
Kendin dene
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split, cross_val_score, GridSearchCV
from sklearn.neighbors import KNeighborsClassifier
from sklearn.tree import DecisionTreeClassifier
# Denenecek en büyük k değeri, örneğin 15
max_k = int(input())
# İade edilen her kaykay için bir satır: son bakımından bu yana kiralanma sayısı, 0 ile 10 arasında aşınma puanları
# ve kaykay tahtasındaki çatlaklar; repair sütunundaki 1, kaykayın atölyeye gittiği anlamına gelir
boards = pd.read_csv("skateboards.csv")
features = ["rentals", "wheel_wear", "bearing_noise", "grip_wear", "truck_wobble", "deck_cracks"]
X = boards[features]
y = boards["repair"]
# Her özellik küçük bir sayı veya puan olduğundan k-NN için burada ölçekleyici gerekmez
ks = list(range(1, max_k + 1, 2))
depths = [2, 3, 4, 5, 6, 7, 8]
fig, ax = plt.subplots()
ax.set_title("Skateboard Repairs: Accuracy by k")
ax.set_xlabel("k (neighbors)")
ax.set_ylabel("Mean CV accuracy")
ax.set_xticks(ks)
ax.set_ylim(0.6, 0.9) # küçük farkların görünmesi için 0.6'dan başlar
# Kodunuzu aşağıya yazın
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 Filtresi2En 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