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 contexto joblib.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

fit

Calcula los vectores de embedding de los datos X

fit_transform

Ajustar el modelo a partir de los datos en X y transforma X.

get_params

Obtiene los parámetros para este estimador.

reconstruction_error

Calcula el error de reconstrucción de embedding.

set_params

Establece los parámetros de este estimador.

transform

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)

Ejemplos usando sklearn.manifold.Isomap