1.简介:
(1)无监督异常值检测
(2)解决非平衡样本分类
2.函数定义
classsklearn.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)
3.参数含义:
kernel:
4.OneClass与2分类,多分类的区别
典型的2类问题:识别邮件是否是垃圾邮件,一类“是”,另一类“不是”
典型的多类问题:人脸识别,每个人对应的脸就是一个类,然后把待识别的脸分到对应的类中去
而OneClassClassification,它只有一个类,属于该类就返回结果“是”,不属于就返回结果“不是”,乍一听感觉与2分类没什么区别,其实他们的思想有很大差异。在2分类问题中,训练集中就由两个类的样本组成,训练出的模型是一个2分类模型;而OneClassClassification中的训练样本只有一类,因此训练出的分类器将不属于该类的所有其他样本判别为“不是”即可,而不是由于属于另一类才返回的“不是”结果。
现实场景中的OneClassClassification例子:现在有一堆某商品的历史销售数据,记录着买该产品的用户信息,此外还有一些没有购买过该产品的用户信息,想通过2分类来预测他们是否会买该产品,也就是弄两个类&