Örnek ağırlıkları uygulamak istiyorum ve aynı zamanda bir özellik dönüşümü yapması gereken sklearn'den bir boru hattı kullanın. polinom ve ardından bir regresör, örn. ExtraTrees.sklearn boru hattı - Bir boru hattında bir polinom özellik dönüşümü uygulandıktan sonra örnek ağırlıkları uygulanması
#Feature generation
X = np.random.rand(200,4)
Y = np.random.rand(200)
#Feature transformation
poly = PolynomialFeatures(degree=2)
poly.fit_transform(X)
#Model generation and fit
clf = ExtraTreesRegressor(n_estimators=5, max_depth = 3)
weights = [1]*100 + [2]*100
clf.fit(X,Y, weights)
Ama:
from sklearn.ensemble import ExtraTreesRegressor
import numpy as np
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import PolynomialFeatures
Herşey sürece ben ayrı özelliklere dönüştürmek ve üretmek ve sonrasında modeli eğitmek yanı çalışır:
ben aşağıdaki iki örnekte aşağıdaki paketleri kullanıyorum Bir boru hattında bunu yapmak işe yaramıyor:
#Pipeline generation
pipe = Pipeline([('poly2', PolynomialFeatures(degree=2)), ('ExtraTrees', ExtraTreesRegressor(n_estimators=5, max_depth = 3))])
#Feature generation
X = np.random.rand(200,4)
Y = np.random.rand(200)
#Fitting model
clf = pipe
weights = [1]*100 + [2]*100
clf.fit(X,Y, weights)
lowing error: TypeError: fit() en fazla 3 argümanı alır (4 verilen) Bu basit örnekte kodu değiştirmek hiç sorun değil, fakat gerçek kodumdaki gerçek veriler üzerinde birkaç farklı test yapmak istediğimde, Boru hatları ve numune ağırlığı
Teşekkürler, Kevin! Bu problemi çözdü ve örnek, parametrelerin boru hatlarında nasıl çalıştığını görmek gerçekten güzel! – stefanE