Spec-Zone.ru › scikit-learn

Распространение меток

классsklearn.semi_supervised.LabelSpreading(kernel='rbf', *, gamma=20, n_neighbors=7, alpha=0.2, max_iter=30, tol=0.001, n_jobs=None)[source]

Модель LabelSpreading для полусупервизированного обучения.

Эта модель похожа на базовый алгоритм Label Propagation, но использует матрицу сродства, основанную на нормализованной граф-Лапласиане и мягком ограничении по меткам.

Подробнее см. в Руководстве пользователя.

Параметры:
kernel{‘knn’, ‘rbf’} или вызываемая функция, по умолчанию=’rbf’

Строковый идентификатор функции ядра или сама функция ядра. Только строки ‘rbf’ и ‘knn’ являются допустимыми входными значениями. Переданная функция должна принимать два входных значения, каждое из которых имеет форму (n_samples, n_features), и возвращать матрицу весов формы (n_samples, n_samples).

gammafloat, по умолчанию=20

Параметр для ядра rbf.

n_neighborsint, по умолчанию=7

Параметр для ядра knn, который является строго положительным целым числом.

alphafloat, по умолчанию=0.2

Коэффициент ограничения. Значение в интервале (0, 1), которое определяет относительное количество информации, которую экземпляр должен принять от своих соседей по сравнению с его начальной меткой. alpha=0 означает сохранение начальной информации метки; alpha=1 означает замену всей начальной информации.

max_iterint, по умолчанию=30

Максимальное количество итераций.

tolfloat, по умолчанию=1e-3

Допуск сходимости: порог для рассмотрения системы в состоянии стационарности.

n_jobsint, по умолчанию=None

Количество параллельных задач для выполнения. None означает 1, за исключением случая в контексте joblib.parallel_backend. -1 означает использование всех процессоров. Подробнее см. в Справочнике.

Атрибуты:
X_ndarray формы (n_samples, n_features)

Входной массив.

classes_ndarray формы (n_classes,)

Различные метки, используемые для классификации экземпляров.

label_distributions_ndarray формы (n_samples, n_classes)

Категориальное распределение для каждого элемента.

transduction_ndarray формы (n_samples,)

Метка, назначенная каждому элементу во время fit.

n_features_in_int

Количество признаков, увиденных во время fit.

Добавлен в версии 0.24.

feature_names_in_ndarray формы (n_features_in_,)

Имена признаков, увиденные во время fit. Определяются только когда X имеет имена признаков, которые все являются строками.

Добавлен в версии 1.0.

n_iter_int

Количество выполненных итераций.

См. также

LabelPropagation

Полусупервизированное обучение, основанное на графах без регуляризации.

Ссылки

Dengyong Zhou, Olivier Bousquet, Thomas Navin Lal, Jason Weston, Bernhard Schoelkopf. Learning with local and global consistency (2004)

Примеры

>>> import numpy as np
>>> from sklearn import datasets
>>> from sklearn.semi_supervised import LabelSpreading
>>> label_prop_model = LabelSpreading()
>>> 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)
LabelSpreading(...)
fit(X, y)[source]

Обучение полусупервизированной модели распространения меток на X.

Входные данные (меченые и немеченые) предоставляются матрицей X, а целевые метки – матрицей y. Мы обычно применяем метку -1 к немеченым образцам в матрице y в полусупервизированной классификации.

Параметры:
X{array-like, разреженная матрица} формы (n_samples, n_features)

Обучающие данные, где n_samples – количество образцов, а n_features – количество признаков.

yarray-like формы (n_samples,)

Значения целевых классов с немечеными точками, отмеченными как -1. Все немеченые образцы будут трандуктивно назначены меткам внутри, которые хранятся в transduction_.

Возвращает:
selfobject

Возвращает сам экземпляр.

get_metadata_routing()[source]

Получение маршрутизации метаданных этого объекта.

Пожалуйста, см. Руководство пользователя о том, как работает механизм маршрутизации.

