Program
Rastgele Orman Regresyonu, doğrusal olmayan tablo verilerini minimum kurulumla modellemenin en güvenilir yollarından biridir. Veri gürültülü olsa veya ilişkiler net tanımlanmamış olsa bile, kısa sürede çalışır durumda bir model sunar.
Bu rehber, Rastgele Orman Regresyonunun uçtan uca iş akışını ele alır. Algoritmanın nasıl çalıştığını anlayacak ve Python ile uygulayacaksınız. Ayrıca değerlendirme tekniklerini ve daha iyi performans için ince ayarı tartışacağız.
Rastgele Orman Regresyonu Nedir?
Rastgele orman regresyonu, çıktıları bir araya getirerek sürekli bir tahmin üreten, birden çok rastgeleleştirilmiş karar ağacı oluşturan bir topluluk tekniğidir. Tek bir modele güvenmek yerine, genellikle ağaç çıktılarının ortalamasını alarak birçok ağacın tahminlerini birleştirir.

Neden birden çok ağaç? Tek bir karar ağacı aşırı uyum eğilimindedir. Özellikle dağınık, gerçek dünya verileriyle çalışırken sinyallerle birlikte gürültüyü de yakalar.
Örnekleme (bootstrap) birleştirme ve özellik rastgeleliği
Rastgele Orman Regresyonu modelinin gücü, her adımda rastgelelik eklemesinden ve ardından varyansı azaltmak için sonuçları birleştirmesinden gelir. Bu iç mekanizmayı tartışalım.
Bootstrap birleştirme ya da bagging, her ağacı verinin farklı bir rastgele alt kümesi üzerinde eğitir. Bu, ağaçlar arasında çeşitlilik sağlar ve aşırı uyum riskini azaltır.
Özellik rastgeleliği ise her bölünmede rastgele bir özellik alt kümesi seçerek bir başka çeşitlilik katmanı ekler. Birlikte, bu teknikler tahminleri dengeler ve genelleme yeteneğini artırır.
Bootstrap örnekleme ve özellik rastgeleliği
Rastgele Orman, bagging olarak da bilinen bootstrap örnekleme ile başlar. Her ağaç, özgün veri kümesinden rastgele örneklenmiş bir alt küme üzerinde eğitilir. Sonuç olarak ağaçlar, aynı yapıyı tekrarlamak yerine farklı desenler öğrenir.
Ayrıca özellik rastgeleliği de eklenir. Her bölünmede model, mevcut tüm özellikler yerine yalnızca rastgele bir özellik alt kümesini dikkate alır. Bu, birkaç baskın özelliğin her ağacı kontrol etmesini engeller.
Birlikte, bagging ve özellik rastgeleliği, farklı hatalar yapan ve birbiriyle ilişkisiz bir ağaç kümesi oluşturur; bu ağaçlar birleştirildiğinde gürültü iptal olur ve genel doğruluk artar.
Ağaçların büyütülmesi ve tahminlerin birleştirilmesi
Ormandaki her ağaç, çoğu zaman budama olmaksızın derinleşir. Bu, modelin verideki karmaşık desenleri, etkileşimleri ve doğrusal olmayan ilişkileri yakalamasını sağlar.
Bu bireysel ağaçlar aşırı uyum gösterebilir, ancak Rastgele Orman nihai sonuç için çıktıları birleştirdiğinde bu etki azalır.
Önyargı-varyans dengesi
Rastgele orman, iki temel faktörü dengeler: tek tek ağaçların gücü ve ormanın çeşitliliği.
Derin ağaçlar, eğitim verisine yakından uyabildikleri için düşük önyargıya sahiptir. Aynı zamanda, veri örneklemesi ve özellik seçimine getirilen rastgelelik, ağaçlar arasındaki korelasyonu azaltır. Çok sayıda düşük önyargılı, zayıf korelasyonlu ağacın ortalaması alınarak model, önyargıyı artırmadan genel varyansı düşürür.
Veri Ön İşleme ve Uygulama İş Akışı
Sırada kavramları pratiğe dökmek ve ham veriyi çalışan bir Rastgele Orman modeline dönüştürme tekniklerine bakmak var.
Veri temizleme ve özellik mühendisliği
Rastgele Orman modelleri için veri hazırlığı genellikle kategorik değişkenlerin ele alınmasıyla başlar.
- Daha küçük kategoriler için one-hot encoding iyi çalışır ve güvenilirdir
- Yüksek kardinaliteli özellikler için hedef kodlama (target encoding) çoğunlukla daha etkilidir; çünkü boyutu önemli ölçüde artırmadan kategori düzeyindeki sinyalleri yakalar
Sırada eksik veriler gelir. Yaklaşım, kullandığınız kütüphaneye bağlıdır. Bazı uygulamalar, bölünmeler sırasında eksik değerleri doğrudan işleyebilir; bazıları ise doldurmanızı bekler. Çoğu durumda, medyan veya mod ile basit atama (imputation) yeterlidir. Rastgele Orman katı dağılımlara dayanmadığından, bu basit yöntemler pratikte iyi sonuç verir.
Sonuçta, asıl büyük etki özellik mühendisliğinden gelir. Örneğin, gecikme değişkenleri (lag) zamansal bağımlılıkları tanıtır, hareketli toplamlar yerel eğilimleri yakalar ve gruplandırılmış istatistikler daha üst düzey kalıpları kodlar. Bu türetilmiş özellikler, modelin bilgiyi daha iyi temsil etmesini ve öngörü performansını artırmasını sağlar.
Daha derin bir inceleme için şu ders notumu okumanızı öneririm: Makine Öğreniminde Özellik Mühendisliği.
Temel seviyelerin ve veri bölme stratejilerinin belirlenmesi
Herhangi bir ayara başlamadan önce ilk adım, veriyi doğru şekilde bölmektir.
Standart tablo problemlerinde bu, genellikle veri kümesini eğitim, doğrulama ve test kümelerine ayırmak anlamına gelir; böylece model bir dilimde eğitilir, başka bir dilimde ayarlanır ve son, dokunulmamış dilimde değerlendirilir.
Bu ayrım önemlidir; çünkü modelin yeni veride nasıl davranacağına dair gerçekçi bir okuma sağlar.

