【问题标题】:kNN improvement on Spam ClassificationkNN 对垃圾邮件分类的改进
【发布时间】:2014-04-29 20:31:32
【问题描述】:

目前我正在尝试使用 kNN 分类对垃圾邮件进行分类。数据集以词袋符号表示,它包含大约。大约 10000 个观测值。 900 个功能。 Matlab 是我用来处理数据的工具。

在过去的几天里,我使用了几种机器学习方法:SVM、贝叶斯和 kNN。在我看来,在最小化误报率方面,kNN 的性能优于 SVM 和贝叶斯。通过 10 倍交叉验证进行检查,我使用 k=9 和曼哈顿距离获得了 0.0025 的误报率。汉明距离在同一区域执行。

为了进一步提高我的 FPR,我尝试使用 PCA 对我的数据进行预处理,但是将我的 FPR 作为 0.08 的值是不可接受的。

您知道如何调整数据集以获得更好的 FPR 吗?

PS:是的,这是我通过机器学习课程必须完成的任务。

【问题讨论】:

  • 因为不是编程问题,你应该问她:cs.stackexchange.com
  • 你使用了什么样的贝叶斯。只是一个基本的朴素贝叶斯分类器?
  • 是的,我确实使用了朴素贝叶斯分类器。那是我们在课堂上使用的那个。您会建议另一种贝叶斯方法吗?

标签: matlab machine-learning classification spam knn


【解决方案1】:

尝试一下:重复计算训练数据中的非垃圾邮件样本。比如说,1000 个样本中有 500 个是非垃圾邮件。在重复计算非垃圾邮件后,您将拥有 1500 个样本的训练集。这可能会给假阳性测试样本更多的阳性最近邻。请注意,整体性能可能会受到影响。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-24
    • 1970-01-01
    • 2016-11-07
    • 1970-01-01
    • 2014-04-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多