sklearn.cross_decomposition
.PLSCanonical¶
- class sklearn.cross_decomposition.PLSCanonical¶
Transformador de mínimos cuadrados parciales y regresor.
Lee más en el Manual de Usuario.
Nuevo en la versión 0.8.
- Parámetros
- n_componentsint, default=2
Número de componentes a conservar. Debe estar en
[1, min(n_muestras, n_características, n_objetivos)]
.- scalebool, default=True
Si se escala
X
yY
.- algorithm{“nipals”, “svd”}, default=”nipals”
El algoritmo utilizado para estimar los primeros vectores singulares de la matriz de covarianza cruzada. “nipals” utiliza el método de la potencia mientras que “svd” calculará el SVD completo.
- max_iterint, default=500
el número máximo de iteraciones del método de la potencia cuando
algoritmo='nipals'
. Se ignora en caso contrario.- tolfloat, default=1e-06
La tolerancia utilizada como criterio de convergencia en el método de potencia: el algoritmo se detiene siempre que la norma cuadrada de
u_i - u_{i-1}
sea menor quetol
, dondeu
corresponde al vector singular izquierdo.- copybool, default=True
Si se copian
X
yY
en el ajuste antes de aplicar el centrado, y potencialmente el escalado. Si es False, estas operaciones se harán in place, modificando ambas matrices.
- Atributos
- x_weights_ndarray de forma (n_features, n_components)
Los vectores singulares izquierdos de las matrices de covarianza cruzada de cada iteración.
- y_weights_ndarray de forma (n_targets, n_components)
Los vectores singulares derechos de las matrices de covarianza cruzada de cada iteración.
- x_loadings_ndarray de forma (n_features, n_components)
Las cargas de
X
.- y_loadings_ndarray de forma (n_targets, n_components)
Las cargas de
Y
.- x_scores_ndarray de forma (n_samples, n_components)
Las muestras de entrenamiento transformadas.
Obsoleto desde la versión 0.24: La función
x_scores_
está obsoleta en 0.24 y se eliminará en 1.1 (cambio de nombre de 0.26). En su lugar, puede llamar atransform
en los datos de entrenamiento.- y_scores_ndarray de forma (n_samples, n_components)
Los objetivos de entrenamiento transformados.
Obsoleto desde la versión 0.24: La función
y_scores_
está obsoleta en la versión 0.24 y se eliminará en la 1.1 (cambio de nombre de la versión 0.26). En su lugar, puedes llamar atransformación
en los datos de entrenamiento.- x_rotations_ndarray de forma (n_features, n_components)
La matriz de proyección utilizada para transformar «X».
- y_rotations_ndarray de forma (n_features, n_components)
La matriz de proyección utilizada para transformar «Y».
- coef_ndarray de forma (n_features, n_targets)
Los coeficientes del modelo lineal tal que
Y
se aproxima comoY = X @ coef_
.- n_iter_lista de forma (n_components,)
Número de iteraciones del método de potencia, para cada componente. Vacío si
algoritmo='svd'
.
Ejemplos
>>> from sklearn.cross_decomposition import PLSCanonical >>> X = [[0., 0., 1.], [1.,0.,0.], [2.,2.,2.], [2.,5.,4.]] >>> Y = [[0.1, -0.2], [0.9, 1.1], [6.2, 5.9], [11.9, 12.3]] >>> plsca = PLSCanonical(n_components=2) >>> plsca.fit(X, Y) PLSCanonical() >>> X_c, Y_c = plsca.transform(X, Y)
Métodos
Ajustar el modelo a los datos.
Aprender y aplicar la reducción de dimensión en los datos de entrenamiento.
Obtiene los parámetros de este estimador.
Transforma los datos de vuelta a su espacio original.
Predecir los objetivos de las muestras dadas.
Devuelve el coeficiente de determinación \(R^2\) de la predicción.
Establece los parámetros de este estimador.
Aplica la reducción de dimensión.
- fit()¶
Ajustar el modelo a los datos.
- Parámetros
- Xarray-like de forma (n_samples, n_features)
Vectores de entrenamiento, donde
n_muestras
es el número de muestras yn_características
es el número de predictores.- Yarray-like de forma (n_samples,) o (n_samples, n_targets)
Vectores objetivo, donde
n_samples
es el número de muestras yn_targets
es el número de variables de respuesta.
- fit_transform()¶
Aprender y aplicar la reducción de dimensión en los datos de entrenamiento.
- Parámetros
- Xarray-like de forma (n_samples, n_features)
Vectores de entrenamiento, donde n_muestras es el número de muestras y n_características es el número de predictores.
- yarray-like de forma (n_samples, n_targets), default=None
Vectores objetivo, donde n_muestras es el número de muestras y n_objetivos es el número de variables de respuesta.
- Devuelve
- si no se da
Y
,(x_scores, y_scores)
en caso contrario.
- si no se da
- get_params()¶
Obtiene los parámetros de este estimador.
- Parámetros
- deepbool, default=True
Si es True, devolverá los parámetros para este estimador y los subobjetos contenidos que son estimadores.
- Devuelve
- paramsdict
Los nombres de los parámetros se asignan a sus valores.
- inverse_transform()¶
Transforma los datos de vuelta a su espacio original.
- Parámetros
- Xarray-like de forma (n_samples, n_components)
Nuevos datos, donde
n_samples
es el número de muestras yn_components
es el número de componentes pls.
- Devuelve
- x_reconstructedarray-like de forma (n_samples, n_features)
Notas
Esta transformación sólo será exacta si
n_components=n_features
.
- predict()¶
Predecir los objetivos de las muestras dadas.
- Parámetros
- Xarray-like de forma (n_samples, n_features)
Muestras.
- copybool, default=True
Si se copia
X
yY
, o se realiza la normalización en el lugar.
Notas
Esta llamada requiere la estimación de una matriz de forma
(n_features, n_targets)
, lo que puede ser un problema en un espacio de alta dimensión.
- score()¶
Devuelve el coeficiente de determinación \(R^2\) de la predicción.
El coeficiente \(R^2\) se define como \((1 - \frac{u}{v})\), donde \(u\) es la suma residual de cuadrados
((y_true - y_pred) ** 2).sum()
y \(v\) es la suma total de cuadrados((y_true - y_true.mean()) ** 2).sum()
. 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 dey
, sin tener en cuenta las características de entrada, obtendría una puntuación \(R^2\) de 0,0.- Parámetros
- Xarray-like de forma (n_samples, n_features)
Muestras de prueba. Para algunos estimadores puede ser una matriz de núcleo precalculada o una lista de objetos genéricos con forma
(n_samples, n_samples_fitted)
, donden_samples_fitted
es el número de muestras utilizadas en el ajuste para el estimador.- yarray-like de forma (n_samples,) o (n_samples, n_outputs)
Valores verdaderos para
X
.- sample_weightarray-like de forma (n_samples,), default=None
Pesos de la muestra.
- Devuelve
- scorefloat
\(R^2\) de
self.predict(X)
con respecto ay
.
Notas
La puntuación \(R^2\) utilizada al llamar a
score
en un regresor utilizamultioutput='uniform_average'
desde la versión 0.23 para mantener la coherencia con el valor predeterminado der2_score`
. Esto influye en el métodoscore
de todos los regresores de salida múltiple (excepto paraMultiOutputRegressor
).
- set_params()¶
Establece los parámetros de este estimador.
El método funciona tanto con estimadores simples como con 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.
- Devuelve
- selfinstancia del estimador
Instancia del estimador.
- transform()¶
Aplica la reducción de dimensión.
- Parámetros
- Xarray-like de forma (n_samples, n_features)
Muestras a transformar.
- Yarray-like de forma (n_samples, n_targets), default=None
Vectores destino.
- copybool, default=True
Si se copia
X
yY
, o se realiza la normalización en el lugar.
- Devuelve
- Si no se indica
Y
,(x_scores, y_scores)
en caso contrario.
- Si no se indica