-
class sklearn.linear_model.LinearRegression(*, fit_intercept=True, normalize=False, copy_X=True, n_jobs=None, positive=False)
[source] -
Regresión lineal por mínimos cuadrados ordinarios.
LinearRegression se ajusta a un modelo lineal con coeficientes w = (w1,…, wp) para minimizar la suma residual de cuadrados entre los objetivos observados en el conjunto de datos y los objetivos predichos por la aproximación lineal.
- Parámetros
-
-
fit_interceptbool, default=True
-
Ya sea para calcular la intersección para este modelo. Si se establece en False, no se utilizará ninguna intersección en los cálculos (es decir, se espera que los datos estén centrados).
-
normalizebool, default=False
-
Este parámetro se ignora cuando
fit_intercept
está establecido en False. Si es verdadero, los regresores X se normalizarán antes de la regresión restando la media y dividiendo por la norma l2. Si desea estandarizar, utiliceStandardScaler
antes de llamarfit
en un estimador connormalize=False
. -
copy_Xbool, default=True
-
Si es Verdadero, se copiará X; de lo contrario, puede sobrescribirse.
-
n_jobsint, default=None
-
El número de trabajos que se utilizarán para el cálculo. Esto solo proporcionará una aceleración para n_targets> 1 y suficientes problemas grandes.
None
significa 1 a menos que en unjoblib.parallel_backend
contexto.-1
significa utilizar todos los procesadores. Ver Glosario para más detalles. -
positivebool, default=False
-
Cuando se establece en
True
, obliga a los coeficientes a ser positivos. Esta opción solo es compatible con matrices densas.Nuevo en la versión 0.24.
-
- Atributos
-
-
coef_array of shape (n_features, ) or (n_targets, n_features)
-
Coeficientes estimados para el problema de regresión lineal. Si se pasan varios objetivos durante el ajuste (y 2D), esta es una matriz de formas 2D (n_targets, n_features), mientras que si solo se pasa un objetivo, esta es una matriz 1D de longitud n_features.
-
rank_int
-
Rango de matriz
X
. Solo disponible cuandoX
es denso. -
singular_array of shape (min(X, y),)
-
Valores singulares de
X
. Solo disponible cuandoX
es denso. -
intercept_float or array of shape (n_targets,)
-
Término independiente en el modelo lineal. Establecer en 0.0 si
fit_intercept = False
.
-
Ver también
-
Ridge
-
La regresión de crestas aborda algunos de los problemas de mínimos cuadrados ordinarios al imponer una penalización sobre el tamaño de los coeficientes con regularización l2.
-
Lasso
-
El Lasso es un modelo lineal que estima coeficientes escasos con regularización l1.
-
ElasticNet
-
Elastic-Net es un modelo de regresión lineal entrenado con regularización normal de los coeficientes tanto en l1 como en l2.
Notas
Desde el punto de vista de la implementación, esto es simplemente mínimos cuadrados ordinarios (scipy.linalg.lstsq) o mínimos cuadrados no negativos (scipy.optimize.nnls) envueltos como un objeto predictor.
Ejemplos de
>>> import numpy as np >>> from sklearn.linear_model import LinearRegression >>> X = np.array([[1, 1], [1, 2], [2, 2], [2, 3]]) >>> # y = 1 * x_0 + 2 * x_1 + 3 >>> y = np.dot(X, np.array([1, 2])) + 3 >>> reg = LinearRegression().fit(X, y) >>> reg.score(X, y) 1.0 >>> reg.coef_ array([1., 2.]) >>> reg.intercept_ 3.0000... >>> reg.predict(np.array([[3, 5]])) array([16.])
Métodos
fit
(X, y[, sample_weight])Ajustar modelo lineal.
get_params
([deep])Obtenga parámetros para este estimador.
predict
(X)Predecir usando el modelo lineal.
score
(X, y[, sample_weight])Devuelve el coeficiente de determinación (R ^ 2 ) de la predicción.
set_params
(** parámetros)Establezca los parámetros de este estimador.
-
fit(X, y, sample_weight=None)
[source] -
Ajustar modelo lineal.
- Parámetros
-
-
X{array-like, sparse matrix} of shape (n_samples, n_features)
-
Datos de entrenamiento
-
yarray-like of shape (n_samples,) or (n_samples, n_targets)
-
Valores objetivo. Se convertirá en dtype de X si es necesario
-
sample_weightarray-like of shape (n_samples,), default=None
-
Pesos individuales para cada muestra
Nuevo en la versión 0.17: parámetro peso_muestra soporte para LinearRegression.
-
- Devoluciones
-
-
selfreturns an instance of self.
-
-
get_params(deep=True)
[source] -
Obtenga parámetros para este estimador.
- Parámetros
-
-
deepbool, default=True
-
Si es True, devolverá los parámetros para este estimador y los subobjetos contenidos que son estimadores.
-
- Devoluciones
-
-
paramsdict
-
Nombres de parámetros asignados a sus valores.
-
-
predict(X)
[source] -
Predecir usando el modelo lineal.
- Parámetros
-
-
Xarray-like or sparse matrix, shape (n_samples, n_features)
-
Muestras.
-
- Devoluciones
-
-
Carray, shape (n_samples,)
-
Devuelve valores predichos.
-
-
score(X, y, sample_weight=None)
[source] -
Devuelve el coeficiente de determinación (R ^ 2 ) de la predicción.
El coeficiente (R ^ 2 ) Se define como ((1 – frac {u} {v}) ), dónde (u ) es la suma residual de cuadrados
((y_true - y_pred)
y (v ) es la suma total de cuadrados
** 2).sum()((y_true -
. La mejor puntuación posible es 1.0 y puede ser negativa (porque el modelo puede ser arbitrariamente peor). Un modelo constante que siempre predice el valor esperado de
y_true.mean()) ** 2).sum()y
, sin tener en cuenta las funciones de entrada, obtendría un (R ^ 2 ) puntuación de 0,0.- Parámetros
-
-
Xarray-like of shape (n_samples, n_features)
-
Muestras de prueba. Para algunos estimadores, esto puede ser una matriz de kernel precalculada o una lista de objetos genéricos en su lugar con forma
(n_samples, n_samples_fitted)
, dónden_samples_fitted
es el número de muestras utilizadas en el ajuste del estimador. -
yarray-like of shape (n_samples,) or (n_samples, n_outputs)
-
Valores verdaderos para
X
. -
sample_weightarray-like of shape (n_samples,), default=None
-
Pesos de muestra.
-
- Devoluciones
-
-
scorefloat
-
(R ^ 2 ) de
self.predict(X)
wrt.y
.
-
Notas
los (R ^ 2 ) puntuación utilizada al llamar
score
en un regresor usamultioutput="uniform_average"
desde la versión 0.23 para mantener la coherencia con el valor predeterminado der2_score
. Esto influye en lascore
método de todos los regresores de salida múltiple (excepto paraMultiOutputRegressor
).
-
set_params(**params)
[source] -
Establezca los parámetros de este estimador.
El método funciona tanto en estimadores simples como en objetos anidados (como
Pipeline
). Estos últimos tienen parámetros de la forma<component>__<parameter>
para que sea posible actualizar cada componente de un objeto anidado.- Parámetros
-
-
**paramsdict
-
Parámetros del estimador.
-
- Devoluciones
-
-
selfestimator instance
-
Instancia de estimador.
-
Ejemplos usando sklearn.linear_model.LinearRegression
Regresión de componentes principales vs regresión de mínimos cuadrados parciales
Trazar predicciones de regresión individual y de votación
Mínimos cuadrados ordinarios y varianza de regresión de crestas
Función logística
Mínimos cuadrados no negativos
Ejemplo de regresión lineal
Estimación robusta de modelos lineales usando RANSAC
Ejemplo de dispersión: ajuste solo de las características 1 y 2
Regresión de Theil-Sen
Ajuste robusto del estimador lineal
Regresión automática de determinación de relevancia (ARD)
Regresión de la cresta bayesiana
Regresión isotónica
Finalización facial con estimadores de salida múltiple
Trazar predicciones con validación cruzada
Ajuste insuficiente frente a ajuste excesivo
Uso de KBinsDiscretizer para discretizar características continuas