为什么我在使用 OneClassSVM 进行离群值检测时得到“[LibSVM]”
Why am I getting `[LibSVM]` when im doing outlier detection with OneClassSVM
我正在使用 Python
的 Scikit-Learn
库进行离群值检测。我正在使用 OneClassSVM
。
我对此有疑问,因为每当我 运行 我的代码(我没有收到错误)时,它都会打印 [LibSVM].
我不知道为什么会得到这个,我的代码中没有任何打印功能。
out_cls = [['One class SVM',OneClassSVM(cache_size=80, coef0=0.5, gamma ='auto', kernel = 'poly', random_state= None, shrinking=True, tol = 0.1, verbose = True, nu = 0.2)],
['Isolation Forest', IsolationForest(behaviour='new', contamination='auto',max_features=4, max_samples=2, n_estimators= 90, random_state=1)]]
r = df
for out in out_cls:
cls = out[1]
model = cls.fit(x)
prediction = model.predict(x)
# print(model.best_params_)
result = []
for i in prediction:
if i == -1:
result.append('BOT')
else:
result.append('good')
r[out[0]] = result
scikit-learn 中的所有底层 SVM 功能实际上都基于 LibSVM;来自 OneClassSVM
:
的文档
The implementation is based on libsvm.
另请参阅 source code 中对此的大量引用。
此控制台输出只是模型定义中设置 verbose=True
的产物;改编 docs:
中的简单示例
from sklearn.svm import OneClassSVM
X=[[0], [0.44], [0.45], [0.46], [1]]
clf = OneClassSVM(gamma='auto', verbose=True)
clf.fit(X)
显示输出为:
[LibSVM]
OneClassSVM(cache_size=200, coef0=0.0, degree=3, gamma='auto', kernel='rbf',
max_iter=-1, nu=0.5, random_state=None, shrinking=True, tol=0.001,
verbose=True)
设置 verbose=False
消除 [LibSVM]
指示,这在任何情况下都不是问题,因为它不会以任何方式影响您的代码。
我正在使用 Python
的 Scikit-Learn
库进行离群值检测。我正在使用 OneClassSVM
。
我对此有疑问,因为每当我 运行 我的代码(我没有收到错误)时,它都会打印 [LibSVM].
我不知道为什么会得到这个,我的代码中没有任何打印功能。
out_cls = [['One class SVM',OneClassSVM(cache_size=80, coef0=0.5, gamma ='auto', kernel = 'poly', random_state= None, shrinking=True, tol = 0.1, verbose = True, nu = 0.2)],
['Isolation Forest', IsolationForest(behaviour='new', contamination='auto',max_features=4, max_samples=2, n_estimators= 90, random_state=1)]]
r = df
for out in out_cls:
cls = out[1]
model = cls.fit(x)
prediction = model.predict(x)
# print(model.best_params_)
result = []
for i in prediction:
if i == -1:
result.append('BOT')
else:
result.append('good')
r[out[0]] = result
scikit-learn 中的所有底层 SVM 功能实际上都基于 LibSVM;来自 OneClassSVM
:
The implementation is based on libsvm.
另请参阅 source code 中对此的大量引用。
此控制台输出只是模型定义中设置 verbose=True
的产物;改编 docs:
from sklearn.svm import OneClassSVM
X=[[0], [0.44], [0.45], [0.46], [1]]
clf = OneClassSVM(gamma='auto', verbose=True)
clf.fit(X)
显示输出为:
[LibSVM]
OneClassSVM(cache_size=200, coef0=0.0, degree=3, gamma='auto', kernel='rbf',
max_iter=-1, nu=0.5, random_state=None, shrinking=True, tol=0.001,
verbose=True)
设置 verbose=False
消除 [LibSVM]
指示,这在任何情况下都不是问题,因为它不会以任何方式影响您的代码。