Package mdp :: Package nodes :: Class LinearSVCScikitsLearnNode
[hide private]
[frames] | no frames]

Class LinearSVCScikitsLearnNode


Linear Support Vector Classification, Sparse Version This node has been automatically generated by wrapping the scikits.learn.svm.sparse.classes.LinearSVC class from the sklearn library. The wrapped instance can be accessed through the scikits_alg attribute. Similar to SVC with parameter kernel='linear', but uses internally liblinear rather than libsvm, so it has more flexibility in the choice of penalties and loss functions and should be faster for huge datasets.

Parameters

loss : string, 'l1' or 'l2' (default 'l2')
Specifies the loss function. With 'l1' it is the standard SVM loss (a.k.a. hinge Loss) while with 'l2' it is the squared loss. (a.k.a. squared hinge Loss)
penalty : string, 'l1' or 'l2' (default 'l2')
Specifies the norm used in the penalization. The 'l2' penalty is the standard used in SVC. The 'l1' leads to coef_ vectors that are sparse.
dual : bool, (default True)
Select the algorithm to either solve the dual or primal optimization problem.
intercept_scaling : float, default: 1
when self.fit_intercept is True, instance vector x becomes [x, self.intercept_scaling], i.e. a "synthetic" feature with constant value equals to intercept_scaling is appended to the instance vector. The intercept becomes intercept_scaling * synthetic feature weight Note! the synthetic feature weight is subject to l1/l2 regularization as all other features. To lessen the effect of regularization on synthetic feature weight (and therefore on the intercept) intercept_scaling has to be increased

Attributes

coef_ : array, shape = [n_features] if n_classes == 2 else [n_classes, n_features]
Wiehgiths asigned to the features (coefficients in the primal problem). This is only available in the case of linear kernel.
intercept_ : array, shape = [1] if n_classes == 2 else [n_classes]
constants in decision function

Notes

The underlying C implementation uses a random number generator to select features when fitting the model. It is thus not uncommon, to have slightly different results for the same input data. If that happens, try with a smaller eps parameter.

See also

SVC

References

LIBLINEAR -- A Library for Large Linear Classification http://www.csie.ntu.edu.tw/~cjlin/liblinear/

Instance Methods [hide private]
 
__init__(self, input_dim=None, output_dim=None, dtype=None, **kwargs)
Linear Support Vector Classification, Sparse Version This node has been automatically generated by wrapping the scikits.learn.svm.sparse.classes.LinearSVC class from the sklearn library. The wrapped instance can be accessed through the scikits_alg attribute. Similar to SVC with parameter kernel='linear', but uses internally liblinear rather than libsvm, so it has more flexibility in the choice of penalties and loss functions and should be faster for huge datasets.
list
_get_supported_dtypes(self)
Return the list of dtypes supported by this node. The types can be specified in any format allowed by numpy.dtype.
 
_label(self, x)
 
_stop_training(self, **kwargs)
Transform the data and labels lists to array objects and reshape them.
 
label(self, x)
Predict target values of X according to the fitted model. This node has been automatically generated by wrapping the scikits.learn.svm.sparse.classes.LinearSVC class from the sklearn library. The wrapped instance can be accessed through the scikits_alg attribute. Parameters
 
stop_training(self, **kwargs)
Fit the model using X, y as training data. This node has been automatically generated by wrapping the scikits.learn.svm.sparse.classes.LinearSVC class from the sklearn library. The wrapped instance can be accessed through the scikits_alg attribute. Parameters

Inherited from unreachable.newobject: __long__, __native__, __nonzero__, __unicode__, next

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __setattr__, __sizeof__, __subclasshook__

    Inherited from ClassifierCumulator
 
_check_train_args(self, x, labels)
 
_train(self, x, labels)
Cumulate all input data in a one dimensional list.
 
train(self, x, labels)
Cumulate all input data in a one dimensional list.
    Inherited from ClassifierNode
 
_execute(self, x)
 
_prob(self, x, *args, **kargs)
 
execute(self, x)
Process the data contained in x.
 
prob(self, x, *args, **kwargs)
This function does classification or regression on a test vector T given a model with probability information. This node has been automatically generated by wrapping the scikits.learn.svm.classes.SVC class from the sklearn library. The wrapped instance can be accessed through the scikits_alg attribute. Parameters
 
rank(self, x, threshold=None)
Returns ordered list with all labels ordered according to prob(x) (e.g., [[3 1 2], [2 1 3], ...]).
    Inherited from PreserveDimNode
 
_set_input_dim(self, n)
 
_set_output_dim(self, n)
    Inherited from Node
 
__add__(self, other)
 
__call__(self, x, *args, **kwargs)
Calling an instance of Node is equivalent to calling its execute method.
 
__repr__(self)
repr(x)
 
__str__(self)
str(x)
 
_check_input(self, x)
 
_check_output(self, y)
 
_get_train_seq(self)
 
_if_training_stop_training(self)
 
_inverse(self, x)
 
_pre_execution_checks(self, x)
This method contains all pre-execution checks.
 
_pre_inversion_checks(self, y)
This method contains all pre-inversion checks.
 
_refcast(self, x)
Helper function to cast arrays to the internal dtype.
 
_set_dtype(self, t)
 
