OneClassSVM
- classsklearn.svm.OneClassSVM(*, kernel='rbf', degree=3, gamma='scale', coef0=0.0, tol=0.001, nu=0.5, shrinking=True, cache_size=200, verbose=False, max_iter=-1)[исходный код]
-
Ненадзорное обнаружение выбросов.
Оценка носителя многомерного распределения.
Реализация основана на libsvm.
Подробнее см. в руководстве пользователя.
- Параметры:
-
- kernel{‘linear’, ‘poly’, ‘rbf’, ‘sigmoid’, ‘precomputed’} or callable, default=’rbf’
-
Задает тип ядра, используемый в алгоритме. Если значение не задано, будет использоваться ‘rbf’. Если задан вызываемый объект, он используется для предварительного вычисления матрицы ядра.
- degreeint, default=3
-
Степень полиномиальной функции ядра (‘poly’). Должна быть неотрицательной. Игнорируется для всех остальных ядер.
- gamma{‘scale’, ‘auto’} or float, default=’scale’
-
Коэффициент ядра для ‘rbf’, ‘poly’ и ‘sigmoid’.
- если передано
gamma='scale'(значение по умолчанию), в качестве значения gamma используется 1 / (n_features * X.var()), - если задано ‘auto’, используется 1 / n_features
- если задано число с плавающей точкой, оно должно быть неотрицательным.
Изменено в версии 0.22: Значение по умолчанию для
gammaизменено с ‘auto’ на ‘scale’. - если передано
- coef0float, default=0.0
-
Свободный член в функции ядра. Имеет значение только для ‘poly’ и ‘sigmoid’.
- tolfloat, default=1e-3
-
Допуск для критерия остановки.
- nufloat, default=0.5
-
Верхняя граница доли ошибок на обучающей выборке и нижняя граница доли опорных векторов. Должно находиться в интервале (0, 1]. По умолчанию используется значение 0.5.
- shrinkingbool, default=True
-
Использовать ли эвристику сжатия. См. руководство пользователя.
- cache_sizefloat, default=200
-
Задает размер кэша ядра (в МБ).
- verbosebool, default=False
-
Включить подробный вывод. Обратите внимание: этот параметр использует настройку времени выполнения libsvm для отдельного процесса, которая при включении может работать некорректно в многопоточной среде.
- max_iterint, default=-1
-
Жесткое ограничение числа итераций решателя или -1, если ограничение отсутствует.
- Атрибуты:
-
-
coef_ndarray or sparse array/matrix of shape (1, n_features) -
Веса, присвоенные признакам, когда
kernel="linear". - dual_coef_ndarray or sparse array/matrix of shape (1, n_SV)
-
Коэффициенты опорных векторов в функции принятия решения. Если
Xявляется разреженной, эти коэффициенты также будут разреженными. - fit_status_int
-
0, если обучение выполнено успешно, иначе 1 (будет выдано предупреждение)
- intercept_ndarray of shape (1,)
-
Константа в функции принятия решения.
- n_features_in_int
-
Количество признаков, обнаруженных во время обучения.
Добавлено в версии 0.24.
-
feature_names_in_ndarray of shape (
n_features_in_,) -
Названия признаков, обнаруженных во время обучения. Определяется только тогда, когда
Xсодержит названия признаков, представленные строками.Добавлено в версии 1.0.
- n_iter_int
-
Количество итераций, выполненных алгоритмом оптимизации для обучения модели.
Добавлено в версии 1.1.
-
n_support_ndarray of shape (n_classes,), dtype=int32 -
Количество опорных векторов для каждого класса.
- offset_float
-
Смещение, используемое для определения функции принятия решения по исходным оценкам. Выполняется соотношение: decision_function = score_samples -
offset_. Смещение противоположноintercept_и предоставляется для согласованности с другими алгоритмами обнаружения выбросов.Добавлено в версии 0.20.
- shape_fit_tuple of int of shape (n_dimensions_of_X,)
-
Размерности массива обучающего вектора
X. - support_ndarray of shape (n_SV,)
-
Индексы опорных векторов.
- support_vectors_ndarray or sparse array/matrix of shape (n_SV, n_features)
-
Опорные векторы. Если
Xявляется разреженной, они также будут разреженными.
-
См. также
sklearn.linear_model.SGDOneClassSVM-
Решает задачу линейного One-Class SVM с помощью стохастического градиентного спуска.
sklearn.neighbors.LocalOutlierFactor-
Ненадзорное обнаружение выбросов с помощью локального коэффициента выбросов (LOF).
sklearn.ensemble.IsolationForest-
Алгоритм Isolation Forest.
Примеры
>>> from sklearn.svm import OneClassSVM >>> X = [[0], [0.44], [0.45], [0.46], [1]] >>> clf = OneClassSVM(gamma='auto').fit(X) >>> clf.predict(X) array([-1, 1, 1, 1, -1]) >>> clf.score_samples(X) array([1.7798, 2.0547, 2.0556, 2.0561, 1.7332])
Более подробный пример см. в разделе Моделирование распространения видов
- decision_function(X)[исходный код]
-
Знаковое расстояние до разделяющей гиперплоскости.
Для объекта, не являющегося выбросом, знаковое расстояние положительно, а для выброса — отрицательно.
- Параметры:
-
- Xarray-like of shape (n_samples, n_features)
-
Матрица данных.
- Возвращает:
-
- decndarray of shape (n_samples,)
-
Возвращает функцию принятия решения для образцов.
- fit(X, y=None, sample_weight=None)[исходный код]
-
Определяет мягкую границу множества образцов X.
- Параметры:
-
- X{array-like, sparse matrix} of shape (n_samples, n_features)
-
Множество образцов, где
n_samples— количество образцов, аn_features— количество признаков. - yИгнорируется
-
Не используется; присутствует для согласованности API по соглашению.
- sample_weightarray-like of shape (n_samples,), default=None
-
Веса отдельных образцов. Изменяет C для каждого образца. Большие веса заставляют классификатор уделять этим точкам больше внимания.
- Возвращает:
-
- selfobject
-
Обученный оцениватель.
Примечания
Если X не является непрерывным массивом с порядком C, он копируется.
- fit_predict(X, y=None, **kwargs)[исходный код]
-
Выполняет обучение на X и возвращает метки для X.
Для выбросов возвращает -1, а для объектов, не являющихся выбросами, — 1.
- Параметры:
-
- X{array-like, sparse matrix} of shape (n_samples, n_features)
-
Входные образцы.
- yИгнорируется
-
Не используется; присутствует для согласованности API по соглашению.
- **kwargsdict
-
Аргументы, передаваемые в
fit.Добавлено в версии 1.4.
- Возвращает:
-
- yndarray of shape (n_samples,)
-
1 для объектов, не являющихся выбросами, -1 для выбросов.
- get_metadata_routing()[исходный код]
-
Получает маршрутизацию метаданных этого объекта.
О том, как работает механизм маршрутизации, см. в руководстве пользователя.
- Возвращает:
-
- routingMetadataRequest
-
MetadataRequest, содержащий информацию о маршрутизации.
- get_params(deep=True)[исходный код]
-
Получает параметры этого оценивателя.
- Параметры:
-
- deepbool, default=True
-
Если True, возвращает параметры этого оценивателя и содержащихся в нем подобъектов, которые являются оценивателями.
- Возвращает:
-
- paramsdict
-
Имена параметров и соответствующие им значения.
- predict(X)[исходный код]
-
Выполняет классификацию образцов в X.
Для модели одного класса возвращается +1 или -1.
- Параметры:
-
- X{array-like, sparse matrix} of shape (n_samples, n_features) or (n_samples_test, n_samples_train)
-
Для kernel=”precomputed” ожидаемая форма X — (n_samples_test, n_samples_train).
- Возвращает:
-
- y_predndarray of shape (n_samples,)
-
Метки классов для образцов в X.
- score_samples(X)[исходный код]
-
Функция вычисления исходных оценок образцов.
- Параметры:
-
- Xarray-like of shape (n_samples, n_features)
-
Матрица данных.
- Возвращает:
-
- score_samplesndarray of shape (n_samples,)
-
Возвращает функцию вычисления (без смещения) оценок образцов.
- set_fit_request(*, sample_weight:bool|None|str='$UNCHANGED$') OneClassSVM[исходный код]
-
Настраивает, следует ли запрашивать передачу метаданных в метод
fit.Обратите внимание: этот метод актуален только тогда, когда оцениватель используется как подобъект-оцениватель в составе метаоценивателя и включена маршрутизация метаданных с помощью
enable_metadata_routing=True(см.sklearn.set_config). О том, как работает механизм маршрутизации, см. в руководстве пользователя.Для каждого параметра доступны следующие варианты:
-
True: метаданные запрашиваются и передаются вfit, если они предоставлены. Запрос игнорируется, если метаданные не предоставлены. -
False: метаданные не запрашиваются, и метаоцениватель не передает их вfit. -
None: метаданные не запрашиваются, и метаоцениватель выдаст ошибку, если пользователь их предоставит. -
str: метаданные передаются метаоценивателю под указанным псевдонимом вместо исходного имени.
Значение по умолчанию (
sklearn.utils.metadata_routing.UNCHANGED) сохраняет текущий запрос. Это позволяет изменить запрос для одних параметров, не меняя его для остальных.Добавлено в версии 1.3.
- Параметры:
-
- sample_weightstr, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED
-
Маршрутизация метаданных для параметра
sample_weightметодаfit.
- Возвращает:
-
- selfobject
-
Обновленный объект.
-
- set_params(**params)[исходный код]
-
Задает параметры этого оценивателя.
Метод работает как с простыми оценивателями, так и с вложенными объектами (например,
Pipeline). Параметры последних имеют форму<component>__<parameter>, что позволяет обновлять каждый компонент вложенного объекта.- Параметры:
-
- **paramsdict
-
Параметры оценивателя.
- Возвращает:
-
- selfestimator instance
-
Экземпляр оценивателя.
Примеры из галереи
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.svm.OneClassSVM.html