sklearn.cross_decomposition.CCA

class sklearn.cross_decomposition.CCA

Análisis de Correlación Canónica, también conocido como PLS «Modo B».

Lee más en la Manual de usuario.

Parámetros
n_componentsint, default=2

Número de componentes a mantener. Debe estar en [1, min(n_samples, n_features, n_targets)].

scalebool, default=True

Si se escala X y Y.

max_iterint, default=500

el número máximo de iteraciones del método de la potencia.

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 copia X y Y en el ajuste antes de aplicar el centrado, y potencialmente el escalado. Si es False, estas operaciones se realizarán in place, modificando ambas arreglos.

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, puedes 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: y_scores_ está obsoleto en 0.24 y se eliminará en 1.1 (cambio de nombre de 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.

Ver también

PLSCanonical
PLSSVD

Ejemplos

>>> from sklearn.cross_decomposition import CCA
>>> X = [[0., 0., 1.], [1.,0.,0.], [2.,2.,2.], [3.,5.,4.]]
>>> Y = [[0.1, -0.2], [0.9, 1.1], [6.2, 5.9], [11.9, 12.3]]
>>> cca = CCA(n_components=1)
>>> cca.fit(X, Y)
CCA(n_components=1)
>>> X_c, Y_c = cca.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_samples es el número de muestras y n_features 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_samples es el número de muestras y n_features es el número de predictores.

yarray-like de forma (n_samples, n_targets), default=None

Vectores objetivo, donde n_samples es el número de muestras y n_targets 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

Nombres de parámetros asignados 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 da Y, (x_scores, y_scores) en caso contrario.