Gradyan Artırma
Coddy'nin Machine Learning Journey'sinin Denetimli Öğrenme bölümünün bir parçası. Ders 43 / 58.
Bir orman ağaçlarını yan yana büyütür. Gradyan artırma ise onları birbiri ardına büyütür: her yeni ağaç, kendisinden önceki ağaçların hâlâ neyi yanlış yaptığını öğrenir.
Burada bir smoothie barının satışlarına, ağaç ağaç uyduruyor:
Sınıflandırma için model GradientBoostingClassifier:
from sklearn.ensemble import GradientBoostingClassifier
boost = GradientBoostingClassifier(n_estimators=100, learning_rate=0.1, random_state=0)
boost.fit(X_train, y_train)learning_rate her düzeltmenin ne kadarının korunacağını belirler. Küçük adımlar daha temkinlidir, bu yüzden daha fazla ağaca ihtiyaç duyarlar.
Görev
OrtaBir orkide yetiştiricisi hangi bitkilerin çiçek açacağını öğrenmek istiyor. Başlangıç kodu orchids.csv dosyasını böler, bir orman modelinin puanını hesaplar ve ağaç sayısını okur.
ratesiçindeki her oran için, o kadar ağaçla boosting modelini eğit (random_state=0) ve test doğruluğunu yazdır.- En iyi oranı yazdır. Eşitlik durumunda daha önce geleni koru.
Başka bir yetiştirici için ve 20 değeriyle:
Forest: 0.860
Boosting at rate 0.01: 0.600
Boosting at rate 0.1: 0.860
Boosting at rate 1.0: 0.900
Best rate for 20 trees: 1.0Ardından birkaç farklı ağaç sayısı dene: boosting hangi durumda orman modelinden daha iyi sonuç verir?
Kendin dene
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier, GradientBoostingClassifier
# Yetiştiricinin raflarındaki orkideler: bu yıl çiçek açtı (1) veya açmadı (0)
orchids = pd.read_csv("orchids.csv")
X = orchids.drop(columns="bloomed")
y = orchids["bloomed"]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=0)
trees = int(input())
rates = [0.01, 0.1, 1.0]
# Aşağıdaki satırları değiştirmeyin: karşılaştırma yapılacak orman modeli
forest = RandomForestClassifier(n_estimators=100, random_state=0)
forest.fit(X_train, y_train)
print(f"Forest: {forest.score(X_test, y_test):.3f}")
# 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ınKendi başına pratik yap: Online Python derleyicisi