Zaman serilerinde ise bölme stratejisi değişir. Rastgele bölmeler, gelecekteki bilgiyi geçmişe sızdırabilir; bu da performansı gerçekte olduğundan daha iyi gösterir.
Adımlı ileri doğrulama (walk-forward validation) bu sorunu, ilk zaman penceresinde eğitip bir sonraki pencerede doğrulayarak, sonra adım adım ilerleyerek çözer. Bu, değerlendirmeyi modelin üretimde gerçekten kullanılacağı şekle hizalar.
Uçtan uca Python uygulamasını yazma
Uygulama basit bir scikit-learn akışını izler:
- Modeli içe aktarın
- Veriyi bölün
- Tahminleyiciyi (estimator) eğitin
- Tahminler üretin
- Çıktıyı değerlendirin
Pratikte tipik bir kurulum şöyle görünür:
from sklearn.ensemble import RandomForestRegressor
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_absolute_error, root_mean_squared_error
import matplotlib.pyplot as plt
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size=0.2, random_state=42
)
model = RandomForestRegressor(random_state=42)
model.fit(X_train, y_train)
y_pred = model.predict(X_test)
mae = mean_absolute_error(y_test, y_pred)
rmse = root_mean_squared_error(y_test, y_pred)
Model eğitilip değerlendirildikten sonra bir sonraki adım, tahmin edilen değerleri gerçek değerlerle görselleştirmektir.
Bir saçılım grafiği, hedefi sürekli olarak aşan ya da altında kalan tahminler gibi sistematik önyargıları fark etmeyi kolaylaştırır. Bu, ayrıca değişen varyanslılıkı ortaya çıkarır; hedef değerler arttıkça tahmin hatalarının genişlediği durumlar gibi.
Hiperparametre Ayarı ve Değerlendirme
Model eğitildikten sonra bir sonraki adım, temel parametreleri ayarlamak ve performansı değerlendirmektir. İşte yaygın teknikler:
Regresyon metriklerini seçme ve yorumlama
Kök ortalama kare hata (RMSE), ortalama mutlak hata (MAE) ve R² performansı farklı şekillerde ölçer.
- RMSE, artıkların karesini aldığı için büyük hataları daha ağır cezalandırır. Bu, büyük yanılgıların maliyetli olduğu ve en aza indirilmesi gerektiği durumlarda faydalıdır
- MAE tüm hatalara eşit davranır; bu nedenle veri aykırı değerler içerdiğinde veya tutarlı ortalama hatanın ara sıra görülen sıçramalardan daha önemli olduğu durumlarda daha dengeli bir görünüm sunar
- R², hedefteki varyansın ne kadarını modelin açıkladığını ölçer; bu, genel uyumu karşılaştırmaya yardımcı olur fakat doğrudan tahmin hatasını yansıtmaz
Toplu metriklerin ötesinde, hata analizi daha derin içgörü sağlar. Gerçek ve tahmin edilen değerler arasındaki fark olarak tanımlanan artıklar, farklı veri dilimlerinde incelenmelidir.
Artıkları tahmin edilen değerler veya gerçek hedeflerle karşılaştırmalı olarak çizmek, kalıpları ortaya çıkarmaya yardımcı olur. Örneğin, hatalar hedef değeriyle birlikte artıyorsa değişen varyanslılık söz konusudur. Tahminler sürekli olarak diyagonalin üzerinde veya altında kalıyorsa sistematik önyargı vardır.
Hataları özellik gruplarına veya hedef aralıklarına göre dilimlemek de başarısızlık türlerini belirlemeye yardımcı olur. Model, orta aralıklarda iyi performans gösterebilirken uç değerlerde zorlanabilir veya verinin segmentlerine göre farklı davranabilir.
Torba dışı (OOB) değerlendirme kullanımı
Rastgele Orman, torba dışı örnekleme yoluyla yerleşik bir doğrulama mekanizması sağlar. Her ağaç bir bootstrap örneği üzerinde eğitildiğinden, verinin bir kısmı dışarıda kalır ve eğitim sırasında görülmez. Bu torba dışı örnekler, ayrı bir doğrulama kümesi oluşturmadan modeli değerlendirmek için kullanılabilir. OOB skoru bunun karşılığıdır.

