Neural network 如何在Chainer框架中监视验证集上的错误?
我是Chainer的新手,我已经写了一个代码来训练一个简单的前馈神经网络。我有一个验证集和一个训练集,希望在每500次迭代中对验证集进行测试,如果结果更好,我希望保存我的网络权重。谁能告诉我怎么做 这是我的密码: 优化器=优化器.Adam() optimizer.setup(模型) 更新程序=培训。标准更新程序(培训程序、优化器、设备=0) trainer=training.trainer(更新程序,(10000,'epoch'),out='result') 培训师扩展(扩展评估员(验证、模型、设备=0)) trainer.extend(extensions.LogReport()) trainer.extend(extensions.PrintReport(['epoch'、'main/loss'、'validation/main/loss'、'passed_time'])) trainer.run()Neural network 如何在Chainer框架中监视验证集上的错误?,neural-network,chainer,Neural Network,Chainer,我是Chainer的新手,我已经写了一个代码来训练一个简单的前馈神经网络。我有一个验证集和一个训练集,希望在每500次迭代中对验证集进行测试,如果结果更好,我希望保存我的网络权重。谁能告诉我怎么做 这是我的密码: 优化器=优化器.Adam() optimizer.setup(模型) 更新程序=培训。标准更新程序(培训程序、优化器、设备=0) trainer=training.trainer(更新程序,(10000,'epoch'),out='result') 培训师扩展(扩展评估员(验证、模型、
评估器
报告,并由打印报告
打印。因此,它应该与上面的代码一起显示。要控制这些扩展的执行频率,可以在trainer.extend
函数中指定trigger
关键字参数。
例如,下面的代码指定每500次迭代打印一次
trainer.extend(extensions.PrintReport(['epoch'、'main/loss'、'validation/main/loss'、'appead_time']),触发器=(500,'iteration'))
您还可以将触发器指定为计算器
MinValueTrigger
设置trigger