Yapay Zeka ve Makine Öğrenimi

Rastgele Orman Modeli Nedir? Örnek Problem Çözümü

Rastgele Orman Modeli (Random Forest), makine öğrenmesinde birden fazla karar ağacının ürettiği tahminleri birleştirerek yüksek doğruluk sunan, topluluk (ensemble) öğrenmesi tabanlı güçlü bir algoritmadır. Günümüz yapay zeka ve veri bilimi uygulamalarında finansal risk analizinden tıbbi teşhislere, müşteri davranış tahmininden görüntü işlemeye kadar pek çok alanda karmaşık problemleri çözmek için yaygın olarak kullanılmaktadır.

⚡ Kısa Cevap: Rastgele Orman (Random Forest) modeli, tek bir karar ağacının yaptığı hataları ve aşırı öğrenme (overfitting) sorununu aşmak amacıyla yüzlerce karar ağacını rastgele veri ve öznitelik alt kümeleriyle eğitip çoğunluk oyuna veya ortalamaya göre karar veren bir makine öğrenmesi yöntemidir.
🎯 Bu Derste Öğrenecekleriniz
  • Rastgele Orman algoritmasının temel mantığını ve çalışma prensiplerini kavrayacaksınız.
  • Tek bir karar ağacı ile Rastgele Orman modeli arasındaki farkları açıkça öğreneceksiniz.
  • Bootstrapping ve Öznitelik Rastgeleliği (Feature Randomness) kavramlarını detaylarıyla anlayacaksınız.
  • Adım adım hazırlanmış bir müşteri terk (churn) tahmini örneği üzerinden problem çözmeyi öğreneceksiniz.
  • Modelin hiperparametrelerini ayarlayarak tahmin başarısını nasıl artıracağınızı keşfedeceksiniz.
📌 Bu Konuda Bilmeniz Gerekenler
  • Rastgele Orman algoritması ‘Kitlelerin Bilgeliği’ (Wisdom of Crowds) ilkesine dayanır.
  • Aşırı öğrenmeye (overfitting) karşı son derece dirençli bir yapıya sahiptir.
  • Hem sınıflandırma (classification) hem de regresyon (regression) problemlerinde başarıyla kullanılır.
  • Model, eksik verileri işleme ve özniteliklerin önem sırasını belirleme konusunda oldukça yeteneklidir.
💡 İpucu: Makine öğrenmesi sınavlarında ve mülakatlarda ‘Topluluk Öğrenmesi’ (Ensemble Learning) sorulduğunda akla gelen ilk algoritma Rastgele Orman’dır. Ağaçların tek tek kararlarından ziyade kolektif karara odaklanmayı unutmayın.

Rastgele Orman Modeli (Random Forest) Nedir?

Rastgele Orman Modeli, verileri analiz etmek ve karmaşık sınıflandırma ya da regresyon problemlerini çözmek amacıyla tasarlanmış bir yapay zeka algoritmasıdır. Temelleri 2001 yılında Leo Breiman ve Adele Cutler tarafından atılan bu yaklaşım, tek bir karar ağacına güvenmek yerine, yüzlerce hatta binlerce karar ağacından oluşan sanal bir ‘orman’ kurarak hareket eder.

Gündelik hayattan bir örnekle açıklamak gerekirse; tek bir uzman doktorun teşhisine bel bağlamak yerine, farklı uzmanlıklara sahip 100 doktordan oluşan bir heyete danıştığınızı hayal edin. Her doktor hastanın farklı semptomlarını inceleyip bir teşhis koyar; nihai karar ise en çok konulan teşhis olur. Rastgele Orman algoritması da tam olarak bu çoğunluk oyu ilkesiyle çalışarak hata payını en aza indirir.

Makine öğrenmesi literatüründe bu yaklaşım topluluk öğrenmesi (ensemble learning) olarak adlandırılır. Zayıf öğreniciler biçiminde tanımlanan bireysel karar ağaçları bir araya getirildiğinde, ortaya son derece güçlü ve kararlı bir toplu tahmin modeli çıkar.

Karar Ağacından Rastgele Ormana Geçiş

