Ev Fiyat Tahmin Projesi (Ames Housing)
Bu projede, Ames, Iowa bölgesine ait konut verilerinden yola çıkılarak ev fiyat tahmini yapılmıştır. Veri seti, evin bulunduğu bölge, fiziksel ve yapısal özellikleri gibi pek çok detayı içermekte olup, Kaggle üzerinde de yarışması olan bu veriyle 79 açıklayıcı değişken üzerinden tahmin modeli oluşturulmuştur.
Proje Amacı ve Katma Değeri
1. Amaç
•A. Temel Hedefler
- Geniş kapsamlı bir emlak (konut) veri seti üzerinden evlerin satış fiyatlarını tahmin edebilecek bir makine öğrenmesi modeli geliştirmektir.
- Bu sayede, konutların gerçek değerlerini daha doğru biçimde öngörebilmek ve ilgili sektördeki değerleme süreçlerini hızlandırmak amaçlanmıştır.
2. Katma Değer
•A. Sektörel Faydalar
- Doğru Fiyatlandırma: Emlak sektöründe hızlı ve güvenilir bir fiyatlandırma mekanizması oluşturur.
- Hızlı Karar Alma: Banka kredisi, ipotek veya yatırım değerlendirmesi gibi konularda, otomatik ve düşük hata paylı tahminler sayesinde süreçler kolaylaşır.
- Modelin Geliştirilebilirliği: Sürekli güncellenebilir ve farklı bölgeler için de uyarlanabilir.
Veri Seti ve Değişkenler
1. Veri Seti Özellikleri
•A. Temel Bilgiler
- Kaynak: Kaggle yarışmasından alınmış, 2000'li yıllara ait Ames, Iowa konut verileri.
- Gözlem Sayısı:
train.csv
üzerinde 1460 gözlem (ek olarak test seti mevcut). - Açıklayıcı Değişken: 79 adet (kategorik ve sayısal).
- Hedef Değişken:
SalePrice
(evin gerçek satış fiyatı).
2. Kritik Değişkenler
•A. Önemli Özellikler
LotArea
: Arsa alanı (aykırı değerlere dikkat edilmesi gerekir).GrLivArea
: Evin zemin üstü yaşam alanı.Neighborhood
: Mahalle bilgisi (farklı sosyoekonomik etkenler barındırabilir).OverallQual
: Evin genel kalitesi (1-10 arası derecelendirme).YearBuilt
: Ev yapım yılı (zamana bağlı fiyat değişkenlikleri).
Adımlar ve Metodoloji
1. Veri Ön İşleme
•A. Eksik Değer Analizi
- Bodrum (basement), garaj gibi kısımlarda gözüken "NA" değerlerinin gerçekte "yok" anlamına geldiği anlaşıldı.
- Eksik değerler gerektiğinde "None" kategorisi veya "0" ile ifade edilerek modelde anlam kaybının önüne geçildi.
•B. Aykırı Değer İncelemesi
LotArea
,GrLivArea
gibi kolonlarda uç değerler bulundu.- Çok ekstrem değerler, modelin dengesini bozabileceğinden, winsorize veya uygun eşik yöntemleriyle sınırlandırıldı.
•C. Kategorik ve Sayısal Dönüşümler
- "Ex"/"Gd"/"Ta"/"Fa"/"Po" tarzı kalite derecelerine sahip sütunlar ordinal şekilde dönüştürüldü.
MSSubClass
gibi sayısal görünen ama kategorik anlam taşıyan kolonlar da kategorik forma çevrildi.
2. Özellik Mühendisliği
•A. Yeni Değişken Türetme
TotalSF
: Bodrum + 1. kat + 2. kat gibi farklı kat alanlarının toplamından elde edilen değişken.HouseAge
:YrSold - YearBuilt
şeklinde hesaplanarak, evin yaşına dair bilgi sağlandı.RemodAge
:YrSold - YearRemodAdd
yardımıyla tadilatın üzerinden ne kadar zaman geçtiği dikkate alındı.
•B. One-Hot Encoding
- Mahalle (Neighborhood) veya çatı şekli (RoofStyle) gibi çok sayıda kategori içeren kolonlar, dummy değişkenlere ayrıldı.
- Bu adım, modelin mahalle farklarını daha net yakalamasına yardımcı oldu.
3. Modelleme ve Değerlendirme
•A. Model Seçimi
- Lineer Modeller (Ridge, Lasso, ElasticNet): Özellikle çoklu doğrusal ilişkiler ve çok sayıda değişken için iyi bir başlangıç noktası.
- Ağaç Tabanlı Yöntemler (Random Forest, XGBoost, LightGBM): Karmaşık etkileşimleri ve kategori sayısı yüksek değişkenleri yakalamada çoğu zaman daha başarılı.
•B. Hata Metrikleri
- RMSE (Root Mean Squared Error), Kaggle yarışma formatına uygun olarak model performansını ölçmede kullanıldı.
- Çapraz doğrulama sonuçlarına göre en düşük RMSE elde eden model seçildi.
•C. Hiperparametre Optimizasyonu
- XGBoost'ta
max_depth
,learning_rate
,n_estimators
gibi parametrelerGridSearchCV
veyaRandomizedSearchCV
ile taranarak en iyi kombinasyon bulundu. - Final model, en iyi parametre setiyle eğitilerek test seti üzerinde tahminde bulundu.
Sonuçlar ve Çıktılar
1. Model Başarısı
•A. Performans Değerlendirmesi
- Uygun veri temizleme, özellik mühendisliği ve doğru model seçimiyle düşük RMSE değerine ulaşıldı.
- Özellikle ağaç tabanlı modellerin karmaşık veri yapılarını iyi kavradığı gözlendi.
2. Emlak Sektörüne Katkı
•A. Pratik Uygulamalar
- Doğru fiyat tahmini, ev alım-satım işlemlerini hızlandırabilir ve anlaşmazlıkları azaltabilir.
- Bankaların mortgage değerlendirmesi veya yatırımcıların portföy analizleri gibi konularda karar süreçleri hızlanır.
3. Özelleştirilebilme
•A. Geliştirme Potansiyeli
- Yeni bölgeler veya farklı özellikler eklenerek model genişletilebilir ve sürekli güncellenebilir.
- Yapısal veri zenginleştirmesi veya coğrafi bilgiler entegre edilerek performans daha da geliştirilebilir.