Este curso esta increible!!!
Introducción al curso
Tu primera regresión lineal con scikit-learn
Análisis de datos para tu primera regresión lineal
Entrenando un modelo de regresión lineal con scikit-learn
Cómo funciona la regresión lineal
¿Qué es la regresión lineal?
Cuándo utilizar un modelo de regresión lineal
Función de pérdida y optimización: mínimos cuadrados
Evaluando el modelo: R^2 y MSE
Quiz: Cómo funciona la regresión lineal
Regresión lineal multivariable
Regresión lineal multivariable
Análisis de regresión multivariable
Proyecto práctico
Regresión lineal para predecir los gastos médicos de pacientes
Exploración y preparación de datos
Análisis de correlación de los datos
Entrenamiento del modelo
Evaluando el modelo
Mejorando el modelo
Quiz: Proyecto práctico
Pasos siguientes
¿Qué hay más allá de la linealidad?
Siguientes pasos en modelos de inteligencia artificial
Aportes 8
Preguntas 3
Este curso esta increible!!!
Un fragmento para predecir el precio de las viviendas con diferentes número de habitaciones:
n_rooms = 6
n_rooms_std = sc_x.transform(np.array([n_rooms]).reshape(-1, 1))
std_prediction = slr.predict(n_rooms_std)
price = float(sc_y.inverse_transform(std_prediction))*1000
print(f'El precio estimado de una vivienda de {n_rooms} habitaciones en boston es de US${round(price, 2)}')
output>>> El precio estimado de una vivienda de 6 habitaciones en Boston es de US$19942.03
Tiene error el anteriro, este esta bien
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LinearRegression
#Promedio de casas, y mediada de precios
#reshape para eliminar problema de
#Expected 2D array , got 1D array
X=df[‘RM’].values.reshape(-1,1)
y=df[‘MEDV’].values.reshape(-1,1)
sc_x = StandardScaler()
sc_y = StandardScaler()
#standarizacion de los datos
X_std = sc_x.fit_transform(X)
y_std = sc_y.fit_transform(y)
slr= LinearRegression()
slr.fit(X_std, y_std)
#GRAFICAR
plt.ylabel(‘Mediana Precio casas en miles MDEV’)
plt.xlabel(‘Promedio habitaciones RM’)
#scatter
plt.scatter(X_std,y_std);
#linea roja de predicción de modelo entrenado slr
plt.plot(X_std, slr.predict(X_std),color=‘R’)
import numpy as np
num_habitaciones = 5
num_habitaciones_std = sc_x.transform(np.array([num_habitaciones]).reshape(-1,1))
precio = sc_y.inverse_transform(slr.predict(num_habitaciones_std))
print("El precio de una casa con 5 habitaciones en Boston es de ", precio)
Quizas sirva de aclaracion para alguien, con el -1 en reshape(-1,1) le decimos a numpy que ‘decifre’ la nueva dimension basado en la longitud de la dimension previa, es decir si teniamos una dimension de (4,) ahora tendremos una dimension igual a (4,1), si hubieramos puesto reshape(1,-1) tendríamos una dimensión igual a (1,4)
|
Fuente: https://stackoverflow.com/questions/18691084/what-does-1-mean-in-numpy-reshape
una representation grafica de lo que hace .reshape(-1,1)
[2 3 4 5 6 7 8]
la forma es (7,) lo que es solo una dimension
[[2]
[3]
[4]
[5]
[6]
[7]
[8]]
su forma es de (7,1) por lo que se le agrega una dimension
Están chidos estos cursos en los que comienzan con práctica y luego se pasa a la teoría.
Le falto algo en el print().
"El precio PROMEDIO de una casa con 5 habitaciones en boston es de"
El pronostico en regresion se basa en la media, donde ese sera el valor medio pronosticado en la variable explicada para un valor dado de X (variable explicativa)
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LinearRegression
#Promedio de casas, y mediada de precios
#reshape para eliminar problema de
#Expected 2D array , got 1D array
X=df[‘RM’].values.reshape(-1,1)
y=df[‘MEDV’].values.reshape(-1,1)
sc_x = StandardScaler()
sc_y = StandardScaler()
#standarizacion de los datos
X_std = sc_x.fit_transform(X)
y_std = sc_x.fit_transform(y)
slr= LinearRegression()
slr.fit(X_std, y_std)
plt.ylabel(‘Mediana Precio casas en miles MDEV’)
plt.xlabel(‘Promedio habitaciones RM’)
#scatter
plt.scatter(X_std,y_std);
#linea roja de predicción de modelo entrenado slr
plt.plot(X_std, slr.predict(X_std),color=‘R’)
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.