copy(self, protocol=None)
Return a deep copy of the node.
 
get_current_train_phase(self)
Return the index of the current training phase.
 
get_dtype(self)
Return dtype.
 
get_input_dim(self)
Return input dimensions.
 
get_output_dim(self)
Return output dimensions.
 
get_remaining_train_phase(self)
Return the number of training phases still to accomplish.
 
get_supported_dtypes(self)
Return dtypes supported by the node as a list of numpy.dtype objects.
 
has_multiple_training_phases(self)
Return True if the node has multiple training phases.
 
inverse(self, y, *args, **kwargs)
Invert y.
 
is_training(self)
Return True if the node is in the training phase, False otherwise.
 
save(self, filename, protocol=-1)
Save a pickled serialization of the node to filename. If filename is None, return a string.
 
set_dtype(self, t)
Set internal structures' dtype.
 
set_input_dim(self, n)
Set input dimensions.
 
set_output_dim(self, n)
Set output dimensions.
Static Methods [hide private]
 
is_invertible()
Return True if the node can be inverted, False otherwise.
bool
is_trainable()
Return True if the node can be trained, False otherwise.
Properties [hide private]

Inherited from object: __class__

    Inherited from Node
  _train_seq
List of tuples:
  dtype
dtype
  input_dim
Input dimensions
  output_dim
Output dimensions
  supported_dtypes
Supported dtypes
Method Details [hide private]

__init__(self, input_dim=None, output_dim=None, dtype=None, **kwargs)
(Constructor)

 

Linear Support Vector Classification, Sparse Version This node has been automatically generated by wrapping the scikits.learn.svm.sparse.classes.LinearSVC class from the sklearn library. The wrapped instance can be accessed through the scikits_alg attribute. Similar to SVC with parameter kernel='linear', but uses internally liblinear rather than libsvm, so it has more flexibility in the choice of penalties and loss functions and should be faster for huge datasets.

Parameters

loss : string, 'l1' or 'l2' (default 'l2')
Specifies the loss function. With 'l1' it is the standard SVM loss (a.k.a. hinge Loss) while with 'l2' it is the squared loss. (a.k.a. squared hinge Loss)
penalty : string, 'l1' or 'l2' (default 'l2')
Specifies the norm used in the penalization. The 'l2' penalty is the standard used in SVC. The 'l1' leads to coef_ vectors that are sparse.
dual : bool, (default True)
Select the algorithm to either solve the dual or primal optimization problem.
intercept_scaling : float, default: 1
when self.fit_intercept is True, instance vector x becomes [x, self.intercept_scaling], i.e. a "synthetic" feature with constant value equals to intercept_scaling is appended to the instance vector. The intercept becomes intercept_scaling * synthetic feature weight Note! the synthetic feature weight is subject to l1/l2 regularization as all other features. To lessen the effect of regularization on synthetic feature weight (and therefore on the intercept) intercept_scaling has to be increased

Attributes

coef_ : array, shape = [n_features] if n_classes == 2 else [n_classes, n_features]
Wiehgiths asigned to the features (coefficients in the primal problem). This is only available in the case of linear kernel.
intercept_ : array, shape = [1] if n_classes == 2 else [n_classes]
constants in decision function

Notes

The underlying C implementation uses a random number generator to select features when fitting the model. It is thus not uncommon, to have slightly different results for the same input data. If that happens, try with a smaller eps parameter.

See also

SVC

References

LIBLINEAR -- A Library for Large Linear Classification http://www.csie.ntu.edu.tw/~cjlin/liblinear/

Overrides: object.__init__

_get_supported_dtypes(self)

 
Return the list of dtypes supported by this node. The types can be specified in any format allowed by numpy.dtype.
Returns: list
The list of dtypes supported by this node.
Overrides: Node._get_supported_dtypes

_label(self, x)

 
Overrides: ClassifierNode._label

_stop_training(self, **kwargs)

 
Transform the data and labels lists to array objects and reshape them.

Overrides: Node._stop_training

is_invertible()
Static Method

 
Return True if the node can be inverted, False otherwise.
Overrides: Node.is_invertible
(inherited documentation)

is_trainable()
Static Method

 
Return True if the node can be trained, False otherwise.
Returns: bool
A boolean indicating whether the node can be trained.
Overrides: Node.is_trainable

label(self, x)

 

Predict target values of X according to the fitted model. This node has been automatically generated by wrapping the scikits.learn.svm.sparse.classes.LinearSVC class from the sklearn library. The wrapped instance can be accessed through the scikits_alg attribute. Parameters

X : sparse matrix, shape = [n_samples, n_features]

Returns

C : array, shape = [n_samples]

Overrides: ClassifierNode.label

stop_training(self, **kwargs)

 

Fit the model using X, y as training data. This node has been automatically generated by wrapping the scikits.learn.svm.sparse.classes.LinearSVC class from the sklearn library. The wrapped instance can be accessed through the scikits_alg attribute. Parameters

X : sparse matrix, shape = [n_samples, n_features]
Training vector, where n_samples in the number of samples and n_features is the number of features.
y : array, shape = [n_samples]
Target vector relative to X

Returns

self : object
Returns an instance of self.
Overrides: Node.stop_training