2016 - 2024

感恩一路有你

神经网络数据集要求 用同一数据集训练神经网络,每次训练结果不一样,有时正确率很高,有时很低,为什么?

浏览量:1743 时间:2021-03-15 01:47:38 作者:admin

用同一数据集训练神经网络,每次训练结果不一样,有时正确率很高,有时很低,为什么?

其实这个问题的实质是,如果我们用机器学习算法在数据集上训练一次数据模型,保存模型,然后用同样的算法和同样的数据集和数据排序再训练一遍,第一个模型和第二个模型是一样的吗?

这可能是因为神经网络用增益或权重的随机值初始化,然后每个模拟在训练阶段有不同的起点。如果您希望始终保持相同的初始权重,可以尝试为初始权重修复种子以消除问题。

如果我们深入研究这个问题,我们可以根据ml算法的“确定性”来对其进行分类。当从同一个数据集进行训练时:

一个是总是生成相同的模型,并且记录以相同的顺序呈现;

另一个是总是生成不同的模型,并且记录顺序不同。

在实践中,大多数是“不确定的”。模型变化的原因可能是机器学习算法本身存在随机游走、不同权值的随机初始化、不同分量的概率分布抽样来分配优化函数。

虽然模型的“不确定性”可能会对单个训练结果造成干扰,但我们也可以用“不确定性”来确认模型的稳定性,如决策树、支持向量机(SVM)、神经网络等,最终可以通过多次迭代来确认模型的稳定性。

既然使用神经网络也可以解决分类问题,那SVM、决策树这些算法还有什么意义呢?

这取决于数据量和样本数。不同的样本数和特征数据适合不同的算法。像神经网络这样的深度学习算法需要训练大量的数据集来建立更好的预测模型。许多大型互联网公司更喜欢深度学习算法,因为他们获得的用户数据是数以亿计的海量数据,这更适合于卷积神经网络等深度学习算法。

如果样本数量较少,则更适合使用SVM、决策树和其他机器学习算法。如果你有一个大的数据集,你可以考虑使用卷积神经网络和其他深度学习算法。

以下是一个图表,用于说明根据样本数量和数据集大小选择的任何机器学习算法。

如果你认为它对你有帮助,你可以多表扬,也可以关注它。谢谢您!

神经网络数据集要求 深度神经网络 神经网络训练数据集

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。