经过了漫长时间终于能够让程序跑起来啦!
网上的帖子大都只写训练集的输入,并没有写测试集数据的输入,可恨的是我并没有发现这个问题。
在此记录一下如何给网络输入数据:
num_elements_train = 50000
num_elements_test = 2000
train_set_x = train_set_x[0:num_elements_train,:].eval()
train_set_y = train_set_y[0:num_elements_train].eval()
test_set_x = test_set_x[0:num_elements_test,:].eval()
test_set_y = test_set_y[0:num_elements_test].eval()
train_set_x = train_set_x.reshape((num_elements_train,1,28,28))
train_set_y = train_set_y.reshape((num_elements_train))
test_set_x = test_set_x.reshape((num_elements_test,1,28,28))
test_set_y = test_set_y.reshape((num_elements_test))
solver.net.set_input_arrays(train_set_x.astype(np.float32),train_set_y.astype(np.float32))
solver.test_nets[0].set_input_arrays(test_set_x.astype(np.float32),test_set_y.astype(np.float32))