Scikit-learn ile gerçekleştirilen değişken seçimi ve bölütlemeye yönelik çalışmaları inceleyin Verilerinizi optimize ederek en iyi sonuçları elde edin Makine öğrenmesine ilgi duyan herkesin mutlaka okuması gereken bir yazı!

Bir veri setindeki önemli değişkenlerin seçimi ve farklı gruplara ayrılarak incelenmesi, veri analizi için çok önemlidir. Scikit-learn kütüphanesi ile yapılan değişken seçimi ve bölütleme çalışmaları da bu amaçla yapılmaktadır.
Bu çalışmalarda değişken seçiminde engelleme yöntemi ve sarılmış yöntem kullanılmaktadır. Engelleme yöntemi kullanıldığında, model performansını artırmak için gereksiz veriler elenmektedir. Özellikle Lasso, Ridge ve Elastic Net yöntemleri çok tercih edilmektedir. Sarılmış yöntemlerde ise model dışında hesaplamalar yapılır ve en önemli değişkenler sırasıyla modele eklenir veya çıkartılır.
Bölütleme yöntemlerinde ise veri setindeki gözlemler benzerlikleri doğrultusunda farklı kümeler halinde incelenmektedir. K-Means ve Hierarchical Clustering yöntemleri en yaygın kullanılan bölütleme yöntemlerindendir. Ayrıca yoğunluğa dayanan DBSCAN yöntemi de kullanılmaktadır.
Değişken Seçimi
Model performansını artırmak ve gereksiz verilerden kurtulmak için değişken seçimi oldukça önemlidir. Değişken seçimi yöntemleri, modelin tutarlılığını güçlendirir ve aynı zamanda model oluşturma sürecinde hız kazandırır.
Gömülü yöntemler, değişkenlerin etkisi doğrudan model oluşturma sırasında hesaplanır ve önemsiz olanlar kademeli olarak eleme yöntemiyle çıkartılır. Bunların içerisinde en yaygın kullanılan yöntemler Lasso Regresyonu, Ridge Regresyonu ve Elastic Net Regresyonu'dur. Lasso Regresyonu, L1 düzenlemesi kullanarak değişkenlerin katsayıları sıfıra yaklaştırır ve etkisi az olanlar modele dahil edilmez. Ridge Regresyonu ise L2 düzenlemesi kullanarak değişkenlerin katsayılarını küçültür ve etkisi az olanlar modele daha az dahil edilir. Elastic Net Regresyonu ise hem L1 hem de L2 düzenlemeleri kullanarak değişken katsayılarını küçültür ve etkilerini azaltır.
Sarılmış yöntemler ise değişkenlerin etkisi model dışında hesaplanarak modele dahil edilmelerine karar verilir ve bunlar öncelik sırasına göre eklenir veya çıkartılır. Bunların içerisinde en yaygın kullanılan yöntemler RFE (Recursive Feature Elimination) ve PCA (Principal Component Analysis)'dır. RFE, veri setindeki n sayıda en önemli değişken belirlenir ve diğerleri elenir. Geriye kalan değişkenler tekrar önem sırasına göre sıralanır ve en önemli n değişken seçilir. Bu işlem tekrarlanarak son adımda belirlenen en küçük n sayıda değişken seçilir. PCA ise değişkenler arasındaki çoklu bağımlılık düşürülür ve veri seti boyutu azaltılır. Yeni oluşan değişkenler özellikle görselleştirme amaçlı kullanılır.
Gömülü Yöntemler
doğrudan model oluşturma sırasında değişkenlerin etkisi hesaplanır ve model performansını artırmak amacıyla önemsiz olanlar kademeli olarak eleme yöntemiyle çıkartılır. Bu yöntemler arasında en sık kullanılanlar Lasso, Ridge ve Elastic Net regresyonlarıdır.
Lasso Regresyonu | Ridge Regresyonu | Elastic Net Regresyonu |
---|---|---|
L1 düzenlemesi kullanarak | L2 düzenlemesi kullanarak | Hem L1 hem de L2 düzenlemeleri kullanarak |
değişkenlerin katsayıları sıfıra yaklaştırılır | değişkenlerin katsayıları küçültülür | değişken katsayılarını küçültür ve etkilerini azaltır |
ve etkisi az olanlar modele dahil edilmez. | Etkisi az olanlar modele daha az dahil edilir. |
Yukarıdaki tabloda, değişken seçimi için kullanılan Lasso, Ridge ve Elastic Net regresyonlarının farklılıkları yer almaktadır. Lasso regresyonu, L1 düzenlemesi kullanarak değişkenlerin katsayılarını sıfıra yaklaştırarak en etkisiz olanları modele dahil etmez. Ridge regresyonu ise L2 düzenlemesi kullanarak değişkenlerin katsayılarını küçültür ve daha az etkili olanları modele daha az dahil eder. Elastic Net regresyonu ise hem L1 hem de L2 düzenlemeleri kullanarak değişkenleri etkisiz hale getirir ve böylece modelin performansını artırır.
Lasso Regresyonu
Lasso Regresyonu, L1 düzenlemesi kullanarak değişkenlerin katsayılarını sıfıra yaklaştırarak etkileri az olanların modelde yer almamasını sağlar. Bu yöntem, çok fazla değişken içeren veri setlerinde kullanılarak modele yalnızca önemli değişkenlerin eklenmesine yardımcı olur.
Lasso Regresyonu ile ilgili tabelada katsayılardaki sıfıra yaklaştırma örneği gösterilmiştir:
Değişken | Katsayı |
---|---|
X1 | 0.5 |
X2 | 0.2 |
X3 | 0 |
X4 | 0 |
Yukarıdaki tabloda görüldüğü gibi, Lasso Regresyonu ile X3 ve X4 değişkenlerinin katsayıları sıfıra yaklaştırılmış ve modele dahil edilmemiştir.
Ridge Regresyonu
Ridge regresyonu, değişkenler arasındaki etkileşimlerin azaltılmasına yardımcı olan bir yöntemdir. L2 düzenlemesi kullanarak, değişkenlerin katsayıları küçültülür. Bu sayede etkisi az olan değişkenler modele daha az ya da hiç dahil edilmez. Aynı zamanda, modelin aşırı öğrenmesinin önüne geçer ve daha kaliteli sonuçlar elde edilmesini sağlar.
Ridge regresyonu, L2 düzenlemesi sayesinde, modelin kayıp fonksiyonuna ceza ekleyerek katsayıları küçültmekte ve böylece modelin karmaşıklığını düşürmektedir. Daha az değişkenin modele dahil edilmesi, aynı zamanda hesaplama süresini de azaltabilir.
Elastic Net Regresyonu
Elastic Net Regresyonu, Lasso ve Ridge regresyonu yöntemlerinin bir kombinasyonunu kullanarak etkisi az olan değişkenleri tespit eder. Hem L1 hem de L2 düzenlemeleri kullanarak değişken katsayılarını küçültür ve etkilerini azaltır. Bu sayede, bu yöntem daha kararlı sonuçlar elde edilmesini sağlar.
Özellikle, yüksek boyutlu veri setlerinde bu yöntem kullanılır. Lasso yöntemi modeldeki gereksiz değişkenleri ayıklarken, Ridge yöntemi değişkenlerin katsayılarını küçültür. Elastic Net Regresyonu, Lasso ve Ridge yöntemlerinin zayıf yönlerini birleştirerek model performansını artırır.
Avantajları | Dezavantajları |
---|---|
- Çoklu katsayı düzenlemesi | - Modeli oluşturmak için daha uzun süre |
- Değişkenleri seçerken sıkı bir kontrol yapar | - İlgili bağımlılık yüksek olduğunda işe yaramaz |
Elastic Net Regresyonu, Lasso ve Ridge regresyonu yöntemlerinde olduğu gibi değişkenlerin etkisini azaltırken, model performansını da artırır. Bu yöntem, düşük boyutlu verilerde daha az işe yararken, yüksek boyutlu verilerde daha etkilidir. Elastic Net Regresyonu, özellikle veri setlerindeki çoklu bağımlılıklarla karşılaşıldığında, modele daha kararlı sonuçlar elde edilmesini sağlayarak mükemmel bir seçenektir.
Sarılmış Yöntemler
Sarılmış yöntemler değişken seçiminde sıklıkla kullanılan bir yöntemdir. Bu yöntemde değişkenlerin etkisi model dışında hesaplanarak modele dahil edilmelerine karar verilir ve bunlar öncelik sırasına göre eklenir veya çıkartılır. Sarılmış yöntemleri kullanarak veri setindeki gereksiz değişkenler elenerek model performansı artırılır.
Bir diğer sarılmış yöntem olan RFE (Recursive Feature Elimination) ise değişkenlerin önem derecesini belirleyerek aşama aşama öncelik sırasına göre kullanılacak değişken sayısını belirler. Veri setindeki n sayıda en önemli değişken belirlenir ve diğerleri elenir. Geriye kalan değişkenler tekrar önem sırasına göre sıralanır ve en önemli n değişken seçilir. Bu işlem tekrarlanarak son adımda belirlenen en küçük n sayıda değişken seçilir.
- Lasso Regresyonu
- Ridge Regresyonu
- Elastic Net Regresyonu
Başlıca sarılmış yöntemler ise Lasso Regresyonu, Ridge Regresyonu ve Elastic Net Regresyonu'dur. Lasso Regresyonu L1 düzenlemesi kullanarak değişkenlerin katsayıları sıfıra yaklaştırarak etkisi az olanların modele dahil edilmemesini sağlar. Ridge Regresyonu ise L2 düzenlemesi kullanarak değişkenlerin katsayılarını küçültür ve etkisi az olanların modele daha az dahil edilmesini sağlar. Elastic Net Regresyonu ise hem L1 hem de L2 düzenlemeleri kullanarak değişken katsayılarını küçültür ve etkilerini azaltır.
RFE (Recursive Feature Elimination)
Değişken seçimi işleminde kullanılan bir yöntem olan RFE (Recursive Feature Elimination), veri setindeki en önemli n değişkeni belirlemek için kullanılır. İlk olarak, veri setindeki tüm değişkenler kullanılarak model oluşturulur ve değişkenlerin etkisi hesaplanır. Daha sonra, en az öneme sahip olan değişkenler eleme yöntemiyle kademeli olarak çıkartılır. Geriye kalan değişkenler tekrar önem sırasına göre sıralanır ve en önemli n değişken seçilir.
Bu işlem sonucunda elde edilen n sayıda değişken, modele en çok katkıda bulunan değişkenlerdir. Ancak, bu sayı fazla olduğunda model karmaşık hale gelebilir ve performansı düşebilir. Bu nedenle, son adımda belirlenen en küçük n sayıda değişken seçilerek model performansı optimize edilir. RFE yöntemi, model performansını artırmak ve gereksiz verilerden kurtulmak için etkili bir yöntem olarak kullanılabilir.
PCA (Principal Component Analysis)
PCA, veri setindeki çoklu bağımlılıkları ortadan kaldırarak veri boyutunu azaltmak için kullanılan bir tekniktir. Veri setindeki değişkenler arasındaki ilişkiler incelenir ve en önemli olanlar seçilerek yeni bir değişken kümesi oluşturulur.
Bu yeni değişkenler, özellikle görselleştirme amaçlı kullanılır. Örneğin, iki boyutlu bir grafikte tüm verileri görüntülemek mümkün olmayabilir. PCA ile elde edilen yeni değişkenler, veri setinin daha az boyutta tutulmasına ve daha kolay anlaşılabilmesine yardımcı olur.
Aşağıdaki tabloda, PCA yöntemi kullanılarak iris veri setindeki değişkenlerin boyut azaltması işlemi gösterilmiştir:
Değişken | PCA İle Elde Edilen Değişken 1 | PCA İle Elde Edilen Değişken 2 |
---|---|---|
Çanak Yaprak Uzunluğu | 0.891 | -0.460 |
Çanak Yaprak Genişliği | 0.361 | -0.082 |
Tepal Yaprak Uzunluğu | 0.254 | 0.659 |
Tepal Yaprak Genişliği | 0.281 | 0.603 |
Burada, iris veri setindeki dört değişken PCA ile iki boyuta indirgenmiştir. PCA ile elde edilen yeni değişkenler, orijinal değişkenlerin bileşenleri olarak yorumlanabilir. Örneğin, PCA ile elde edilen ilk değişken, çanak yaprak uzunluğu ve genişliği ile ilgili önemli bilgileri içerir.
Bu nedenle, PCA sayesinde veri setindeki değişkenlerin boyutu azaltılırken, önemli bilgiler kaybolmamış olur.
Bölütleme
Veri setindeki gözlemleri birbirinden farklı gruplara ayırarak daha iyi anlamlandırmak için bölütleme yöntemleri kullanılır. Bu yöntemler arasında K-Means, Hierarchical Clustering ve DBSCAN gibi birçok algoritma bulunmaktadır.
K-Means, belirlenen k sayısı kadar kümenin oluşacağı varsayımıyla hareket eder. İlk olarak, gözlemler rastgele olan merkezlerine en yakın olan kümeye atanır. Daha sonra merkezler güncellenir ve bu işlem belirli sayıda tekrarlanır. Gözlemler belirlenen küme numaralarına göre sınıflandırılır. K-Means'ın en büyük avantajı, çok sayıda veri ile çalışırken hızlı sonuçlar alabilmesidir.
Hierarchical Clustering, öncelikle her gözlemin tek bir küme olarak ele alındığı bir yol izler. Sonra, gözlem benzerlikleri hesaplanarak en yakın olan iki küme birleştirilir. Bu sayede küme sayısı azalır. Bu işlem, küme sayısı tek bir kümeye inene kadar tekrarlanır. Bu yöntem, veri setinin hiyerarşik yapısını görselleştirmek için tercih edilir.
DBSCAN, veri setindeki yoğunluğa dayalı olarak bir bölütleme yöntemidir. Noktalar, önce çekirdek noktası, etiketlenemez noktalar (noise) ve diğer noktalar olarak ayrılır. Daha sonra, çekirdek noktaları birbirleriyle birleştirilir ve ayrık bileşenler tanımlanır. DBSCAN, yoğunluklara göre etkili bir şekilde noktaların gruplandırılmasına izin verir.
Yukarıda bahsedilen bölütleme yöntemlerinin doğru bir şekilde kullanılması, veri setindeki gözlemlerin daha net bir anlamlandırılması ve daha iyi sonuçlar elde edilmesi için oldukça önemlidir.
K-Means
K-Means, veri setindeki gözlemleri belirlenen sayıda küme halinde ayırmak için kullanılan bir bölütleme yöntemidir. Bu yöntemde, öncelikle kaç küme olacağı belirlenir. Daha sonra gözlemler rastgele merkez noktalara atanır. Her bir gözlem, bu merkezlere olan mesafesi hesaplanarak en yakın olan kümeye atanır. Merkez noktaları güncellenir ve bu işlem belirli sayıda tekrarlanır. Kümeler belirli numaralara göre sınıflandırılır.
Özellikle nüfus, pazarlama, sosyoloji gibi alanlarda sıklıkla kullanılan K-Means, etkili bir veri analizi sağlamaktadır. Bölütleme işlemi sayesinde benzerlik gösteren gözlemler gruplandırılarak daha kolay bir görselleştirme sağlanır. İşletmelerde, müşteri segmentasyonu, ürün kategorizasyonu, sektör analizi, veri madenciliği ve öngörülebilirlik gibi konularda kullanılan K-Means, doğru bir veri analizi sağlamak için önemlidir.
Hierarchical Clustering
Hierarchical clustering, diğer bölütleme yöntemlerinden farklı olarak, verilerin hiyerarşik bir yapıda gruplandırılmasını sağlar. Bu işlem, her gözlem başlangıçta tek bir küme olarak düşünülerek başlar. Daha sonra, gözlem benzerlikleri hesaplanır ve en yakın olan iki küme birleştirilir.
Birleştirme işlemi, seçilen benzerlik ölçütüne göre farklı yöntemlerle yapılabilir. Örneğin, Veri setinizde okul adı geçen öğrencileri gruplandırmak için benzer okul türlerine sahip öğrencileri birleştirebilirsiniz.
Hierarchical clustering yöntemi ile grupların sayısı küçültülürken, veri setindeki kümeleme yaparken gözlemler aynı zamanda benzerliklerinin en yüksek olduğu verilerle birlikte toplanır. Bu sayede, küçük veri setleri elde edilir ve aynı zamanda anahtar ilişkileri belirlemek kolaylaşır.
DBSCAN (Density-based Spatial Clustering of Applications with Noise)
DBSCAN, yoğunluğa dayalı bir bölütleme yöntemidir. Veri setindeki noktalar önce çekirdek noktası, etiketlenemez noktalar (noise) ve diğer noktalar olarak ayrılır. Çekirdek noktaları belirlemek için veri setinde bir adet eps değeri belirlenir, bu değere göre çekirdek noktaları ve etiketlenemez noktalar belirlenir.
Çekirdek noktaları belirlendikten sonra, belirlenen eps(komşuluk mesafesi) değerine göre her bir çekirdek noktasının komşu noktaları hesaplanır. Eğer bu komşuluk mesafesi içindeki gözlemler çekirdek bir noktanın etrafındaysa, o nokta da çekirdek noktaları arasına eklenir. Bu şekilde tüm çekirdek noktaları birbirleriyle birleştirilir.
Daha sonra, kümelerdeki gözlemler ve bulunamayan noktalar olarak ayrılır. Tüm gözlemler en yakın çekirdek noktanın etki alanındaysa, bu nokta ait olduğu kümeye atanır ve etki alanına giren tüm komşu noktaları da aynı kümeye atanır. Eğer etki alanında yeterli sayıda nokta yoksa, bu nokta etiketsiz olarak kalır. Son olarak, tüm etiketsiz noktalar noise kategorisine atanır.
DBSCAN yöntemi özellikle yoğunluk tabanlı uygulamalar için idealdir. Bu yöntem, veri setindeki aykırı değerlerden kurtulmak ve kümelemeyi doğru bir şekilde gerçekleştirmek için oldukça efektif bir yöntemdir.