当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python sklearn LabelSpreading用法及代码示例


本文简要介绍python语言中 sklearn.semi_supervised.LabelSpreading 的用法。

用法:

class sklearn.semi_supervised.LabelSpreading(kernel='rbf', *, gamma=20, n_neighbors=7, alpha=0.2, max_iter=30, tol=0.001, n_jobs=None)

用于semi-supervised学习的LabelSpreading模型。

该模型类似于基本的标签传播算法,但使用基于归一化图拉普拉斯算子的亲和矩阵和跨标签的软钳位。

在用户指南中阅读更多信息。

参数

kernel{‘knn’, ‘rbf’} 或可调用,默认='rbf'

要使用的内核函数或内核函数本身的字符串标识符。只有 ‘rbf’ 和 ‘knn’ 字符串是有效输入。传递的函数应采用两个输入,每个输入的形状为 (n_samples, n_features),并返回 (n_samples, n_samples) 形状的权重矩阵。

gamma浮点数,默认=20

rbf 内核的参数。

n_neighbors整数,默认=7

knn 内核的参数,它是一个严格的正整数。

alpha浮点数,默认=0.2

钳位系数。 (0, 1) 中的一个值,它指定实例应采用来自其邻居的信息而不是其初始标签的相对数量。 alpha=0 表示保留初始标签信息; alpha=1 表示替换所有初始信息。

max_iter整数,默认=30

允许的最大迭代次数。

tol浮点数,默认=1e-3

收敛容差:考虑系统处于稳态的阈值。

n_jobs整数,默认=无

要运行的并行作业数。 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

拟合期间看到的特征数。

feature_names_in_ndarray 形状(n_features_in_,)

拟合期间看到的特征名称。仅当 X 具有全为字符串的函数名称时才定义。

n_iter_int

运行的迭代次数。

参考

周登勇、奥利维尔·布斯凯、托马斯·纳文·拉尔、 json ·韦斯顿、伯恩哈德·舍尔科夫。本地和全局一致性学习(2004 年)http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.115.3219

例子

>>> 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(...)

相关用法


注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.semi_supervised.LabelSpreading。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。