Ağaç Derinliği
Coddy'nin Machine Learning Journey'sinin Denetimli Öğrenme bölümünün bir parçası. Ders 29 / 58.
Bir ağaç, her eğitim satırının kendine ait bir yanıtı olana kadar soru sormaya devam edebilir. O zaman öğrenmiş değil, ezberlemiş olur:
Derin ağaçlar kendi eğitim satırlarındaki gürültüyü öğrenir; bu yüzden test doğruluğu zirve yapar, ardından düşer. Birkaç derinlik deneyin:
train = []
test = []
for d in range(1, 13):
tree = DecisionTreeClassifier(max_depth=d, random_state=0)
tree.fit(X_train, y_train)
train.append(tree.score(X_train, y_train))
test.append(tree.score(X_test, y_test))Bu ayarlarda, 6 derinliği yeni satırlarda en iyi sonucu verir: şimdilik bunu koruyun. 8 derinliğinden itibaren ağaç, ezberlediği satırlarda kusursuz, geri kalanlarda ise daha kötü sonuç verir.
Görev
OrtaBir teleskop araştırması, gökyüzü cisimlerini yıldızlar ve galaksiler olarak sınıflandırır. Başlangıç kodu bunları ayırır ve grafiği hazırlar.
depthsiçindeki her derinlik için bir ağaç eğitin (random_state=0) ve her iki doğruluğu da kaydedin.- Aşağıdaki gibi, test doğruluğunun en iyi olduğu derinliği yazdırın.
trainvetestetiketleriyle her iki çizgiyi de çizin, en iyi derinliği kesikli birax.axvlineçizgisiyle işaretleyin, gösterge ekleyin ve grafiği gösterin.
Bir mango ayırıcı için:
Best depth: 5, test accuracy 0.867Ardından Coddy grafiğinizi açıklar. Onlarınki şöyle görünüyor:
Kendin dene
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier
# Teleskop araştırmasındaki her gök cismi için bir satır: galaxy sütununda 1 galaksi, 0 yıldız anlamına gelir
sky = pd.read_csv("sky.csv")
features = ["brightness_mag", "size_arcsec", "roundness", "color_index"]
X_train, X_test, y_train, y_test = train_test_split(sky[features], sky["galaxy"], test_size=0.25, random_state=0)
depths = range(1, 11)
fig, ax = plt.subplots()
ax.set_title("Star or Galaxy?")
ax.set_xlabel("Tree depth")
ax.set_ylabel("Accuracy")
# 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.
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ın3Doğrusal Regresyon
Sayıları Tahmin EtmeBirden Fazla ÖzellikHataları ÖlçmeArtık GrafikleriÖzet: Bisiklet Kiralama6Karar Ağaçları
Ağaçlar Soru SoruyorBir Ağacı OkumakAğaç DerinliğiÖzellik Önem DerecesiTekrar: Kredi KararlarıKendi başına pratik yap: Online Python derleyicisi