|
@ -0,0 +1,29 @@ |
|
|
|
|
|
from sklearn.linear_model import ElasticNet |
|
|
|
|
|
from sklearn.preprocessing import PolynomialFeatures |
|
|
|
|
|
import numpy as np |
|
|
|
|
|
import matplotlib.pyplot as plt |
|
|
|
|
|
############################### |
|
|
|
|
|
#Datos originales |
|
|
|
|
|
############################### |
|
|
|
|
|
m = 100 |
|
|
|
|
|
X = 6 * np.random.rand(m, 1) - 3 |
|
|
|
|
|
y = 0.5 * X**2 + X + 2 + np.random.randn(m, 1) |
|
|
|
|
|
|
|
|
|
|
|
plt.plot(X,y,".", label = "Datos originales") |
|
|
|
|
|
############################### |
|
|
|
|
|
poly_features = PolynomialFeatures(degree=2, include_bias=False) |
|
|
|
|
|
X_pol = poly_features.fit_transform(X) |
|
|
|
|
|
elastic_net = ElasticNet(alpha=0.1, l1_ratio=0.5) |
|
|
|
|
|
elastic_net.fit(X_pol, y) |
|
|
|
|
|
yout=elastic_net.predict(X_pol) |
|
|
|
|
|
plt.plot(X,yout,"*", label = "Predicciones") |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# naming the x axis |
|
|
|
|
|
plt.xlabel('Eje X') |
|
|
|
|
|
# naming the y axis |
|
|
|
|
|
plt.ylabel('Eje Y') |
|
|
|
|
|
# giving a title to my graph |
|
|
|
|
|
|
|
|
|
|
|
plt.legend() |
|
|
|
|
|
plt.show() |