Spec-Zone.ru › scikit-learn

LabelSpreading

classsklearn.semi_supervised.LabelSpreading(kernel='rbf', *, gamma=20, n_neighbors=7, alpha=0.2, max_iter=30, tol=0.001, n_jobs=None)[исходный код]

Модель LabelSpreading для обучения с частичным привлечением учителя.

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

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

Параметры:
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,)

Метка, присвоенная каждому объекту во время обучения.

n_features_in_int

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

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

feature_names_in_ndarray формы (n_features_in_,)

Названия признаков, обнаруженных во время обучения. Определяется только в том случае, если X содержит названия признаков, все из которых являются строками.

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

n_iter_int

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

См. также

LabelPropagation

Обучение с частичным привлечением учителя на основе графа без регуляризации.

Литература

Dengyong Zhou, Olivier Bousquet, Thomas Navin Lal, Jason Weston, Bernhard Schoelkopf. Обучение с локальной и глобальной согласованностью (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)[исходный код]

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

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

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

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

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

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

Возвращает:
selfобъект

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

get_metadata_routing()[исходный код]

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

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

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

Объект MetadataRequest, содержащий информацию о маршрутизации.

get_params(deep=True)[исходный код]

Получить параметры этого оценивателя.

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

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

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

Названия параметров и соответствующие им значения.

predict(X)[исходный код]

Выполняет индуктивный вывод с использованием модели.

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

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

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

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

predict_proba(X)[исходный код]

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

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

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

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

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

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

score(X, y, sample_weight=None)[исходный код]

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

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

Параметры:
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)[исходный код]

Задаёт параметры этого оценивателя.

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

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

Параметры оценивателя.

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

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

set_score_request(*, sample_weight:bool|None|str='$UNCHANGED$') → LabelSpreading[исходный код]

Настраивает, следует ли запрашивать передачу метаданных методу score.

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

Для каждого параметра доступны следующие варианты:

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

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

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

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

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

Возвращает:
selfобъект

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

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

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

Цифры и распространение меток: активное обучение

Круги и распространение меток: изучение сложной структуры

Классификация текста с частичным привлечением учителя

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

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

Spec-Zone.ru

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