本文简要介绍python语言中 sklearn.svm.LinearSVR
的用法。
用法:
class sklearn.svm.LinearSVR(*, epsilon=0.0, tol=0.0001, C=1.0, loss='epsilon_insensitive', fit_intercept=True, intercept_scaling=1.0, dual=True, verbose=0, random_state=None, max_iter=1000)
线性支持向量回归。
与参数 kernel='linear' 的 SVR 类似,但根据 liblinear 而不是 libsvm 实现,因此它在选择惩罚和损失函数方掩码有更大的灵活性,并且应该更好地扩展到大量样本。
此类支持密集和稀疏输入。
在用户指南中阅读更多信息。
- epsilon:浮点数,默认=0.0
epsilon-insensitive 损失函数中的 Epsilon 参数。请注意,此参数的值取决于目标变量 y 的规模。如果不确定,请设置
epsilon=0
。- tol:浮点数,默认=1e-4
停止标准的公差。
- C:浮点数,默认=1.0
正则化参数。正则化的强度与 C 成反比。必须严格为正。
- loss:{‘epsilon_insensitive’, ‘squared_epsilon_insensitive’},默认='epsilon_insensitive'
指定损失函数。 epsilon-insensitive 损失(标准 SVR)是 L1 损失,而平方 epsilon-insensitive 损失(‘squared_epsilon_insensitive’)是 L2 损失。
- fit_intercept:布尔,默认=真
是否计算此模型的截距。如果设置为 false,则不会在计算中使用截距(即数据预计已经居中)。
- intercept_scaling:浮点数,默认=1.0
当 self.fit_intercept 为 True 时,实例向量 x 变为 [x, self.intercept_scaling],即在实例向量上附加一个常数值等于 intercept_scaling 的 “synthetic” 特征。截距变为intercept_scaling * 合成特征权重 注意!合成特征权重像所有其他特征一样受到 l1/l2 正则化。为了减少正则化对合成特征权重(因此对截距)的影响,必须增加intercept_scaling。
- dual:布尔,默认=真
选择算法来解决对偶或原始优化问题。当 n_samples > n_features 时首选 dual=False。
- verbose:整数,默认=0
启用详细输出。请注意,此设置利用了 liblinear 中的 per-process 运行时设置,如果启用,该设置可能无法在多线程上下文中正常工作。
- random_state:int、RandomState 实例或无,默认=无
控制用于打乱数据的伪随机数生成。传递 int 以在多个函数调用之间实现可重现的输出。请参阅术语表。
- max_iter:整数,默认=1000
要运行的最大迭代次数。
- coef_:ndarray of shape (n_features) if n_classes == 2 else (n_classes, n_features)
分配给特征的权重(原始问题中的系数)。
coef_
是从raw_coef_
派生的只读属性,它遵循 liblinear 的内部存储器布局。- intercept_:ndarray of shape (1) if n_classes == 2 else (n_classes)
决策函数中的常数。
- n_features_in_:int
拟合期间看到的特征数。
- feature_names_in_:ndarray 形状(
n_features_in_
,) 拟合期间看到的特征名称。仅当
X
具有全为字符串的函数名称时才定义。- n_iter_:int
在所有类中运行的最大迭代次数。
参数:
属性:
例子:
>>> from sklearn.svm import LinearSVR >>> from sklearn.pipeline import make_pipeline >>> from sklearn.preprocessing import StandardScaler >>> from sklearn.datasets import make_regression >>> X, y = make_regression(n_features=4, random_state=0) >>> regr = make_pipeline(StandardScaler(), ... LinearSVR(random_state=0, tol=1e-5)) >>> regr.fit(X, y) Pipeline(steps=[('standardscaler', StandardScaler()), ('linearsvr', LinearSVR(random_state=0, tol=1e-05))])
>>> print(regr.named_steps['linearsvr'].coef_) [18.582... 27.023... 44.357... 64.522...] >>> print(regr.named_steps['linearsvr'].intercept_) [-4...] >>> print(regr.predict([[0, 0, 0, 0]])) [-2.384...]
相关用法
- Python sklearn LinearSVC用法及代码示例
- Python sklearn LinearDiscriminantAnalysis用法及代码示例
- Python sklearn LinearRegression用法及代码示例
- Python sklearn LarsCV用法及代码示例
- Python sklearn Lars用法及代码示例
- Python sklearn LocalOutlierFactor.kneighbors_graph用法及代码示例
- Python sklearn LeavePOut用法及代码示例
- Python sklearn Lasso用法及代码示例
- Python sklearn LabelPropagation用法及代码示例
- Python sklearn LassoLars用法及代码示例
- Python sklearn LeaveOneOut用法及代码示例
- Python sklearn LogisticRegression用法及代码示例
- Python sklearn LassoLarsIC用法及代码示例
- Python sklearn LocallyLinearEmbedding用法及代码示例
- Python sklearn LedoitWolf用法及代码示例
- Python sklearn LassoCV.path用法及代码示例
- Python sklearn LogisticRegressionCV用法及代码示例
- Python sklearn LassoCV用法及代码示例
- Python sklearn LabelSpreading用法及代码示例
- Python sklearn LabelEncoder用法及代码示例
- Python sklearn LocalOutlierFactor.kneighbors用法及代码示例
- Python sklearn LabelBinarizer用法及代码示例
- Python sklearn LassoLarsCV用法及代码示例
- Python sklearn LatentDirichletAllocation用法及代码示例
- Python sklearn Lasso.path用法及代码示例
注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.svm.LinearSVR。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。