我使用tflearn.DNN构建了一个深度神经网络:
# Build neural network
net = tflearn.input_data(shape=[None, 5], name='input')
net = tflearn.fully_connected(net, 64, activation='sigmoid')
tflearn.batch_normalization(net)
net = tflearn.fully_connected(net, 32, activation='sigmoid')
tflearn.batch_normalization(net)
net = tflearn.fully_connected(net, 16, activation='sigmoid')
tflearn.batch_normalization(net)
net = tflearn.fully_connected(net, 8, activation='sigmoid')
tflearn.batch_normalization(net)
# activation needs to be softmax for classification.
# default loss is cross-entropy and the default metric is accuracy
# cross-entropy + accuracy = categorical network
net = tflearn.fully_connected(net, 2, activation='softmax')
sgd = tflearn.optimizers.SGD(learning_rate=0.01, lr_decay=0.96, decay_step=100)
net = tflearn.regression(net, optimizer=sgd, loss='categorical_crossentropy')
model = tflearn.DNN(net, tensorboard_verbose=0)我尝试了很多东西,但总损失一直围绕着这个价值:
Training Step: 95 | total loss: 0.68445 | time: 1.436s
| SGD | epoch: 001 | loss: 0.68445 - acc: 0.5670 | val_loss: 0.68363 - val_acc: 0.5714 -- iter: 9415/9415怎样才能减少总损失,提高精度呢?
发布于 2017-08-25 11:13:55
为了提高网络性能,可以从数据集和网络两方面考虑。仅仅通过你粘贴的网络结构,如果没有更多关于数据集和你想要得到的目标的信息,就很难给出一个清晰的方法来提高它的准确性。但是,以下是一些有用的实践可以帮助您调试/改进网络:
1.关于数据集
2.关于网络
为了更深入地分析,以下文章可能会对你有所帮助:
https://stackoverflow.com/questions/45878112
复制相似问题