OneClassSVM
¶
-
class
ibex.sklearn.svm.
OneClassSVM
(kernel='rbf', degree=3, gamma='auto', coef0=0.0, tol=0.001, nu=0.5, shrinking=True, cache_size=200, verbose=False, max_iter=-1, random_state=None)¶ Bases:
sklearn.svm.classes.OneClassSVM
,ibex._base.FrameMixin
Note
The documentation following is of the class wrapped by this class. There are some changes, in particular:
- A parameter
X
denotes apandas.DataFrame
. - A parameter
y
denotes apandas.Series
.
Note
The documentation following is of the original class wrapped by this class. This class wraps the attribute
coef_
.Example:
>>> import pandas as pd >>> import numpy as np >>> from ibex.sklearn import datasets >>> from ibex.sklearn.linear_model import LinearRegression as PdLinearRegression
>>> iris = datasets.load_iris() >>> features = iris['feature_names'] >>> iris = pd.DataFrame( ... np.c_[iris['data'], iris['target']], ... columns=features+['class'])
>>> iris[features] sepal length (cm) sepal width (cm) petal length (cm) petal width (cm) 0 5.1 3.5 1.4 0.2 1 4.9 3.0 1.4 0.2 2 4.7 3.2 1.3 0.2 3 4.6 3.1 1.5 0.2 4 5.0 3.6 1.4 0.2 ...
>>> from ibex.sklearn import svm as pd_svm >>> >>> prd = pd_svm.OneClassSVM().fit(iris[features], iris['class']) >>> >>> prd.coef_ sepal length (cm) ... sepal width (cm) ... petal length (cm) ... petal width (cm) ... dtype: float64
Example:
>>> from ibex.sklearn import svm as pd_svm >>> prd = pd_svm.OneClassSVM().fit(iris[features], iris[['class', 'class']]) >>> >>> prd.coef_ sepal length (cm) sepal width (cm) petal length (cm) petal width (cm) 0... 0.414988 1.461297 -2.262141 -1.029095 1... 0.416640 -1.600833 0.577658 -1.385538 2... -1.707525 -1.534268 2.470972 2.555382
Note
The documentation following is of the original class wrapped by this class. This class wraps the attribute
intercept_
.Example:
>>> import pandas as pd >>> import numpy as np >>> from ibex.sklearn import datasets >>> from ibex.sklearn.linear_model import LinearRegression as PdLinearRegression
>>> iris = datasets.load_iris() >>> features = iris['feature_names'] >>> iris = pd.DataFrame( ... np.c_[iris['data'], iris['target']], ... columns=features+['class'])
>>> iris[features] sepal length (cm) sepal width (cm) petal length (cm) petal width (cm) 0 5.1 3.5 1.4 0.2 1 4.9 3.0 1.4 0.2 2 4.7 3.2 1.3 0.2 3 4.6 3.1 1.5 0.2 4 5.0 3.6 1.4 0.2 ...
>>> from ibex.sklearn import svm as pd_svm >>> prd = pd_svm.OneClassSVM().fit(iris[features], iris[['class', 'class']]) >>> >>> prd.intercept_ sepal length (cm) ... sepal width (cm) ... petal length (cm) ... petal width (cm) ... dtype: float64
Unsupervised Outlier Detection.
Estimate the support of a high-dimensional distribution.
The implementation is based on libsvm.
Read more in the User Guide.
- kernel : string, optional (default=’rbf’)
- Specifies the kernel type to be used in the algorithm. It must be one of ‘linear’, ‘poly’, ‘rbf’, ‘sigmoid’, ‘precomputed’ or a callable. If none is given, ‘rbf’ will be used. If a callable is given it is used to precompute the kernel matrix.
- nu : float, optional
- An upper bound on the fraction of training errors and a lower bound of the fraction of support vectors. Should be in the interval (0, 1]. By default 0.5 will be taken.
- degree : int, optional (default=3)
- Degree of the polynomial kernel function (‘poly’). Ignored by all other kernels.
- gamma : float, optional (default=’auto’)
- Kernel coefficient for ‘rbf’, ‘poly’ and ‘sigmoid’. If gamma is ‘auto’ then 1/n_features will be used instead.
- coef0 : float, optional (default=0.0)
- Independent term in kernel function. It is only significant in ‘poly’ and ‘sigmoid’.
- tol : float, optional
- Tolerance for stopping criterion.
- shrinking : boolean, optional
- Whether to use the shrinking heuristic.
- cache_size : float, optional
- Specify the size of the kernel cache (in MB).
- verbose : bool, default: False
- Enable verbose output. Note that this setting takes advantage of a per-process runtime setting in libsvm that, if enabled, may not work properly in a multithreaded context.
- max_iter : int, optional (default=-1)
- Hard limit on iterations within solver, or -1 for no limit.
- random_state : int, RandomState instance or None, optional (default=None)
- The seed of the pseudo random number generator to use when shuffling the data. If int, random_state is the seed used by the random number generator; If RandomState instance, random_state is the random number generator; If None, the random number generator is the RandomState instance used by np.random.
- support_ : array-like, shape = [n_SV]
- Indices of support vectors.
- support_vectors_ : array-like, shape = [nSV, n_features]
- Support vectors.
- dual_coef_ : array, shape = [1, n_SV]
- Coefficients of the support vectors in the decision function.
- coef_ : array, shape = [1, n_features]
Weights assigned to the features (coefficients in the primal problem). This is only available in the case of a linear kernel.
coef_ is readonly property derived from dual_coef_ and support_vectors_
- intercept_ : array, shape = [1,]
- Constant in the decision function.
-
decision_function
(X)[source]¶ Note
The documentation following is of the class wrapped by this class. There are some changes, in particular:
- A parameter
X
denotes apandas.DataFrame
. - A parameter
y
denotes apandas.Series
.
Signed distance to the separating hyperplane.
Signed distance is positive for an inlier and negative for an outlier.
X : array-like, shape (n_samples, n_features)
- X : array-like, shape (n_samples,)
- Returns the decision function of the samples.
- A parameter
-
fit
(X, y=None, sample_weight=None, **params)[source]¶ Note
The documentation following is of the class wrapped by this class. There are some changes, in particular:
- A parameter
X
denotes apandas.DataFrame
. - A parameter
y
denotes apandas.Series
.
Detects the soft boundary of the set of samples X.
- X : {array-like, sparse matrix}, shape (n_samples, n_features)
- Set of samples, where n_samples is the number of samples and n_features is the number of features.
- sample_weight : array-like, shape (n_samples,)
- Per-sample weights. Rescale C per sample. Higher weights force the classifier to put more emphasis on these points.
- self : object
- Returns self.
If X is not a C-ordered contiguous array it is copied.
- A parameter
-
predict
(X)[source]¶ Note
The documentation following is of the class wrapped by this class. There are some changes, in particular:
- A parameter
X
denotes apandas.DataFrame
. - A parameter
y
denotes apandas.Series
.
Perform classification on samples in X.
For an one-class model, +1 or -1 is returned.
- X : {array-like, sparse matrix}, shape (n_samples, n_features)
- For kernel=”precomputed”, the expected shape of X is [n_samples_test, n_samples_train]
- y_pred : array, shape (n_samples,)
- Class labels for samples in X.
- A parameter
- A parameter