Veri Bilimi Serüveni 3
Selam bu yazımda sizlere eğitimde yaptığım 2. projemden bahsetmek istiyorum. Proje 2 ana aşamadan oluşuyor. Projede kullandığım genel kütüphaneler:
1. aşama da kullanacağımız veriyi elde etmek için Web Scraping tekniğini kullandım. Web scraping, Vikipedi’ ya tanımına göre web sitelerinden bilgi çıkartmanın bilgisayar programı tekniğidir. Yani kişinin bir web sitesinden istediği veriyi toplaması ve işlemesi olarak özetleyebiliriz. Tabi ki her siteden web scraping yapılamayabilir çünkü bazı siteler bu konuda size izin vermeyebiliyor.
Web scraping yapmak istediğimiz html ve css hakkında temel bilgi sahibi olmakta yarar var. Çünkü istediğiniz veriyi çekmek için o veriye siteden ulaşmak için html ve css bilgisi sizlere yardımcı olucaktır.
Web scraping yapmak için birçok seçenekten yararlanabilirsiniz. Ben Requests ve BeautifulSoup kütüphanelerini kullandım. BeautifulSoup, HTML veya XML dosyalarını işlemek için oluşturulmuş güçlü ve hızlı bir kütüphanedir.
2. aşama ise çektiğimiz veri üzerinde data preprocessing, feature engineering ve regresyon modeli geliştirmektir. Projemi 2. el araba fiyat tahminlemesi üzerine yaptım. Öncelikle datayı inceleyerek işe başladım.
Datayı çeşitli grafikler üzerinde inceleyerek kilometre-fiyat,yıl-fiyat gibi dağılımlarını inceledim. Örnek olarak bir grafik gösterecek olursam;
Yaptığım incelemeler sonucunda elimdeki data üzerinden preprocessing ve feature engineer yaparak datayı modellemeye hazır hale getirmeye çalıştım. Datayı düzenledikçe son haliyle kaydedip tekrardan baktığınızda kolaylıkla en temiz halinden devam edebiliriz. Bunun için to_pickle kullanabiliriz.
Datayı inceleyerek modeli olumsuz etkileyeceğini düşündüğüm kilometre ve fiyat bazında outliers(ayrık değerler) dikkatimi çekti ve bu yüzden gerekli düzenmeleri yaptım.(Ayrık değerleri grafik yardımıyla tespit edebiliriz. Ancak bu sefer ben ayrık değeri sıralama yaparak tespit ettim.) Ve artık data modelleme yapmak için hazır.Modelleme yaparken bazı parametreler karar almanızda ve süreci yönlendirmenizde size yardımcı olur.
OLS sonuçlarını inceleyerek modelimizin başarısını analiz edebiliriz. R-squared,Cond. No gibi çıktıların değerlerini incelediğimizde değerlerin fena olmadığını görüyoruz. Birde Sklearn ile modelimizin başarısını inceleyebiliriz.
Modelimizin çıktılarına baktığımızda ve cross validation değerlerine baktığımızda Ridge Regresyonu ile devam etmeye karar verebiliriz.
Sonucumuza grafik olarak da baktığımızda güzel bir sonuç elde ettiğimizi görebiliriyoruz. Üzerine çalışırsa veya daha farklı feature lar ekleyerek daha iyi sonuçlara da gidebilir. Sonucun şuan için kötü olduğunu düşünmediğim için burada bırakıyorum. Yazımı okuduğunuz için teşekkürler.