Özet - Random forest
- Makine Öğrenmesi kursu
- Orta seviye
- Ders 40/112
- 6 dk
Bu grupta random forest, ensemble ve bagging'i öğrendin.
Özet: random forest
Bu grupta:
- Random forest birçok ağacı bootstrap ve rastgele özellik alt kümeleriyle eğitip birleştirir; varyansı azaltır.
- Oylama, hataları bağımsız olduğunda güçlüdür; sınıflandırıcı olasılıkların ortalamasını alır.
n_estimatorsaşırı öğrenmeye yol açmaz;max_featuresvemin_samples_leafkarmaşıklığı belirler.- Bootstrap ~%63 örnek içerir; OOB skoru ücretsiz doğrulamadır.
- Safsızlık önemi hızlı ama yanlı; permütasyon önemi daha güvenilir.
Uygulama Regresyon ormanı
Diyabet verisini test_size=0.2, random_state=0 ile böl. LinearRegression() ve RandomForestRegressor(n_estimators=300, min_samples_leaf=5, random_state=0) eğit; ikisinin test R² değerini round(..., 3) ile alt alta yazdır.
Başlangıç kodu
from sklearn.datasets import load_diabetes
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.ensemble import RandomForestRegressor
X, y = load_diabetes(return_X_y=True)
# buraya yazÖrnek çözüm
from sklearn.datasets import load_diabetes
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.ensemble import RandomForestRegressor
X, y = load_diabetes(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
for m in [LinearRegression(), RandomForestRegressor(n_estimators=300, min_samples_leaf=5, random_state=0)]:
print(round(m.fit(X_train, y_train).score(X_test, y_test), 3))Beklenen çıktı
0.332 0.287
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Random forest için hangisi gereksizdir?
- Test kümesi ayırmak
- n_estimators seçmek
- Özellikleri ölçeklemek Doğru cevap
- random_state vermek
Açıklama: Ağaçlar eşik karşılaştırması yapar; ölçek kararı değiştirmez.
2 Regresyon ormanı oluştur.
rf = RandomForest____(n_estimators=200, random_state=0)
rf = RandomForestRegressor(n_estimators=200, random_state=0)
Açıklama: RandomForestRegressor ağaç tahminlerinin ortalamasını verir.
3 Araçları eşleştir.
| Kavram | Anlamı |
|---|---|
RandomForestClassifier |
Sınıflandırma ormanı |
BaggingClassifier |
Genel bagging |
oob_score_ |
Torba dışı doğruluk |
permutation_importance |
Model bağımsız önem |