我正在尝试将trainbr训练功能用于我的神经网络字符识别项目。如何选择此函数的参数和迭代次数?还有如何划分数据进行培训,验证和测试?我已经浏览了nn工具箱文档。但我很难理解参数。
答案 0 :(得分:0)
在神经网络中,参数层数(layer_size)和每层的神经元数量(neuron_size),模型复杂度随着layer_size& neuronz_size会增加,因为它会赋予模型适应更复杂函数的能力,但随着模型复杂性的增加,很容易导致过度拟合(这意味着你在列车数据中得到的错误率很低,但要高验证数据和测试数据中的错误率。)
迭代应该与您期望的梯度相关,因为神经网络通常使用梯度下降法进行优化,通常我们会在梯度达到最小值(例如1e-4)时停止迭代,但它取决于,我建议你检查渐变而不是过多关注迭代,因为迭代次数取决于列车数据。
我建议选择train:validation:test的比例为6:3:1,但它取决于你得到的样本数,通常,我将测试样本数设置为0,只使用训练和验证数据集。