Sklearn单类SVM

我正在尝试使用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返回-1,但实际上对所有网站都返回-1


回答:

可能还有一些实现上的错误,但总的来说,我认为哈希会导致数据过于分散,因此基本的哈希处理在这种情况下无法准确预测异常值,因为所有数据点之间的距离都太大,以至于所有数据点看起来都像是异常值。

对于你的任务,我不知道为什么你需要使用机器学习。你可以使用一个字典来存储访问过的网站,当你遇到一个新网站时,检查它是否在字典中。这方法快速、高效且简单。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注