我正在尝试使用 MXNet 深度学习库训练我的 20x20 图像数据集,您可以查看以下代码:问题是当我运行它时,虽然它没有显示任何错误但什么也不返回,我的意思是它没有显示任何处理,例如:
第 0 轮:.........准确度:......
第 1 轮:.........准确度:......
那么,我该如何让它打印这样的处理格式,或者可能是哪里出了问题呢?注意:我尝试了各种回调 API:http://mxnet.io/api/python/callback.html?fref=gc他们都没有给出任何回应;代码没有错误,但没有显示处理步骤!
提前致谢
X_train = []
training_flatten_rows_mxnet_csv=np.loadtxt("training_set_flatten_rows_mxnet.csv", delimiter=",")
train_data = training_flatten_rows_mxnet_csv
X_train = train_data.reshape((training_counter,1,20,20))
Y_train = np.loadtxt("training_labels.csv", delimiter=",")
X_validate = []
validate_flatten_rows_mxnet_csv=np.loadtxt("validation_set_flatten_rows_mxnet.csv", delimiter=",")
validate_data = validate_flatten_rows_mxnet_csv
X_validate = validate_data.reshape((validate_counter,1,20,20))
Y_validate = np.loadtxt("validate_labels.csv", delimiter=",")
train_iterator = mx.io.NDArrayIter(X_train, Y_train, batch_size=batch_size,shuffle=True)#,last_batch_handle='discard')
validate_iterator = mx.io.NDArrayIter(X_validate, Y_validate, batch_size=batch_size,shuffle=True)
data = mx.sym.var('data')
conv1 = mx.sym.Convolution(data=data, kernel=(3,3), num_filter=6)
relu1 = mx.sym.Activation(data=conv1, act_type="relu")
pool1 = mx.sym.Pooling(data=relu1, pool_type="max", kernel=(2,2), stride=(2,2))
conv2 = mx.sym.Convolution(data=pool1, kernel=(6,6), num_filter=12)
relu2 = mx.sym.Activation(data=conv2, act_type="relu")
pool2 = mx.sym.Pooling(data=relu2, pool_type="max", kernel=(2,2), stride=(2,2))
flatten = mx.sym.flatten(data=pool2)
fc1 = mx.symbol.FullyConnected(data=flatten, num_hidden=12 )
lenet = mx.sym.SoftmaxOutput(data=fc1, name='softmax')
lenet_model = mx.mod.Module(symbol=lenet, context=mx.cpu())
lenet_model.fit(train_iterator,
eval_data=validate_iterator,
optimizer='sgd',
optimizer_params={'learning_rate':0.1},
eval_metric='acc',
batch_end_callback =mx.callback.Speedometer(batch_size, 100),
num_epoch=5)
我是一名优秀的程序员,十分优秀!