I have a multi-class dataset and am trying to use OneClassSVM()
to classify each class.
from sklearn.svm import OneClassSVM
clf = OneClassSVM(gamma='auto').fit(df)
x_train,x_test,y_train,y_test = train_test_split(df,target,test_size=0.30, random_state=25)
inliers=df[clf.predict(df)==1]
outliers=df[clf.predict(df)==-1]
so I would like to know how can I train OneClassSVM()
on each class?
One way to do this is to separate the dataset by class and each class be trained separately in OCSVM. Here is a code that returns different evaluation metrics for inliers (1) and outliers (-1).