【问题标题】:k-nearest neighbors where # of objects in each class differs vastlyk-最近邻,其中每个类中的对象数差异很大
【发布时间】:2016-10-02 23:18:46
【问题描述】:

我在一个对象被分类为 A 或 B 的数据集上运行 knn(在 R 中)。但是,A 的数量比 B 的多(每 1 个 B 类,A 类 18 个)。

我应该如何解决这个问题?例如,如果我使用 18 的 ak,并且邻居中有 7 个 B(比一组 18 个中的平均 B 多得多),那么测试数据仍然会被归类为 A,而应该是 B。

我认为较低的 k 会对我有所帮助。选择 k 的值是否有任何经验法则,因为它与训练集中类的频率有关?

【问题讨论】:

    标签: r classification knn


    【解决方案1】:

    没有这样的规则,对于你的情况,我会尝试一个非常小的 k,可能在 3 到 6 之间。

    关于数据集,除非您的测试数据或真实世界数据的比例与您提到的(18:1)大致相同,否则我会删除一些 A 以获得更准确的结果,如果比例是,我不建议您这样做确实接近真实世界的数据,因为您将失去比率的影响(较低概率的数据分类为较低的概率)。

    【讨论】:

    • 感谢您的建议!我最终确实删除了一些 A 以降低比率,并使用了较小的 k。我对结果很满意。
    猜你喜欢
    • 2012-04-18
    • 1970-01-01
    • 2018-05-09
    • 2019-01-03
    • 2011-12-30
    • 2013-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多