我有一个非常不平衡的数据集,由 6 个维度的 186219 行数据组成,包括 132 个真阳性和186087误报,您建议尝试哪种类型的神经网络?我的谷歌云端硬盘IPDC_algorithm_training_dataset中的这个电子表格包含我的训练数据集。如果输出选项卡中的值为 100,则该要素为真阳性,如果要素的值为 0,则表示该要素为误报。
我现在与 MATLAB 捆绑在一起,所以如果我使用 MATLAB 来解决这个问题对我来说会更方便。
对于不平衡的数据集,您的选择有限。 如果你在整个数据集上训练一个神经网络,只要始终预测误报,它就能达到 99.9% 的准确率。 您需要以某种方式处理这种不平衡,例如丢弃(大量(误报样本或加权损失函数以解释不平衡。 由于不平衡如此极端,您可能需要同时应用两者(以及正则化以防止过度拟合剩余数据(。
就使用哪种网络类型而言,您可以尝试使用基本的MLP(多层感知器(,至少作为基线 - 构建复杂的架构是没有意义的,需要训练更多参数,数据集非常有限。
实际上,您可能最好使用浅层学习算法,例如提升树或朴素贝叶斯,或者获取更多数据以支持使用神经网络。 如果新数据可能保持不平衡,则需要大量额外数据。