如何使用sklearn中的SVM

2024-05-02 00:04

1. 如何使用sklearn中的SVM

CvSVMParams::CvSVMParams() :
svm_type(CvSVM::C_SVC), kernel_type(CvSVM::RBF), degree(0),
gamma(1), coef0(0), C(1), nu(0), p(0), class_weights(0)

SVM种类:CvSVM::C_SVC C_SVC该类型可以用于n-类分类问题 (n>=2),其重要特征是它可以处理非完美分类
的问题 (及训练数据不可以完全的线性分割)。它是最常被使用的SVM类型。 
CvSVM::C_SVC - n(n>=2)分类器,允许用异常值惩罚因子C进行不完全分类。
CvSVM::NU_SVC - n类似然不完全分类的分类器。参数nu取代了c,其值在区间【0,1】中,nu越大,决策边界越平滑。
CvSVM::ONE_CLASS - 单分类器,所有的训练数据提取自同一个类里,然後SVM建立了一个分界线以分割该类在特征空间中所占区域和其它类在特征空间中所占区域。
CvSVM::EPS_SVR - 回归。 训练集中的特征向量和拟合出来的超平面的距离需要小于p。异常值惩罚因子C被采用。
CvSVM::NU_SVR - 回归;nu 代替了p 
Kernel的种类: 
CvSVM::LINEAR - 表示不需要进行映射,没有任何向映射至高维空间,线性区分(或回归)在原始特征空间中被完成,这是最快的选择。 d(x,y) = xy == (x,y)
CvSVM::POLY - 多项式核: d(x,y) = (gamma*(xy)+coef0)degree
CvSVM::RBF - 径向基,对于大多数情况都是一个较好的选择:d(x,y) = exp(-gamma*|x-y|2)
CvSVM::SIGMOID - sigmoid函数被用作核函数: d(x,y) = tanh(gamma*(xy)+coef0) 
CvSVM::RBF,貌似比 CvSVM::LINER 正确率高
degree:内核函数(POLY)的参数degree。
10.0(此次不使用) 
gamma:内核函数(POLY/ RBF/ SIGMOID)的参数\gamma。
8.0 
coef0:内核函数(POLY/ SIGMOID)的参数coef0
1.0(此次不使用) 
C: Cvalue – SVM类型(C_SVC/ EPS_SVR/ NU_SVR)的参数C。
10.0 
nu: SVM类型(NU_SVC/ ONE_CLASS/ NU_SVR)的参数 \nu。
0.5(此次不使用) 
p:SVM类型(EPS_SVR)的参数 \epsilon。
0.1(此次不使用) 
class_weights: – C_SVC中的可选权重,赋给指定的类,乘以C以后变成 class_weight_si * C。所以这些权重影响不同类别的错误分类惩罚项。权重越大,某一类别的误分类数据的惩罚项就越大。
term_crit: – SVM的迭代训练过程的中止条件,解决部分受约束二次最优问题。您可以指定的公差和/或最大迭代次数。
然后对训练数据正规化处理,并放在CvMat型的数组里。

如何使用sklearn中的SVM

2. 如何使用sklearn中的SVM

SVM既可以用来分类,就是SVC;又可以用来预测,或者成为回归,就是SVR。sklearn中的svm模块中也集成了SVR类。     我们也使用一个小例子说明SVR怎么用。 X = [[0, 0], [1, 1]] y = [0.5, 1.5] clf = svm.SVR() clf.fit(X, y) result = clf.predict([2, 2]) print result

3. 如何使用sklearn中的SVM

SVM既可以用来分类,就是SVC;又可以用来预测,或者成为回归,就是SVR。sklearn中的svm模块中也集成了SVR类。
    我们也使用一个小例子说明SVR怎么用。
X = [[0, 0], [1, 1]] y = [0.5, 1.5] clf = svm.SVR() clf.fit(X, y) result = clf.predict([2, 2]) print result

如何使用sklearn中的SVM

4. 如何使用sklearn中的SVM

SVM既可以用来分类,就是SVC;又可以用来预测,或者成为回归,就是SVR。sklearn中的svm模块中也集成了SVR类。
我们也使用一个小例子说明SVR怎么用。
X = [[0, 0], [1, 1]] y = [0.5, 1.5] clf = svm.SVR() clf.fit(X, y) result = clf.predict([2, 2]) print result

5. 如何使用sklearn中的SVM

CvSVMParams::CvSVMParams() : svm_type(CvSVM::C_SVC), kernel_type(CvSVM::RBF), degree(0), gamma(1), coef0(0), C(1), nu(0), p(0), class_weights(0) SVM种类:CvSVM::C_SVC C_SVC该类型可以用于n-类分类问题 (n>=2),其重要特征是它可以处.

如何使用sklearn中的SVM

6. 如何使用sklearn中的SVM

在Python中,出现'nomodulenamedsklean'的原因是,没有正确安装sklean包。可以使用pip包管理器来安装包,pip包管理器会自动安装包所依赖的包而无需额外手动安装,因此十分方便。使用pip包管理器安装包的方法如下:在命令行中输入:pipinst

7. 如何使用sklearn中的SVM

sklean的官网有很详细的Guide文档,你可以根据自己实际选择是libsvm还是linlinear等等

如何使用sklearn中的SVM

8. 如何使用sklearn中的SVM

你好,
SVM既可以用来分类,就是SVC;又可以用来预测,或者成为回归,就是SVR。sklearn中的svm模块中也集成了SVR类。
    我们也使用一个小例子说明SVR怎么用。
X = [[0, 0], [1, 1]] y = [0.5, 1.5] clf = svm.SVR() clf.fit(X, y) result = clf.predict([2, 2]) print result