c#-多输出神经网络中的训练错误和验证错误
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c#-多输出神经网络中的训练错误和验证错误,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1202字,纯文字阅读大概需要2分钟。
内容图文
![c#-多输出神经网络中的训练错误和验证错误](/upload/InfoBanner/zyjiaocheng/660/45e34bd726464435ab784896da9f8234.jpg)
我正在开发一个用于研究神经网络的程序,到目前为止,我了解了将数据集分为3组(训练,验证和测试)的区别(我想).我的网络可能只有一个输出或多个输出,具体取决于数据集和问题.学习算法是反向传播.
因此,问题基本上是让我对每个错误及其计算方法感到困惑.
哪个训练错误?如果我想使用MSE是(期望的输出)^ 2吗?但是,如果我的网络有2个或更多输出,训练错误将是所有输出的总和,那会发生什么?
然后,验证错误只是使用验证数据集来计算输出,并将获得的结果与所需结果进行比较,这会给我带来错误,它的计算方法与训练错误中的计算方法相同吗?并有多个输出?
最后,不清楚的是,验证何时开始运行?我在某处读到它可能每5个周期出现一次,但是对此有任何规定吗?
提前感谢时间!
解决方法:
对于多个输出神经元,要计算训练误差,请在每个时期/迭代中获取每个输出值,并获得与该神经元目标值的差.将其平方,对其他输出神经元执行相同的操作,然后获得均值.
例如,有两个输出神经元
MSE =(| op1-targ1 | ^ 2 | op2-targ2 | ^ 2)/ 2
训练,验证和测试错误的计算方法相同.区别在于它们何时运行以及如何使用.
通常在每个训练时期检查完整的验证集.也许为了加快计算速度,您可以每5个运行一次.
验证测试/检查的结果不用于更新权重,仅用于确定何时退出训练.它用于确定网络是否对数据进行了泛化,而不是过拟合.
检查此问题的第一个答案中的伪代码
whats is the difference between train, validation and test set, in neural networks?
内容总结
以上是互联网集市为您收集整理的c#-多输出神经网络中的训练错误和验证错误全部内容,希望文章能够帮你解决c#-多输出神经网络中的训练错误和验证错误所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。