Bununla birlikte, OOB değerlendirme her zaman yeterli değildir. Özellikle riskin yüksek olduğu senaryolarda veya veri sızıntısı endişesi olduğunda, nihai model doğrulaması için katı bir ayrılmış test kümesi gereklidir.
Ayarlamada önceliklendirilecek temel hiperparametreler
Rastgele Ormanda, max_features ve n_estimators parametreleri genellikle performansta en belirgin değişiklikleri sağlar.
-
max_features, her bölünmede dikkate alınan maksimum özellik sayısını kontrol eder. Düşük değerler rastgeleliği artırır ve ağaçlar arasındaki korelasyonu azaltır; bu da genellemeyi iyileştirebilir. Yüksek değerler ağaçları güçlendirir ama birbirine daha çok benzetir; bu da potansiyel olarak varyansı artırır. -
n_estimators, ormandaki ağaç sayısını kontrol eder. Bunu artırmak genellikle tahminleri dengelleyerek performansı iyileştirir; ancak hesaplama süresini de artırır. Belli bir noktadan sonra kazanımlar marjinal hale gelir; bu yüzden o plato noktasını belirlemek önemlidir.
Bu parametreler, model karmaşıklığı, eğitim süresi ve çapraz doğrulama kullanılarak öngörü performansı arasında denge kuracak şekilde ayarlanmalıdır.
Özellik Önemi ve Yorumlanabilirlik
Rastgele Orman modelleri sıklıkla kara kutu olarak görülür; ancak özelliklerin tahminleri nasıl etkilediğini anlamanın birden çok yolu vardır. Bazı önemli yöntemlere bakalım.
Safsızlık temelli önem
Rastgele Orman, Ortalama Safsızlık Azalımı (MDI) ile özellik önemini hesaplar. Bir özellik bir düğümü bölmek için her kullanıldığında, model o bölünmenin safsızlığı ne kadar azalttığını ölçer; regresyon görevlerinde örneğin varyans. Bu azalmalar tüm ağaçlar boyunca biriktirilir ve bir özelliğin tahminleri iyileştirmeye ne kadar katkıda bulunduğunu yansıtan bir skor verir.
Bu yöntem hızlı ve modele yerleşik olsa da bilinen sınırlamaları vardır. MDI, sürekli özellikleri veya çok sayıda benzersiz değere sahip kategorik özellikleri kayırma eğilimindedir. Bu özellikler daha fazla olası bölünme noktası oluşturur; bu da gerçekten daha öngörücü olmasalar bile önem skorlarını şişirebilir.
Permütasyon önemi
Permütasyon önemi, bir özelliğin değerleri ayrılmış bir veri kümesinde rastgele karıştırıldığında performansın nasıl değiştiğini ölçer. Bir özelliği karıştırmak performansı önemli ölçüde düşürüyorsa o özellik önemlidir. Etki küçükse, özellik muhtemelen sınırlı bir öngörü değerine sahiptir.
Bu yaklaşım, gerçek model davranışını yansıttığı için analiz açısından daha güvenilirdir.
Bununla birlikte, ilişkili özellikler karmaşıklık getirir. İki özellik benzer bilgi taşıdığında, birini karıştırmak performansı çok düşürmeyebilir; çünkü diğeri hâlâ sinyali sağlar. Sonuç olarak önem, ilişkili özellikler arasında bölünebilir; bu da dikkatli yorumlama gerektirir.
SHAP değeri
SHAP değerleri (Shapley Additive Explanations), her bir özelliğin tekil bir tahmine ne kadar katkıda bulunduğunu açıklar. Her özelliğe, tahmini bir temel çizginin üzerine veya altına ne kadar ittiğini temsil eden bir değer atar.
Bu yöntem genellikle model kararlarını açıklamak ve güven inşa etmek için kullanılır. Daha yakından bakmak için Makine Öğreniminde SHAP Değerleri rehberimizi okuyun.
Sınırlamalar ve Yaygın Başarısızlık Durumları
Rastgele Orman Regresyonu birçok senaryoda güvenilirdir; ancak net sınırlamaları vardır. Bunları anlamak, ne zaman kullanacağınıza ve ne zaman başka bir yaklaşıma geçeceğinize karar vermenize yardımcı olur.
Dışa vurum (ekstrapolasyon) sınırları ve köşe durumları
Rastgele Orman, eğitim verisinin aralığının ötesine ekstrapolasyon yapamaz.
Her ağaç, eğitim sırasında gözlenen bölünmelere dayanarak tahmin yaptığından nihai çıktı, veri kümesinde görülen minimum ve maksimum hedef değerlerle sınırlıdır. Model yalnızca 10 ile 100 arasındaki hedefleri gördüyse, girdi sinyali ne kadar güçlü olursa olsun 120 tahmin edemez. Bu durum, büyüme tahmini veya eğilim odaklı sistemler gibi senaryolarda sorun olur.
Model ayrıca, metin temsilleri veya binlerce sütuna sahip one-hot kodlu vektörler gibi aşırı yüksek boyutlu seyrek verilerde zorlanır. Bu durumlarda ağaçlar verimsiz hale gelir ve anlamlı bölünmeler yakalayamaz. Pratik çözümler arasında şunlar yer alır:
- Boyut indirgeme
- Özellik seçimi
- Ridge Regresyonu gibi seyrek girdiler için tasarlanmış modellerin kullanımı
Yorumlanabilirlik ödünleşimleri
Tek bir ağaç, girdiden tahmine net bir yol sunduğu için açıklaması kolaydır. Bir orman ise yüzlerce ağacı bir araya getirir; bu da bireysel kararların izini sürmeyi zorlaştırır.
Sıkı düzenlemeli ortamlarda bu ödünleşim önemlidir. Açıklamaların basit ve doğrudan izlenebilir olması gerekiyorsa, tek bir karar ağacı veya doğrusal model daha uygun olabilir. Öncelik performanssa ve açıklamalar özellik önemi veya SHAP gibi yöntemlerle desteklenebiliyorsa, Rastgele Orman güçlü bir seçenek olmaya devam eder.
Hesaplama, bellek ve gecikme kısıtları
Rastgele Orman, ağaç sayısı ve veri boyutuyla doğrusal olarak ölçeklenir. Veri kümeleri büyüdükçe, her ağacın inşa edilip saklanması gerektiğinden eğitim süresi ve bellek kullanımı artar. Büyük ormanlar, tüm ağaçların çıktılarının birleştirilmesini gerektirdiği için çıkarımı da yavaşlatabilir.
Sıkı gecikme veya maliyet kısıtları olan üretim sistemlerinde bu bir darboğaza dönüşebilir. Ağaç sayısını azaltmak, ağaç derinliğini sınırlamak veya her bölünmede dikkate alınan özellik sayısını kısıtlamak, kaynak kullanımını kontrol etmeye yardımcı olur. Bu ayarlamalar, daha hızlı eğitim ve tahmin süreleri karşılığında bir miktar doğruluk kaybı yaratır.
Rastgele Orman Regresyonu ve Alternatifler: Nasıl Seçmeli
Rastgele Orman Regresyonunun kullanım durumunuz için doğru algoritma olup olmadığını ya da hangi alternatifi değerlendirmeniz gerektiğini merak ediyor olabilirsiniz.
Bir model karşılaştırma çerçevesi oluşturma
Kullanım durumları farklıdır; ancak tek bir yaklaşım her zaman yardımcı olur: Rastgele Orman Regresörü ile birlikte farklı modellerin (doğrusal regresyon, destek vektör regresyonu, gradyan artırma vb.) aynı veri kümesi üzerindeki performansını karşılaştırın.
Bu, her model için tamamen aynı eğitim, doğrulama ve test bölümlerini kullanmak ve ardından hepsini aynı hata kriterleri ve iş varsayımları altında değerlendirmek anlamına gelir.
Rastgele orman regresyonu vs. doğrusal regresyon ve destek vektör regresyonu
Rastgele Orman ile doğrusal regresyon çok farklı problemleri çözer. Doğrusal regresyon, girdi ile hedef arasındaki ilişkinin çoğunlukla doğrusal olduğu ve katsayıların kolay açıklanması gerektiği durumlarda en iyi sonucu verir. Ayrıca, gözlenen hedef aralığının ötesine uzanabildiği için, katı ekstrapolasyonun önemli olduğu durumlarda daha iyi bir seçimdir.
Buna karşılık Rastgele Orman, doğrusal olmayan desenler, özellik etkileşimleri ve düzensiz sınırlar konusunda daha iyidir. Bu da onu karmaşık gerçek dünya sistemleri için daha güçlü bir modelleme aracı, trend ağırlıklı kestirimler içinse daha zayıf bir seçenek yapar.
Destek vektör regresyonu (SVR) ise bambaşka bir noktada durur. Küçük veri kümelerinde iyi performans gösterebilir; ancak özellik ölçeklendirmesine çok daha hassastır ve genellikle daha dikkatli ayar gerektirir. Rastgele Orman, standartlaştırılmış girdilere bağlı değildir; bu da onu tipik tablo iş akışlarında çalışmayı daha kolay hale getirir.
SVR, veri kümesi küçük ve özellik uzayı sınırlıyken güçlü bir seçenek olabilir; ancak veri hacmi, özellik karmaşıklığı veya operasyonel baskı arttıkça bakımı zorlaşır.
Rastgele orman regresyonu vs. gradyan artırma ve tek karar ağacı
Rastgele Orman ağaçları bağımsız olarak kurar ve çıktılarını ortalar. Gradyan artırma ise ağaçları ardışık olarak kurar; her yeni ağaç, bir öncekilerin hatalarını düzeltir.
XGBoost gibi gradyan artırma yöntemleri, özellikle yapılandırılmış tablo verilerinde genellikle daha yüksek doğruluk tavanlarına ulaşır. Ancak daha fazla ayar gerektirir ve hiperparametrelere daha hassastır. Artırmanın ardışık doğası nedeniyle eğitim de daha yavaş olabilir. Rastgele Orman eğitmesi daha kolay, kutudan çıktığı haliyle daha kararlı ve yapılandırmaya daha az hassastır.
Tek bir karar ağacıyla karşılaştırıldığında Rastgele Orman çok daha kararlı ve doğrudur. Tek ağaç, her karar yolunu izleyebildiğiniz için yorumlaması kolaydır; ancak verideki küçük değişimlere çok hassastır. Rastgele Orman, birçok ağacın ortalamasını alarak bu istikrarsızlığı azaltır; fakat doğrudan yorumlanabilirliği kaybeder.
Model karşılaştırma özeti
|
Model |
Doğrusal olmayanı işler |
Ekstrapolasyon |
Yorumlanabilirlik |
Ayar karmaşıklığı |
Eğitim maliyeti |
|
Rastgele Orman Regresyonu |
Güçlü |
Zayıf |
Orta |
Orta |
Orta |
|
Doğrusal Regresyon |
Zayıftan Orta |
Güçlü |
Yüksek |
Düşük |
Düşük |
|
Destek Vektör Regresyonu |
Güçlü |
Zayıftan Orta |
Düşük |
Yüksek |
Yüksek(büyük veride) |
|
Gradyan Artırma (XGBoost) |
Çok Güçlü |
Zayıf |
Düşükten Orta |
Yüksek |
Yüksek |
|
Tek Karar Ağacı |
Orta |
Zayıf |
Yüksek |
Düşük |
Düşük |
Son Düşünceler
Rastgele Orman Regresyonu, veri dağınık olduğunda, ilişkiler doğrusal olmadığında ve ağır ön işleme yapmadan güçlü bir temel modele ihtiyaç duyduğunuzda en iyi şekilde çalışır. Karışık özellik türlerini işler, etkileşimleri yakalar ve minimum kurulumla istikrarlı performans sunar.
Tipik iş akışı net bir sırayı izler. Minimum ön işlemeden başlayın ve veriyi doğru yapılandırmaya odaklanın. Varsayılan bir Rastgele Orman modeliyle bir temel oluşturun ve tutarlı metriklerle değerlendirin. Buradan, performansı artırmak için ağaç sayısı ve özellik örnekleme stratejisi gibi temel hiperparametreleri ayarlayın.
Model istikrar kazandıktan sonra, gerektiğinde tahminleri açıklamak için artık analizine, hata dilimlemeye ve SHAP kullanımına geçerek daha derin bir değerlendirme yapın.
Bir sonraki adım olarak, derinlemesine anlayış ve uygulamalı pratik için Python ile Ağaç Tabanlı Modellerle Makine Öğrenimi kursuna göz atın.
Rastgele Orman Regresyonu SSS
Rastgele Orman modelinin sınırlamaları nelerdir?
Rastgele Orman, eğitim verisinin aralığının ötesine ekstrapolasyon yapamaz ve çok yüksek boyutlu seyrek veri kümelerinde zorlanabilir. Tek bir karar ağacına göre daha az yorumlanabilirdir ve ağaç sayısı arttıkça hesaplama açısından maliyetli hale gelebilir.
Rastgele Orman modelimin aşırı uyum yaptığını nasıl anlarım?
Eğitim ve doğrulama performansını karşılaştırın. Eğitim hatası düşük, ancak doğrulama hatası belirgin şekilde yüksekse model aşırı uyum gösteriyordur. Ayrıca, ağaç derinliğini artırmanın doğrulama metriklerini iyileştirmediğini kontrol edebilirsiniz.
XGBoost mu yoksa Rastgele Orman mı daha iyi?
XGBoost genellikle daha yüksek doğruluk sağlar; çünkü ağaçları ardışık olarak kurar ve her adımda hataları düzeltir. Hiperparametre ayarına zaman ayırabildiğinizde en iyi sonucu verir. Öte yandan Rastgele Orman, ağaçları bağımsız kurar ve tahminlerini ortalar. Daha kararlıdır, daha az ayar gerektirir ve güçlü bir temel model olarak iyi performans gösterir.
Rastgele Orman zaman serisi verisini işleyebilir mi?
Doğrudan değil. Eğitimden önce, zaman serisini gecikme özellikleri, hareketli istatistikler veya pencere tabanlı dönüşümler kullanarak tablo biçimine dönüştürmeniz gerekir.
Srujana, Bilgisayar Bilimleri alanında dört yıllık dereceye sahip serbest çalışan bir teknoloji yazarıdır. Veri bilimi, bulut bilişim, geliştirme, programlama, güvenlik ve daha birçok konuyu yazmak onun için doğal bir süreçtir. Klasik edebiyata ve yeni yerler keşfetmeye tutkuyla bağlıdır.
