sklearn.manifold
.Isomap¶
- class sklearn.manifold.Isomap¶
Isomap Embedding
Reducción no lineal de la dimensionalidad mediante el mapeo isométrico
Más información en el Manual de usuario.
- Parámetros
- n_neighborsint, default=5
número de vecinos a considerar para cada punto.
- n_componentsint, default=2
número de coordenadas para el colector
- eigen_solver{“auto”, “arpack”, “dense”}, default=”auto”
“auto” : Intenta elegir el solucionador más eficiente para el problema dado.
“arpack” : Utiliza la descomposición de Arnoldi para encontrar los autovalores y autovectores.
“dense” : Utiliza un solucionador directo (es decir, LAPACK) para la descomposición de valores propios.
- tolfloat, default=0
Tolerancia de convergencia pasada a arpack o lobpcg. no se utiliza si eigen_solver == “dense”.
- max_iterint, default=None
Número máximo de iteraciones para el solucionador arpack. No se utiliza si eigen_solver == “dense”.
- path_method{“auto”, “FW”, “D”}, default=”auto”
Método a utilizar para encontrar el camino más corto.
“auto” : intenta elegir el mejor algoritmo automáticamente.
“FW” : Algoritmo Floyd-Warshall.
“D” : Algoritmo de Dijkstra.
- neighbors_algorithm{“auto”, “brute”, “kd_tree”, “ball_tree”}, default=”auto”
Algoritmo a utilizar para la búsqueda de vecinos más cercanos, pasado a la instancia neighbors.NearestNeighbors.
- n_jobsentero o None, 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.- metriccadena de caracteres, o invocable, default=»minkowski»
La métrica a utilizar cuando se calcula la distancia entre instancias en una matriz de características. Si la métrica es una cadena o invocable, debe ser una de las opciones permitidas por
sklearn.metrics.pairwise_distances
para su parámetro de métrica. Si la métrica es «precomputed», se asume que X es una matriz de distancia y debe ser cuadrada. X puede ser un Glosario.Nuevo en la versión 0.22.
- pint, default=2
Parámetro para la métrica de Minkowski de sklearn.metrics.pairwise.pairwise_distances. Cuando p = 1, esto es equivalente a usar manhattan_distance (l1), y euclidean_distance (l2) para p = 2. Para p arbitrario, se utiliza minkowski_distance (l_p).
Nuevo en la versión 0.22.
- metric_paramsdict, default=None
Argumentos adicionales de la palabra clave para la función métrica.
Nuevo en la versión 0.22.
- Atributos
- embedding_array-like, forma (n_samples, n_components)
Almacena los vectores de embedding.
- kernel_pca_object
KernelPCA
objeto utilizado para implementar embedding.- nbrs_instancia de sklearn.neighbors.NearestNeighbors
Almacena la instancia de vecinos más cercanos, incluyendo BallTree o KDtree si es el caso.
- dist_matrix_array-like, forma (n_samples, n_samples)
Almacena la matriz de distancia geodésica de los datos de entrenamiento.
Referencias
- 1
Tenenbaum, J.B.; De Silva, V.; & Langford, J.C. A global geometric framework for nonlinear dimensionality reduction. Science 290 (5500)
Ejemplos
>>> from sklearn.datasets import load_digits >>> from sklearn.manifold import Isomap >>> X, _ = load_digits(return_X_y=True) >>> X.shape (1797, 64) >>> embedding = Isomap(n_components=2) >>> X_transformed = embedding.fit_transform(X[:100]) >>> X_transformed.shape (100, 2)
Métodos
Calcula los vectores de embedding de los datos X
Ajustar el modelo a partir de los datos en X y transforma X.
Obtiene los parámetros para este estimador.
Calcula el error de reconstrucción de embedding.
Establece los parámetros de este estimador.
Transforma X.
- fit()¶
Calcula los vectores de embedding de los datos X
- Parámetros
- X{array-like, sparse graph, BallTree, KDTree, NearestNeighbors}
Datos de la muestra, shape = (n_samples, n_features), en forma de arreglo numpy, gráfico disperso, árbol precalculado u objeto NearestNeighbors.
- yIgnorado
- Devuelve
- selfdevuelve una instancia de sí misma.
- fit_transform()¶
Ajustar el modelo a partir de los datos en X y transforma X.
- Parámetros
- X{array-like, sparse graph, BallTree, KDTree}
Vector de entrenamiento, donde n_samples es el número de muestras y n_features es el número de características.
- yIgnorado
- Devuelve
- X_newarray-like, 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 sub objetos contenidos que son estimadores.
- Devuelve
- paramsdict
Nombres de parámetros mapeados a sus valores.
- reconstruction_error()¶
Calcula el error de reconstrucción de embedding.
- Devuelve
- reconstruction_errorfloat
Notas
La función de costo de embedding isomap es
E = frobenius_norm[K(D) - K(D_fit)] / n_samples
Donde D es la matriz de distancias para los datos de entrada X, D_fit es la matriz de distancias para un embedding de salida X_fit, y K es el isomap núcleo:
K(D) = -0.5 * (I - 1/n_samples) * D^2 * (I - 1/n_samples)
- 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()¶
Transforma X.
Esto se lleva a cabo enlazando los puntos X en el gráfico de distancias geodésicas de los datos de entrenamiento. En primer lugar, se encuentran los
n_neighbors
vecinos más cercanos de X en los datos de entrenamiento y, a partir de ellos, se calculan las distancias geodésicas más cortas de cada punto de X a cada punto de los datos de entrenamiento para construir el núcleo. El embedding de X es la proyección de este núcleo sobre los vectores de embedding del conjunto de entrenamiento.- Parámetros
- Xarray-like, forma (n_queries, n_features)
Si neighbors_algorithm=”precomputed”, se asume que X es una matriz de distancia o un gráfico disperso de forma (n_queries, n_samples_fit).
- Devuelve
- X_newarray-like, forma (n_queries, n_components)