Rastgele Orman modelini tam olarak kavrayabilmek için öncelikle onun yapı taşı olan karar ağaçlarını (Decision Trees) anlamak gerekir. Karar ağacı, verileri ‘Evet/Hayır’ veya ‘Büyük/Küçük’ gibi ikili sorularla dallara ayırarak sonuca ulaşan bir akış şemasıdır. Ancak tek bir karar ağacının ciddi bir zayıf noktası bulunur: Aşırı Öğrenme (Overfitting). Benzer bir mantık Karar Ağaçları Algoritması Konu Anlatımı me Örnek Problemler konu anlatımında da karşımıza çıkıyor.

Yalnızca tek bir karar ağacı eğitildiğinde, veri setindeki gürültüleri ve istisnai durumları dahi ezberleme eğilimi gösterir. Eğitim verisinde %100 başarı yakalayan bir karar ağacı, daha önce hiç görmediği yeni test verileriyle karşılaştığında çuvallayabilir. Bu durum, modelin varyansının (variance) yüksek olduğuna işaret eder.

⚠️ Dikkat: Yüksek varyans, bir modelin eğitim verisini ezberlediği ve yeni veriler karşısında esneklik gösteremediği anlamına gelir. Rastgele Orman algoritması, işte bu yüksek varyansı düşürmek için icat edilmiştir.

Rastgele Orman algoritması, yüzlerce karar ağacının rastgele oluşturulmuş farklı veri kümeleri üzerinde eğitilmesini sağlayarak ezberleme problemini ortadan kaldırır. Her ağaç farklı bir hata yapsa bile, tüm ağaçların ortak kararı alındığında bireysel hatalar birbirini sönümler ve geriye oldukça güvenilir bir tahmin kalır.

Rastgele Ormanı Güçlü Kılan İki Temel Mekanizma

Rastgele Orman modelini diğer algoritmalardan ayıran ve ona ‘rastgele’ ismini kazandıran iki ana mekanizma bulunmaktadır: Bootstrapping (Torbada Örnekleme) ve Öznitelik Rastgeleliği (Feature Randomness).

1. Bootstrapping (Bagging – Bootstrap Aggregating)

Bootstrapping yöntemi, orijinal veri setinden rastgele ve yerine koyarak (with replacement) yeni veri alt kümeleri oluşturma işlemidir. Örneğin elinizde 1000 satırlık bir müşteri verisi varsa, her ağaç için bu 1000 satırdan rastgele 1000 veri seçilir. Seçilen bir satır tekrar seçilebileceği için bazı veriler tek bir ağacın eğitim setinde birkaç kez yer alabilir. Buna karşın verilerin yaklaşık %36.8’i o ağacın eğitim setine hiç girmeyebilir. Bu girmeyen verilere Torba Dışı (Out-of-Bag – OOB) veriler denir.

2. Öznitelik Rastgeleliği (Feature Randomness)

Geleneksel bir karar ağacı düğümlerini bölerken tüm öznitelikleri (sütunları) inceler ve en iyi ayrımı sağlayan özniteliği seçer. Rastgele Orman algoritmasında ise her düğüm ayrımında yalnızca rastgele seçilen kısıtlı sayıda öznitelik değerlendirmeye alınır. Genellikle toplam öznitelik sayısının karekökü (√p) kadar öznitelik seçilerek ilerlenir.

Öznitelik rastgeleliği sayesinde, veri setinde çok baskın bir öznitelik bulunsa dahi tüm ağaçların aynı yapıya bürünmesi engellenir. Böylece ağaçlar arasındaki korelasyon düşer, modelin çeşitliliği ve genel başarısı gözle görülür şekilde artar.

ℹ️ Bilgi: Ağaçlar arasındaki korelasyon ne kadar düşük olursa, topluluk modelinin hata oranı da o kadar azalır. Farklı bakış açılarına sahip ağaçlar bir araya geldiğinde ortak akıl zirveye ulaşır.

Sınıflandırma ve Regresyon Problemlerinde Rastgele Orman

Rastgele Orman modeli, makine öğrenmesindeki iki ana problem türünün her ikisinde de mükemmel sonuçlar verir. Ancak her iki problem türünde nihai karara ulaşma yöntemi farklılık gösterir. Konu ilerledikçe Makine Öğrenmesinde Model Değerlendirme Metrikleri Nelerdir? ile bağlantılı noktalar da karşımıza çıkar.

Sınıflandırma Problemleri (Classification)

