1
2
3
4
5
6
7
8
9 """Wrap the libsvm package into a very simple class interface."""
10
11 __docformat__ = 'restructuredtext'
12
13
14 import mvpa.base.externals as externals
15 from mvpa.misc import warning
16
17 from _svmbase import _SVM
18
19
20 SVM = None
21 _NuSVM = None
22 if externals.exists('shogun'):
23 from mvpa.clfs import sg
24 SVM = sg.SVM
25
26
27
28 if externals.exists('libsvm'):
29
30 from mvpa.clfs import libsvm
31 _NuSVM = libsvm.SVM
32 SVM = libsvm.SVM
33
34
35
36 if SVM is None:
37 warning("None of SVM implementions libraries was found")
38 else:
39 _defaultC = _SVM._SVM_PARAMS['C'].default
40 _defaultNu = _SVM._SVM_PARAMS['nu'].default
41
42
44 """C-SVM classifier using linear kernel.
45
46 See help for %s for more details
47 """ % SVM.__class__.__name__
48
50 """
51 """
52
53 SVM.__init__(self, C=C, kernel_type='linear', **kwargs)
54
55
57 """C-SVM classifier using a radial basis function kernel.
58
59 See help for %s for more details
60 """ % SVM.__class__.__name__
61
63 """
64 """
65
66 SVM.__init__(self, C=C, kernel_type='RBF', **kwargs)
67
68 if _NuSVM is not None:
70 """Nu-SVM classifier using linear kernel.
71
72 See help for %s for more details
73 """ % _NuSVM.__class__.__name__
74
76 """
77 """
78
79 _NuSVM.__init__(self, nu=nu, kernel_type='linear', **kwargs)
80
82 """Nu-SVM classifier using a radial basis function kernel.
83
84 See help for %s for more details
85 """ % SVM.__class__.__name__
86
88
89 SVM.__init__(self, nu=nu, kernel_type='RBF', **kwargs)
90