首页 文章

Sklearn One Class SVM

提问于
浏览
-1

我试图在Sklearn中使用OneClassSVM进行异常值检测 . 用户每天访问网站,但有一天他访问了之前从未访问过的网站 . 我想使用OneClassSVM捕获这个异常值 . 以下是示例数据:

`([[www.makeuseof.com,
www.kickstater.com,
www.google.com,
www.mashable.com`

以下是样本测试数据

`test_data = ['www.makeuseof.com','www.google.com','www.abc.com',]`

我使用内置散列库的python散列所有字符串 . abs(hash('string'))

我期待它为 www.abc.com but its -1返回-1` .

2 回答

  • 3

    可能还有一些实现错误,但总的来说我认为散列会导致你的数据过于分散,所以基本散列不会让你准确预测这种情况下的异常值,因为一切都会远离其他一切好吧,一切都会有点异常 .

    对于你的任务,我不知道为什么你甚至需要机器学习 . 使用存储访问过的网站的字典,当您获得新网站时,检查它是否在字典中 . 快速,高效,轻松 .

  • 0

    这里简要解释为什么你不应该使用机器学习方法:

    这不是机器学习任务 . 从本质上讲,机器学习用于从嘈杂的数据中学习未知模式 . 这是一个非确定性的过程 . 这种模式的一个例子是

    “如果客户失业,25岁以下并且没有高中毕业证书,那么与所有男性客户相比,他的信用贷款违约风险增加了30% . ”

    在您的情况下,模式是已知的,可以描述为

    “用户访问之前从未访问过的页面” .

    这是一种确定性模式,因此您不应该在此使用机器学习方法 .

相关问题