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


Python sklearn NuSVR用法及代码示例


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

用法:

class sklearn.svm.NuSVR(*, nu=0.5, C=1.0, kernel='rbf', degree=3, gamma='scale', coef0=0.0, shrinking=True, tol=0.001, cache_size=200, verbose=False, max_iter=- 1)

Nu 支持向量回归。

与 NuSVC 类似,对于回归,使用参数 nu 来控制支持向量的数量。但是,与 NuSVC 不同,这里 nu 替换 C,这里 nu 替换了epsilon-SVR 的参数 epsilon。

该实现基于 libsvm。

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

参数

nu浮点数,默认=0.5

训练误差分数的上限和支持向量分数的下限。应该在 (0, 1] 区间内。默认取 0.5。

C浮点数,默认=1.0

误差项的惩罚参数 C。

kernel{‘linear’, ‘poly’, ‘rbf’, ‘sigmoid’, ‘precomputed’} 或可调用,默认='rbf'

指定要在算法中使用的内核类型。如果没有给出,将使用‘rbf’。如果给定了可调用对象,则它用于预先计算内核矩阵。

degree整数,默认=3

多项式核函数的度数 (‘poly’)。被所有其他内核忽略。

gamma{‘scale’, ‘auto’} 或浮点数,默认='scale'

‘rbf’, ‘poly’ 和 ‘sigmoid’ 的核系数。

  • 如果gamma='scale'(默认)被传递,那么它使用 1 /(n_features * X.var()) 作为伽玛值,
  • 如果‘auto’,使用 1 /n_features。
coef0浮点数,默认=0.0

核函数中的独立项。仅在‘poly’和‘sigmoid’中有意义。

shrinking布尔,默认=真

是否使用收缩启发式。请参阅用户指南。

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

停止标准的容差。

cache_size浮点数,默认=200

指定内核缓存的大小(以 MB 为单位)。

verbose布尔,默认=假

启用详细输出。请注意,此设置利用了 libsvm 中的 per-process 运行时设置,如果启用,该设置可能无法在多线程上下文中正常工作。

max_iter整数,默认=-1

求解器内迭代的硬限制,或 -1 表示无限制。

属性

class_weight_ndarray 形状 (n_classes,)

每个类的参数 C 的乘数。根据class_weight 参数计算。

coef_ndarray 形状 (1, n_features)

kernel="linear" 时分配给特征的权重。

dual_coef_ndarray 形状 (1, n_SV)

决策函数中支持向量的系数。

fit_status_int

如果正确安装,则为 0,否则为 1(将发出警告)

intercept_ndarray 形状 (1,)

决策函数中的常数。

n_features_in_int

拟合期间看到的特征数。

feature_names_in_ndarray 形状(n_features_in_,)

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

n_support_ndarray 形状 (n_classes,), dtype=int32

每个类的支持向量数。

shape_fit_int 形状的元组 (n_dimensions_of_X,)

训练向量 X 的数组维度。

support_ndarray 形状 (n_SV,)

支持向量的索引。

support_vectors_ndarray 形状(n_SV,n_features)

支持向量。

参考

1

LIBSVM:支持向量机库

2

普拉特,约翰 (1999)。 “支持向量机的概率输出以及与正则化似然方法的比较。”

例子

>>> from sklearn.svm import NuSVR
>>> from sklearn.pipeline import make_pipeline
>>> from sklearn.preprocessing import StandardScaler
>>> import numpy as np
>>> n_samples, n_features = 10, 5
>>> np.random.seed(0)
>>> y = np.random.randn(n_samples)
>>> X = np.random.randn(n_samples, n_features)
>>> regr = make_pipeline(StandardScaler(), NuSVR(C=1.0, nu=0.1))
>>> regr.fit(X, y)
Pipeline(steps=[('standardscaler', StandardScaler()),
                ('nusvr', NuSVR(nu=0.1))])

相关用法


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