Neural network 神经网络训练中的奇怪行为?

Neural network 神经网络训练中的奇怪行为?,neural-network,classification,email-spam,Neural Network,Classification,Email Spam,我创建了一个用于检测垃圾邮件的神经网络。 它包括以下步骤 1.Formation of tf-idf matrix of terms and mails. 2.Reduction of matrix using PCA. 3.Feeding the 20 most important terms according to eigen values to neural network as features. 我正在训练它1-Spam和0-notspam 编辑: 我决定通过批量处理7封邮件来训练

我创建了一个用于检测垃圾邮件的神经网络。 它包括以下步骤

1.Formation of tf-idf matrix of terms and mails.
2.Reduction of matrix using PCA.
3.Feeding the 20 most important terms according to eigen values to neural network as features.
我正在训练它1-Spam和0-notspam

编辑: 我决定通过批量处理7封邮件来训练它,因为它在形成矩阵时容易出现内存不足错误。我使用了标准的安然火腿和垃圾邮件数据集。 我曾经通过反向传播训练神经网络-1个输入-1个隐藏-1个输出层,第一层有20个神经元,6个隐藏层神经元

因此,我开始在gmail中使用我的原始垃圾邮件进行培训,结果非常糟糕,然后将其切换到安然数据集。经过多次培训,取得了满意的效果

当我测试时,14封邮件中有6封被检测到垃圾邮件

我使用了替代培训,如垃圾邮件的第1批和火腿邮件的第2批等,这样网络的垃圾邮件输出为1,火腿输出为0

但是现在经过了太多的训练,我猜大概有400-500封邮件,如果再给你一次坏结果的话。我降低了学习速度,但没有帮助。
出了什么问题?

将我的评论总结成一个答案。。。如果你认为网络产生的结果是你所期望的,那么经过额外的训练后,输出的结果就不那么准确了,那么很有可能是这样


如果您的数据集很小或变化不够大,则特别容易发生这种情况。寻找最佳纪元数主要是反复试验

你没有给我们太多的信息,我编辑了。如果你需要一些具体的信息,请告诉我。我被卡住了。感谢为数不多的纪元,它能给你带来你期望的结果吗?如果是这样,您的数据集太小/有偏见,或者网络训练过度:它是!!是的,我想是训练过度了!我现在正在重新训练。谢谢哦,对了!谢谢你的澄清!现在,我正在接受1000个纪元的条件。我应该改变它吗?@IDK尝试不同的数量并比较它们。如果你将50、100、250、500、1000、2000、3000绘制成图表,你将真正能够看到影响。这些应该给你一个大范围的准确度。