Sınıflandırma, verileri belirli kategorilere ayırma işlemidir (Örn: Bir e-postanın ‘Spam’ mi yoksa ‘Spam Değil’ mi olduğunu belirlemek). Rastgele Orman sınıflandırma yaparken Çoğunluk Oylaması (Majority Voting) yöntemini kullanır. Ormandaki 100 ağaçtan 75’i e-posta için ‘Spam’, 25’i ‘Spam Değil’ diyorsa, modelin nihai tahmini ‘Spam’ olur.

Regresyon Problemleri (Regression)

Regresyon, sürekli sayısal bir değeri tahmin etme işlemidir (Örn: Bir evin fiyatını veya yarınki hava sıcaklığını tahmin etmek). Regresyon problemlerinde ormandaki her bir karar ağacı sayısal bir değer üretir. Rastgele Orman modeli, bu ağaçların ürettiği tüm sayısal tahminlerin aritmetik ortalamasını alarak nihai tahmini belirler.

Karar Ağacı ile Rastgele Orman Karşılaştırması

Rastgele Orman ile tek bir Karar Ağacı arasındaki temel farkları anlamak, hangi problemde hangi algoritmayı seçeceğinize karar vermenizi kolaylaştırır. Aşağıdaki tabloda bu iki modelin kritik özelliklerini karşılaştırabilirsiniz:

ÖzellikKarar Ağacı (Decision Tree)Rastgele Orman (Random Forest)
Model YapısıTek bir karar ağacından oluşur.Yüzlerce karar ağacının birleşimidir.
Aşırı Öğrenme RiskiYüksek (Veriyi ezberlemeye meyillidir).Düşük (Ağaçların ortalaması riski azaltır).
Hesaplama KarmaşıklığıDüşük, çok hızlı eğitilir ve çalışır.Yüksek, daha fazla işlem gücü ve zaman gerektirir.
YorumlanabilirlikÇok kolay (Ağaç görselleştirilebilir).Zor (Kara kutu – Black box olarak görülür).
Tahmin DoğruluğuOrta veya Düşük.Yüksek ve oldukça kararlı.

Rastgele Orman Hiperparametreleri ve Model Ayarları

Bir Rastgele Orman modelinin performansını en üst seviyeye çıkarmak için modeli oluşturan hiperparametrelerin doğru ayarlanması gerekir. İnce ayar (hyperparameter tuning) sürecinde en çok kullanılan parametreler şunlardır:

  • n_estimators: Ormanda oluşturulacak karar ağacı sayısıdır. Ağaç sayısı arttıkça modelin kararlılığı artar ancak eğitim süresi uzar. Genellikle 100 ile 500 arasında bir değer tercih edilir.
  • max_depth: Her bir karar ağacının maksimum derinliğidir. Derinliğin sınırlandırılması ağaçların aşırı karmaşıklaşmasını önler.
  • min_samples_split: Bir düğümün (node) ikiye bölünebilmesi için içermesi gereken minimum örnek sayısıdır.
  • max_features: Her bir düğüm ayrımında rastgele değerlendirilecek maksimum öznitelik sayısıdır.
  • random_state: Sonuçların tekrarlanabilirliğini (reproducibility) sağlamak için kullanılan rastgelelik tohum değeridir.

Adım Adım Örnek Problem Çözümü: Banka Müşteri Terk Tahmini

Teorik bilgileri somutlaştırmak adına, bir bankanın müşterilerinin bankayı terk edip etmeyeceğini (Churn) tahmin eden basitleştirilmiş bir Rastgele Orman modelini adım adım çözelim.

📖 Örnek Problem Tanımı

Elimizde bir müşteriye ait 3 temel bilgi (Öznitelik) bulunmaktadır:

  • Yaş: 42
  • Kredi Skoru: 620
  • Hesap Bakiyesi: 150.000 TL

Hedefimiz bu müşterinin bankayı terk edip etmeyeceğini (Terk Et: Evet / Hayır) tahmin etmektir. Problemimizi çözmek için 3 farklı karar ağacından oluşan küçük bir Rastgele Orman modeli kullanalım.

1. Adım: Ağaçların Eğitilmesi ve Yapısı

