sklearn.semi_supervised.LabelPropagation

class sklearn.semi_supervised.LabelPropagation

Clasificador de propagación de etiquetas

Más información en el Manual de usuario.

Parámetros
kernel{“knn”, “rbf”} o invocable, default=”rbf”

Identificador de cadena para la función kernel a utilizar o la propia función kernel. Sólo las cadenas “rbf” y “knn” son entradas válidas. La función pasada debe tomar dos entradas, cada una de la forma (n_samples, n_features), y devolver una matriz de ponderaciones con forma (n_samples, n_samples).

gammafloat, default=20

Parámetro para el núcleo rbf.

n_neighborsint, default=7

Parámetro para el núcleo knn que necesita ser estrictamente positivo.

max_iterint, default=1000

Cambia el número máximo de iteraciones permitidas.

tolfloat, 1e-3

Tolerancia de convergencia: umbral para considerar el sistema en estado estacionario.

n_jobsint, 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.

Atributos
X_ndarray de forma [n_samples, n_features)

Arreglo de entrada.

classes_ndarray de forma (n_classes,)

Las distintas etiquetas utilizadas en la clasificación de las instancias.

label_distributions_ndarray de forma (n_samples, n_classes)

Distribución categórica para cada elemento.

transduction_ndarray de forma (n_samples)

Etiqueta asignada a cada elemento a través de la transducción.

n_iter_int

Número de iteraciones ejecutadas.

Ver también

LabelSpreading

Estrategia alternativa de propagación de etiquetas más robusta al ruido.

Referencias

Xiaojin Zhu y Zoubin Ghahramani. Learning from labeled and unlabeled data with label propagation. Technical Report CMU-CALD-02-107, Carnegie Mellon University, 2002 http://pages.cs.wisc.edu/~jerryzhu/pub/CMU-CALD-02-107.pdf

Ejemplos

>>> import numpy as np
>>> from sklearn import datasets
>>> from sklearn.semi_supervised import LabelPropagation
>>> label_prop_model = LabelPropagation()
>>> iris = datasets.load_iris()
>>> rng = np.random.RandomState(42)
>>> random_unlabeled_points = rng.rand(len(iris.target)) < 0.3
>>> labels = np.copy(iris.target)
>>> labels[random_unlabeled_points] = -1
>>> label_prop_model.fit(iris.data, labels)
LabelPropagation(...)

Métodos

fit

Ajusta un modelo de propagación de etiquetas semisupervisado

get_params

Obtiene los parámetros para este estimador.

predict

Realiza una inferencia inductiva a través del modelo.

predict_proba

Predice la probabilidad de cada resultado posible.

score

Devuelve la precisión media en los datos de prueba y las etiquetas dadas.

set_params

Establece los parámetros de este estimador.

fit()

Ajusta un modelo de propagación de etiquetas semisupervisado

Todos los datos de entrada se proporcionan con la matriz X (etiquetada y no etiquetada) y la correspondiente matriz de etiquetas y con un valor de marcador dedicado para las muestras no etiquetadas.

Parámetros
Xarray-like de forma (n_samples, n_features)

A partir de esto se creará una matriz de forma (n_samples, n_samples).

yarray-like de forma (n_samples,)

n_labeled_samples (los puntos no etiquetados se marcan como -1) A todas las muestras no etiquetadas se les asignarán etiquetas de forma transductiva.

Devuelve
selfobject
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

Nombres de parámetros mapeados a sus valores.

predict()

Realiza una inferencia inductiva a través del modelo.

Parámetros
Xarray-like de forma (n_samples, n_features)

La matriz de datos.

Devuelve
yndarray de forma (n_samples,)

Predicciones para los datos de entrada.

predict_proba()

Predice la probabilidad de cada resultado posible.

Calcula las estimaciones de probabilidad para cada muestra individual en X y cada posible resultado visto durante el entrenamiento (distribución categórica).

Parámetros
Xarray-like de forma (n_samples, n_features)

La matriz de datos.

Devuelve
probabilitiesndarray de forma (n_samples, n_classes)

Distribuciones de probabilidad normalizadas entre etiquetas de clase.

score()

Devuelve la precisión media en los datos de prueba y las etiquetas dadas.

En la clasificación multietiqueta, se trata de la precisión del subconjunto que es una métrica rigurosa, ya que se requiere para cada muestra que cada conjunto de etiquetas sea predicho correctamente.

Parámetros
Xarray-like de forma (n_samples, n_features)

Muestras de prueba.

yarray-like de forma (n_samples,) o (n_samples, n_outputs)

Etiquetas True para X.

sample_weightarray-like de forma (n_samples,) default=None

Ponderaciones de la muestra.

Devuelve
scorefloat

Precisión media de self.predict(X) con respecto a y.

set_params()

Establece los parámetros de este estimador.

El método funciona tanto con 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 de estimador

Instancia del estimador.