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 y Y.

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 que tol, donde u corresponde al vector singular izquierdo.

copybool, default=True

Si se copian X y Y 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 a transform 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 a transformació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 como Y = 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'.

Ver también

CCA
PLSSVD

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

fit

Ajustar el modelo a los datos.

fit_transform

Aprender y aplicar la reducción de dimensión en los datos de entrenamiento.

get_params

Obtiene los parámetros de este estimador.

inverse_transform

Transforma los datos de vuelta a su espacio original.

predict

Predecir los objetivos de las muestras dadas.

score

Devuelve el coeficiente de determinación \(R^2\) de la predicción.

set_params

Establece los parámetros de este estimador.

transform

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 y n_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 y n_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.
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 y n_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 y Y, 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 de y, 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), donde n_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 a y.

Notas

La puntuación \(R^2\) utilizada al llamar a score en un regresor utiliza multioutput='uniform_average' desde la versión 0.23 para mantener la coherencia con el valor predeterminado de r2_score`. Esto influye en el método score de todos los regresores de salida múltiple (excepto para MultiOutputRegressor).

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 y Y, o se realiza la normalización en el lugar.

Devuelve
Si no se indica Y, (x_scores, y_scores) en caso contrario.