Bootstrapping ve öznitelik rastgeleliği kullanılarak eğitilmiş 3 farklı ağacımızın karar kuralları şu şekildedir:

  • Ağaç 1 (Öznitelikler: Yaş, Bakiye): Eğer Yaş > 40 VE Bakiye > 100.000 TL ise -> Terk Et (Evet)
  • Ağaç 2 (Öznitelikler: Kredi Skoru, Yaş): Eğer Kredi Skoru > 600 VE Yaş Terk Etme (Hayır)
  • Ağaç 3 (Öznitelikler: Kredi Skoru, Bakiye): Eğer Kredi Skoru 100.000 TL ise -> Terk Et (Evet)

2. Adım: Her Ağacın Bireysel Tahmin Üretmesi

Elimizdeki müşterinin değerlerini (Yaş: 42, Kredi Skoru: 620, Bakiye: 150.000 TL) ağaçlara sırasıyla uygulayalım:

  • Ağaç 1 Değerlendirmesi: Yaş (42) > 40 VE Bakiye (150.000) > 100.000 şartı sağlanıyor. Tahmin: Evet.
  • Ağaç 2 Değerlendirmesi: Kredi Skoru (620) > 600 VE Yaş (42) < 45 şartı sağlanıyor. Tahmin: Hayır.
  • Ağaç 3 Değerlendirmesi: Kredi Skoru (620) 100.000 şartı sağlanıyor. Tahmin: Evet.

3. Adım: Çoğunluk Oylaması ve Nihai Karar

Ağaçlarımızdan gelen tahmin sonuçlarını toplayalım:

  • Terk Et (Evet): 2 Oy (Ağaç 1 ve Ağaç 3)
  • Terk Etme (Hayır): 1 Oy (Ağaç 2)

Rastgele Orman algoritması çoğunluk oylaması kuralını uygular. 2 oy ‘Evet’ yönünde olduğu için modelin bu müşteri için ürettiği nihai tahmin: Müşteri Bankayı Terk Edecektir (Evet).

💡 İpucu: Gerçek hayat senaryolarında 3 ağaç yerine 100-500 arası ağaç kullanılır. Ağaç sayısı arttıkça oylamanın istatistiksel güvenilirliği katlanarak artar.

Rastgele Orman Algoritmasının Avantajları ve Dezavantajları

Her algoritmanın olduğu gibi Rastgele Orman modelinin de güçlü ve zayıf yönleri bulunmaktadır. Bir projeye başlamadan önce bu dengeleri iyi tartmak gerekir. Kafası karışanlar için Genetik Algoritmalar Konu Anlatımı ve Problem Çözüm Adımları rehberi, konuyu farklı bir açıdan ele alır.

Avantajları

  • Yüksek Doğruluk Oranı: Karmaşık ve doğrusal olmayan ilişkileri başarıyla yakalar.
  • Overfitting Koruması: Çok sayıda ağacın birleşimi ezberleme riskini minimuma indirir.
  • Eksik Veri Toleransı: Veri setinde boş değerler olsa dahi yüksek performansla çalışmaya devam eder.
  • Öznitelik Önemi (Feature Importance): Hangi özniteliğin tahmin üzerinde ne kadar etkili olduğunu sıralayabilir.

Dezavantajları

  • Yavaş Eğitim ve Tahmin Süresi: Yüzlerce ağaç içerdiği için büyük veri setlerinde bellek ve işlemciyi yoğun kullanır.
  • Görselleştirme Zorluğu: Tek bir karar ağacı gibi ekrana çizdirilip kolayca takip edilemez (Kara Kutu özelliğindedir).
  • Canlı Sistemlerde Gecikme (Latency): Gerçek zamanlı ve milisaniyeler içinde yanıt verilmesi gereken sistemlerde hantal kalabilir.

Rastgele Orman Modeli Öğrendiklerinizi Pekiştirin

Buraya kadar öğrendiğiniz teorik ve pratik bilgileri sınamak, konuyu zihninizde tam olarak oturtmanıza yardımcı olacaktır. Aşağıdaki alıştırma sorularını yanıtlayarak kendinizi test edin.

✏️ Kendinizi Test Edin
  1. Rastgele Orman modelinde ‘öznitelik rastgeleliği’ yapılmasının temel amacı nedir?
  2. Regresyon problemlerinde Rastgele Orman modeli nihai tahmine nasıl ulaşır?
  3. 100 ağaçtan oluşan bir sınıflandırma ormanında 60 ağaç ‘A’, 40 ağaç ‘B’ yanıtı verirse nihai sonuç ne olur?
  4. Rastgele Orman modelinin tek bir karar ağacına göre en büyük avantajı nedir?
