sklearn.decomposition
.KernelPCA¶
- class sklearn.decomposition.KernelPCA¶
Análisis de Componentes Principales basado en Kernel (Kernel Principal component analysis, KPCA).
Reducción de la dimensionalidad no lineal mediante el uso de núcleos (ver Métricas por pares, afinidades y núcleos).
Lee más en el Manual de usuario.
- Parámetros
- n_componentsint, default=None
Número de componentes. Si es None, se mantienen todos los componentes distintos de cero.
- kernel{“linear”, “poly”, “rbf”, “sigmoid”, “cosine”, “precomputed”}, default=”linear”
Núcleo utilizado para PCA.
- gammafloat, default=None
Coeficiente del núcleo para los núcleos poly y sigmoide. Ignorado por otros núcleos. Si
gamma
esNone
, entonces se establece en1/n_features
.- degreeint, default=3
Grado para los núcleos poly. Ignorado por otros núcleos.
- coef0float, default=1
Término independiente en los núcleos poly y sigmoide. Ignorado por otros núcleos.
- kernel_paramsdict, default=None
Parámetros (argumentos de palabra clave) y valores para el kernel o núcleo pasados como objeto de llamada. Ignorado por otros núcleos.
- alphafloat, default=1.0
Hiperparámetro de la regresión de cresta que aprende la transformación inversa (cuando fit_inverse_transform=True).
- fit_inverse_transformbool, default=False
Aprende la transformación inversa para núcleos no precalculados. (es decir, aprende a encontrar la preimagen de un punto)
- eigen_solver{“auto”, “dense”, “arpack”}, default=”auto”
Selecciona el método de obtención de autovalores a utilizar. Si n_components es mucho menor que el número de muestras de entrenamiento, arpack puede ser más eficiente que el método de obtención de autovalores denso.
- tolfloat, default=0
Tolerancia de convergencia para arpack. Si es 0, el valor óptimo será elegido por arpack.
- max_iterint, default=None
Número máximo de iteraciones para arpack. Si es None, el valor óptimo será elegido por arpack.
- remove_zero_eigbool, default=False
Si es True, se eliminan todos los componentes con valores propios cero, de modo que el número de componentes en la salida puede ser < n_components (y a veces incluso cero debido a la inestabilidad numérica). Cuando n_componentes es None, este parámetro se ignora y los componentes con autovalores cero se eliminan a pesar de todo.
- random_stateentero, instancia de RandomState o None, default=None
Se utiliza cuando
eigen_solver
== “arpack”. Pasa un número entero (int) para que los resultados sean reproducibles a través de múltiples llamadas a la función. Ver Glosario.Nuevo en la versión 0.18.
- copy_Xbool, default=True
Si es True, la entrada X es copiada y almacenada por el modelo en el atributo
X_fit_
. Si no se van a realizar más cambios en X, establecercopy_X=False
ahorra memoria al almacenar una referencia.Nuevo en la versión 0.18.
- n_jobsint, default=None
El número de trabajos paralelos a ejecutar.
None
significa 1 a menos que esté en un contextojoblib.parallel_backend
.-1
significa utilizar todos los procesadores. Ver :Glosario para más detalles.Nuevo en la versión 0.18.
- Atributos
- lambdas_ndarray de forma (n_components,)
Los autovalores de la matriz núcleo centrada en orden decreciente. Si
n_components
yremove_zero_eig
no están establecidos, entonces se almacenan todos los valores.- alphas_ndarray de forma (n_samples, n_components)
Los autovectores de la matriz núcleo centrada. Si
n_components
yremove_zero_eig
no están establecidos, entonces se almacenan todos los componentes.- dual_coef_ndarray de forma (n_samples, n_features)
La matriz de transformación inversa. Solo está disponible cuando
fit_inverse_transform
es True.- X_transformed_fit_ndarray de forma (n_samples, n_components)
Proyección de los datos ajustados en los componentes principales basados en núcleo. Sólo disponible cuando
fit_inverse_transform
es True.- X_fit_ndarray de forma (n_samples, n_features)
Los datos utilizados para ajustar el modelo. Si
copy_X=False
, entoncesX_fit_
es una referencia. Este atributo se utiliza para las llamadas a transformar.
Referencias
- PCA basado en núcleo fue introducido en:
Bernhard Schoelkopf, Alexander J. Smola, and Klaus-Robert Mueller. 1999. Kernel principal component analysis. En Advances in kernel methods, MIT Press, Cambridge, MA, USA 327-352.
Ejemplos
>>> from sklearn.datasets import load_digits >>> from sklearn.decomposition import KernelPCA >>> X, _ = load_digits(return_X_y=True) >>> transformer = KernelPCA(n_components=7, kernel='linear') >>> X_transformed = transformer.fit_transform(X) >>> X_transformed.shape (1797, 7)
Métodos
Ajusta el modelo a partir de los datos en X.
Ajustar el modelo a partir de los datos en X y transforma X.
Obtiene los parámetros para este estimador.
Transforma X de nuevo al espacio original.
Establece los parámetros de este estimador.
Transforma X.
- fit()¶
Ajusta el modelo a partir de los datos en X.
- Parámetros
- X{array-like, sparse matrix} de forma (n_samples, n_features)
Vector de entrenamiento, donde n_samples es el número de muestras y n_features es el número de características.
- Devuelve
- selfobject
Devuelve la propia instancia.
- fit_transform()¶
Ajustar el modelo a partir de los datos en X y transforma X.
- Parámetros
- X{array-like, sparse matrix} de forma (n_samples, n_features)
Vector de entrenamiento, donde n_samples es el número de muestras y n_features es el número de características.
- Devuelve
- X_newndarray de forma (n_samples, n_components)
- get_params()¶
Obtiene los 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.
- Devuelve
- paramsdict
Los nombres de los parámetros mapeados a sus valores.
- inverse_transform()¶
Transforma X de nuevo al espacio original.
- Parámetros
- X{array-like, sparse matrix} de forma (n_samples, n_components)
- Devuelve
- X_newndarray de forma (n_samples, n_features)
Referencias
«Learning to Find Pre-Images», G BakIr et al, 2004.
- set_params()¶
Establece 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.
- Devuelve
- selfinstancia del estimador
Instancia del estimador.
- transform()¶
Transforma X.
- Parámetros
- X{array-like, sparse matrix} de forma (n_samples, n_features)
- Devuelve
- X_newndarray de forma (n_samples, n_components)