Возвращает:
routingMetadataRequest

MetadataRequest инкапсулирующий информацию о маршрутизации.

get_params(deep=True)[source]

Получение параметров этого оценщика.

Параметры:
deepbool, по умолчанию=True

Если True, вернет параметры этого оценщика и содержащихся в нем дочерних объектов, являющихся оценщиками.

Возвращает:
paramsdict

Имена параметров, сопоставленные со значениями.

predict(X)[source]

Выполнение индуктивного вывода через модель.

Параметры:
Xarray-like формы (n_samples, n_features)

Матрица данных.

Возвращает:
yndarray формы (n_samples,)

Предсказания для входных данных.

predict_proba(X)[source]

Предсказание вероятности каждого возможного результата.

Вычисление оценок вероятностей для каждого отдельного образца в X и каждого возможного результата, увиденного во время обучения (категориальное распределение).

Параметры:
Xarray-like формы (n_samples, n_features)

Матрица данных.

Возвращает:
probabilitiesndarray формы (n_samples, n_classes)

Нормализованные распределения вероятностей по меткам классов.

score(X, y, sample_weight=None)[source]

Возвращает среднюю точность на заданных тестовых данных и метках.

В многоклассовой классификации это точность подмножества, которая является жёсткой метрикой, так как для каждого образца требуется, чтобы каждый набор меток был правильно предсказан.

Параметры:
Xarray-like формы (n_samples, n_features)

Тестовые образцы.

yarray-like формы (n_samples,) или (n_samples, n_outputs)

Истинные метки для X.

sample_weightarray-like формы (n_samples,), по умолчанию=None

Веса образцов.

Возвращаемое значение:
scorefloat

Средняя точность self.predict(X) по отношению к y.

set_params(**params)[source]

Устанавливает параметры данного оценщика.

Метод работает как с простыми оценщиками, так и с вложенными объектами (такими как Pipeline). У последних параметры имеют вид <component>__<parameter> , чтобы было возможно обновлять каждый компонент вложенного объекта.

Параметры:
**paramsdict

Параметры оценщика.

Возвращаемое значение:
selfэкземпляр оценщика

Экземпляр оценщика.

set_score_request(*, sample_weight:bool|None|str='$UNCHANGED$') → LabelSpreading[source]

Запрос метаданных, передаваемых в метод score.

Обратите внимание, что этот метод актуален только если enable_metadata_routing=True (см. sklearn.set_config). Пожалуйста, ознакомьтесь со Руководством пользователя о том, как работает механизм маршрутизации.

Варианты для каждого параметра:

  • True: запрашиваются метаданные и передаются в score при предоставлении. Запрос игнорируется, если метаданные не предоставлены.
  • False: метаданные не запрашиваются, и мета-оценщик не передаст их в score.
  • None: метаданные не запрашиваются, и мета-оценщик вызовет ошибку, если пользователь предоставит их.
  • str: метаданные должны передаваться в мета-оценщик с этим псевдонимом вместо оригинального имени.

По умолчанию (sklearn.utils.metadata_routing.UNCHANGED сохраняет существующий запрос. Это позволяет изменить запрос для некоторых параметров, а не для других.

Добавлена в версии 1.3.

Примечание

Этот метод актуален только в том случае, если этот оценщик используется в качестве под-оценщика мета-оценщика, например, внутри Pipeline. В противном случае он не имеет никакого эффекта.

Параметры:
sample_weightstr, True, False, или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED

Маршрутизация метаданных для параметра sample_weight в score.

Возвращаемое значение:
selfобъект

Обновлённый объект.

Примеры галереи

Границы принятия решений полусупервизированных классификаторов против SVM на наборе данных Iris

Активное обучение распознаванию цифр с использованием распространения меток

Распространение меток для цифр: демонстрация производительности

Распространение меток для изучения сложной структуры

Полусупервизированная классификация на наборе текстовых данных

© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.semi_supervised.LabelSpreading.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API