📝 Konu Özeti
  • Rastgele Orman, birden fazla karar ağacının ortak kararıyla çalışan topluluk öğrenmesi tabanlı bir algoritmadır.
  • Bootstrapping ile veri kümesinden, Öznitelik Rastgeleliği ile de özniteliklerden rastgele örnekler alınır.
  • Sınıflandırma problemlerinde çoğunluk oylaması, regresyon problemlerinde ise ortalama alma yöntemi kullanılır.
  • Aşırı öğrenmeyi (overfitting) engelleyerek yüksek doğruluk ve kararlılık sunar.
  • İşlem yükü yüksek ve yorumlanması tek bir ağaca göre daha zordur.

Sıkça Sorulan Sorular

❓ Rastgele Orman (Random Forest) algoritması nedir?
Rastgele Orman, birden fazla karar ağacının ürettiği tahminleri birleştirerek çalışan bir topluluk (ensemble) makine öğrenmesi algoritmasıdır. Sınıflandırma ve regresyon problemlerinde yüksek doğruluk sağlar.
❓ Rastgele Orman aşırı öğrenmeyi (overfitting) nasıl engeller?
Veri setini ve öznitelikleri rastgele örnekleyerek (Bootstrapping ve Feature Randomness) yüzlerce farklı ağaç oluşturur. Bireysel ağaçların ezberleme hataları ortalama alınarak veya çoğunluk oyu ile sıfırlanır.
❓ Karar ağacı ile Rastgele Orman arasındaki temel fark nedir?
Karar ağacı tek bir karar yapısından oluşur ve ezberlemeye meyillidir. Rastgele Orman ise yüzlerce karar ağacının bir araya gelmesiyle oluşur, daha kararlıdır ve daha yüksek doğruluk sunar.
❓ Bootstrapping yöntemi ne işe yarar?
Orijinal veri setinden yerine koyarak rastgele alt veri kümeleri oluşturma işlemidir. Her ağacın birbirinden farklı veri kümeleriyle eğitilmesini sağlayarak model çeşitliliğini artırır.
❓ Rastgele Orman algoritmasında kaç ağaç (n_estimators) seçilmelidir?
Genellikle 100 ile 500 arasında ağaç sayısı tercih edilir. Ağaç sayısı arttıkça modelin kararlılığı artar ancak hesaplama süresi uzar.
❓ Rastgele Orman hem sınıflandırma hem regresyon için kullanılabilir mi?
Evet, kullanılabilir. Sınıflandırma problemlerinde çoğunluk oylaması yaparken, regresyon problemlerinde ağaçların ürettiği tahminlerin ortalamasını alır.
❓ Öznitelik Rastgeleliği (Feature Randomness) nedir?
Her düğüm bölünmesinde tüm özniteliklerin değil, rastgele seçilen kısıtlı sayıdaki (örneğin karekökü kadar) özniteliğin değerlendirilmesi mantığıdır. Ağaçların birbirine benzemesini önler.
❓ Rastgele Orman algoritmasının en büyük dezavantajı nedir?
Karmaşık yapısı nedeniyle 'kara kutu' (black box) niteliğinde olması, yani tek bir karar ağacı gibi kolayca görselleştirilip adımlarının takip edilememesi ve yüksek işlem gücü gerektirmesidir.
📚 Kaynaklar
  • TÜBİTAK BİLGEM — Yapay zeka ve makine öğrenmesi algoritmaları üzerine akademik araştırmalar ve veri bilimi kaynakları.
  • YÖK Akademik Veri Tabanı — Topluluk öğrenmesi (Ensemble Learning) ve Random Forest algoritmalarının Türkiye'deki veri analitiği uygulamaları.

Deniz Karay

DersMerkezi.net.tr’nin yazarı, eğitim alanında yıllara dayanan deneyime sahip bir uzmandır ve öğrencilerin öğrenme sürecini desteklemeyi hedefler. Matematik, fen bilimleri, tarih, dil ve edebiyat başta olmak üzere birçok ders alanında içerik üretir ve konuları sade, anlaşılır ve adım adım rehberler halinde sunar.

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu