Etkileşimli ve Polinom Özellikler Oluşturma
PolynomialFeatures, elle etkileşim terimleri, oran özellikleri ve sürekli değişkenleri bölmelere ayırma.
Etkileşimli ve Polinom Özellikler Oluşturma, CoddyKit'te ücretsiz bir Learn AI with Python dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Learn AI with Python öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Learn AI with Python kursu toplamda 4 dersten oluşur.
Yeni Özellikler Neden Oluşturulur
Doğrusal modeller yalnızca doğrusal ilişkileri yakalar. Etkileşim ve polinom özellikleri oluşturarak basit modellerin eğrileri ve değişkenler arasındaki birleşik etkileri ifade etmesini sağlarsınız.
Etkileşim Özellikleri Nedir
Bir etkileşim, iki özelliği çarpar; örneğin area = length * width. İki girdiye birlikte bağlı etkileri yakalar; bu etkileri özelliklerin hiçbiri tek başına açıklayamaz.
PolynomialFeatures Temelleri
PolynomialFeatures, özelliklerin seçilen degree değerine kadar üslerini ve çarpımlarını otomatik olarak üretir. 2. derece kareleri ve ikili çarpımları ekler.
from sklearn.preprocessing import PolynomialFeatures
import numpy as np
X = np.array([[2, 3]])
poly = PolynomialFeatures(degree=2)
print(poly.fit_transform(X))
# 1, x1, x2, x1^2, x1*x2, x2^2interaction_only Kipi
interaction_only=True ayarı, x1^2 gibi saf üsleri kaldırırken çapraz çarpımları tutar. Bu, eğrilik yerine yalnızca birleşik etkileri istediğinizde kullanışlıdır.
from sklearn.preprocessing import PolynomialFeatures
poly = PolynomialFeatures(degree=2, interaction_only=True, include_bias=False)
X_int = poly.fit_transform(X)Özellik Patlamasına Dikkat Edin
Yüksek dereceler çok sayıda özellik ve aşırı öğrenme riski oluşturur. 10 girdiye sahipken 3. derece yüzlerce sütun üretir. Dereceyi düşük tutun (2 veya 3) ve özellik seçimi ya da düzenlileştirmeyle birleştirin.
Elle Oluşturulan Oran Özellikleri
Alan bilgisi çoğu zaman kaba kuvvetli aramadan daha iyi sonuç verir. Metrekare başına fiyat veya gösterim başına tıklama gibi elle oluşturulmuş oranlar, polinom açılımının bulamayacağı anlamı taşır.
import pandas as pd
df["price_per_sqm"] = df["price"] / df["area"]
df["ctr"] = df["clicks"] / df["impressions"]pd.cut ile Aralıklara Ayırma
Aralıklara ayırma, sürekli bir değişkeni kategorilere dönüştürür. pd.cut bir sütunu aralıklara böler; doğrusal olmayan etkileri yakalamak veya yaşları, gelirleri ve benzerlerini gruplamak için kullanışlıdır.
import pandas as pd
df["age_group"] = pd.cut(
df["age"],
bins=[0, 18, 35, 60, 120],
labels=["minor", "young", "adult", "senior"],
)Eşit Frekanslı Aralıklara Ayırma
pd.qcut, yaklaşık eşit sayıda gözlem içeren aralıklar (kantiller) oluşturur; dağılım çarpık olduğunda ve dengeli gruplar istediğinizde kullanışlıdır.
import pandas as pd
df["income_quartile"] = pd.qcut(df["income"], q=4, labels=False)Logaritmik Dönüşümle Çarpıklığı Giderme
Sağa çarpık özellikler (gelir, fiyatlar, sayımlar) birçok modele zarar verir. Bir logaritmik dönüşüm büyük değerleri sıkıştırır ve dağılımı daha simetrik hale getirir.
import numpy as np
# log1p handles zeros safely: log(1 + x)
df["log_income"] = np.log1p(df["income"])Karekök ve Diğer Dönüşümler
Karekök dönüşümü de çarpıklığı azaltır, ancak logaritmik dönüşümden daha yumuşak biçimde; bu nedenle sayım verileri için uygundur. Histogramı en iyi simetrikleştiren dönüşümü seçin.
import numpy as np
df["sqrt_count"] = np.sqrt(df["count"])
# inspect df["sqrt_count"].hist() to confirm reduced skewHepsini Birleştirme
Yaklaşımları birleştirin: çarpık sütunlara logaritmik dönüşüm uygulayın, eşiklerin önemli olduğu yerlerde aralıklara ayırın, alana özgü oranlar ekleyin ve etkileşimler için PolynomialFeatures kullanın. Yeni özelliklerin çapraz doğrulanmış puanları gerçekten iyileştirdiğini her zaman doğrulayın.
Kısa Sınama
Özellik mühendisliği bilginizi sınayın.
Özet
Özet: Basit modellere yardımcı olmak için özellikler oluşturun. PolynomialFeatures, degree ve interaction_only ile çarpımlar ve üsler ekler (özellik patlamasına dikkat edin). Alan bilginizden elle oranlar oluşturun, pd.cut/pd.qcut ile aralıklara ayırın ve logaritmik veya sqrt dönüşümleriyle çarpıklığı giderin. Kazanımları her zaman doğrulayın.
Sıkça Sorulan Sorular
“Etkileşimli ve Polinom Özellikler Oluşturma” dersi ücretsiz mi?
Evet — “Etkileşimli ve Polinom Özellikler Oluşturma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Learn AI with Python kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Learn AI with Python kursu toplamda 4 dersten oluşur.
“Etkileşimli ve Polinom Özellikler Oluşturma” dersinde ne öğreneceğim?
PolynomialFeatures, elle etkileşim terimleri, oran özellikleri ve sürekli değişkenleri bölmelere ayırma. Learn AI with Python ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Learn AI with Python öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Learn AI with Python, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“Etkileşimli ve Polinom Özellikler Oluşturma” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Learn AI with Python dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Learn AI with Python dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Özellik Seçme Yöntemleri
- Etkileşimli ve Polinom Özellikler Oluşturma
- Hedef Kodlama ve Gelişmiş Kategorik Veri İşleme
- Featuretools ile Otomatik Özellik Mühendisliği