gpt4 book ai didi

java - 使用 Java API 的 weka 分类问题

转载 作者:行者123 更新时间:2023-11-30 07:45:57 25 4
gpt4 key购买 nike

我正在使用 10 倍交叉验证技术来训练 200K 记录。目标类索引就像

Status {PASS,FAIL}

通过有约 144K 实例,失败有约 6K 实例。

使用 J48 训练模型时。它无法找到失败的地方。准确度为 95%,但大多数情况下仅预测成功。在我们的例子中,我们需要找到实际发生的故障。

所以我的问题主要是假设分析。

  1. 训练期间类实例之间的分布真的很重要吗(在我的例子中通过,失败)。

  2. weka J48 树中可能存在哪些值可以更好地训练,因为我发现每通过 1000 条记录就有 2% 的失败。因此,如果我们增加成功场景,成功率就会增加。

  3. 他们之间的比例应该是多少,才能更好地训练他们。

就比率而言,我在 API 中找不到任何内容。

我没有添加代码,因为 Java API 以及使用 weka GUI 工具都会发生这种情况。

非常感谢。

最佳答案

这里的问题是您的数据集非常不平衡。您确实有一些选项可以帮助您完成分类任务:

  1. 使用 SMOTE 等算法为少数类生成合成实例。这应该会提高您的表现。
  2. 并非在所有情况下都可行,但您可以尝试将多数类(class)分成几个较小的类(class)。这将有助于平衡。
  3. 我相信 Weka 有一个单类分类器。这样可以看到较大类别的决策边界,并将少数类别视为异常值,从而有望实现更好的分类。请参阅here用于 Weka 的实现。

编辑:您还可以使用分类器,根据分类是否正确对分类进行加权。同样,Weka 将其作为元分类器,可以应用于大多数基本分类器,请参阅 here再次。

关于java - 使用 Java API 的 weka 分类问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33960302/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com