python卷积神经网络(CNN),For循环调用函数训练并预测,为什么两个结果不一样?
(1)第一部分,定义函数,输入训练数据,测试数据,和预订的网络结构,在其中训练模型,然后预测出Y并返回
Function train_and_predict(train_x,train_y,test_x,layer_info):
model=train_net(train_x,train_y ,layer_info)
f_y=model.predict(test_x)
return f_y
(2)第二部分,主函数,用相同的数据,循环调用上述函数,为什么res_1和res_2不一样?该怎样解决?
outer_train_x=load('tran_xx.csv')
outer_train_y=load('tran_yy.csv')
outer_test_x=load('test_yy.csv')
outer_layer_info=load('layers_info.csv')
For m in range(0,2,1):
o_f_y=train_and_predict(outer_train_x, outer_train_y, outer_test_x, outer_layer_info)
if m==0:
res_1=o_f_y
if m==1:
res_2=o_f_y
为什么res_1和res_2不一样?该怎样解决? 注:我在train_and_predict当中设定了随机数种子和各种初始化权值,而且只用CPU计算,所以每次运行脚本,都能保证res_1的值都是相同的,既然每次运行都能保证res_1是相同的,不明白为什么res_1不等于res_2
?你都训练网络了,参数更新了输出肯定不一样啊,你在想什么?