• Wie Lineare Regression nur mit Polynom n-ten Grades statt Gerade Wobei die Gewichte sind mit
from sklearn.preprocessing 
import PolynomialFeatures 
 
pf = PolynomialFeatures(degree=2) #Erzeugen des Objekts mit dem Grad des Polynom 
pf.fit(x_train) #Bestimmung der Anzahl der zu berechnenden Features
x_train_transformed = pf.transform(x_train) #Transformieren der Daten 
x_test_transformed = pf.transform(x_test)
 
poly_regr = LinearRegression() 
poly_regr.fit(x_train_transformed, y_train) 
 
r2_score = poly_regr.score(x_test_transformed, y_test) 
print(f"R2-Score: {r2_score}")

Wahl des Grades


Wie bei knn mit den k-nÀchsten Nachbarn dient hier der Grad des Polynoms als Faktor, der beeinflusst werden kann. D.h. je nach Grad kann die Lineare Regression besser aber auch schnell sehr viel schlechter werden. Vergleicht man ein Polynom 2-Grades mit einem Vektor mit einem Feature bzw. mit zwei Feature erkennt man relativ schnell, wie schnell die Feature Anzahl ansteigt: 1-Feature→3-Feature 2-Feature → 6-Feature Ein Polynom 10-Grades ist deswegen nicht besser. Allgemein hÀngt die Wahl des Grades wieder vom Datensatz ab und muss er testet werden