用于不平衡数据集的神经网络

时间:2018-10-22 16:16:45

标签: matlab machine-learning neural-network deep-learning

我有一个非常不平衡的数据集,包括6维186219行数据,其中包括132个正阳性对186087个假正,您建议尝试哪种类型的神经网络?我的Google云端硬盘IPDC_algorithm_training_dataset中的此电子表格包含我的训练数据集。如果“输出”选项卡中的值的值为100,则该功能为真正;如果某功能的值为0,则表示该功能为假正。

我现在已经与MATLAB捆绑在一起,所以如果我使用MATLAB解决这个问题,对我来说会更方便。

1 个答案:

答案 0 :(得分:0)

对于不平衡的数据集,您的选择有限。如果在整个数据集上训练神经网络,仅通过始终预测误报,它就可以达到99.9%的准确性。您需要以某种方式处理这种不平衡,例如丢弃(大量的)假阳性样本或对损失函数加权以解决不平衡。对于这种极端的不平衡,您可能需要同时应用两者(以及正则化,以防止剩余数据过拟合)。

就使用哪种网络类型而言,您至少可以将其作为基本的MLP(多层感知器)进行尝试–毫无必要构建复杂的架构,需要训练更多的参数,有限的数据集。

实际上,使用浅层学习算法(例如增强树或朴素贝叶斯)或获取更多数据以使用神经网络可能会更好。如果新数据可能仍然不平衡,则需要大量额外数据。