AN6U5 çok iyi bir cevap verirken ileride başvurmak için birkaç nokta eklemek istedim. Bir Sıcak Kodlama (OHE) ve Etiket Kodlama dikkate alındığında , hangi modeli oluşturmaya çalıştığınızı anlamaya çalışmalıyız. Yani dikkate alacağımız iki model kategorisi şunlardır:
- Ağaç Tabanlı Modeller : Degrade Artırılmış Karar Ağaçları ve Rastgele Ormanlar.
- Ağaç Tabanlı Modeller : Doğrusal, kNN veya Sinir Ağı tabanlı.
Ağaç tabanlı modeller oluştururken ne zaman OHE uygulanacağını ve Etiket Kodlamanın ne zaman uygulanacağını düşünelim.
OHE'yi şu durumlarda uygularız:
- Olan değerler zaman birbirine yakın (- doğrusal veri olmayan) bir etiket kodlama yakın değerler hedef karşılık gelmektedir.
- Kategorik özellik sıralı olmadığında (köpek, kedi, fare).
Etiket kodlamasını şu durumlarda uygularız:
- Kategorik özellik sıralıdır (Jr. kg, Sr. kg, İlkokul, lise, vb.).
- Benzer kategorilere yakın etiketler atayan bir etiket kodlayıcısı bulabildiğimizde: Bu, baskı ipinde daha az sıçramaya neden olur ve bu nedenle uygulama süresini azaltır.
- Veri kümesindeki kategorik özelliklerin sayısı çok büyükse: Çok sayıda değere sahip kategorik bir özelliği kodlayan bir sıcak (1) yüksek bellek tüketimine ve (2) kategorik olmayan özelliklerin nadiren model tarafından kullanıldığı durumlara yol açabilir. Seyrek matrisler kullanıyorsanız, 1. vakayla ilgilenebilirsiniz. 2. durum, yalnızca bir alt özellik kümesi kullanarak bir ağaç oluşturursanız ortaya çıkabilir. Örneğin, 9 sayısal özelliğe ve 100 benzersiz değere sahip 1 kategorik özelliğe sahipseniz ve o kategorik özelliğe bir sıcak kodlanmışsa, 109 özellik elde edersiniz. Bir ağaç sadece bir özellik alt kümesine sahipse, ilk 9 sayısal özellik nadiren kullanılır. Bu durumda, bu alt kümenin parametre kontrol boyutunu artırabilirsiniz. Xgboost'da, sklearn's Random Forest max_features içinde, colsample_bytree olarak adlandırılır.
OHE ile devam etmek isterseniz, @ AN6U5'in önerdiği gibi, PCA'yı OHE ile birleştirmek isteyebilirsiniz.
Ağaç tabanlı olmayan modeller oluştururken OHE ve Etiket Kodlamanın ne zaman uygulanacağını düşünelim.
Etiket kodlamasını uygulamak için, Etiket Kodlamanın etkin şekilde kullanılabilmesi için özellik ve hedef arasındaki bağımlılığın doğrusal olması gerekir.
Benzer şekilde, bağımlılığın doğrusal olmaması durumunda, bunun için OHE kullanmak isteyebilirsiniz.
Not: Bu açıklamaların bir kısmına Coursera'dan Veri Bilimi Yarışması Nasıl Kazanılır konusuna atıfta bulunulmuştur .