【发布时间】:2021-07-29 06:58:42
【问题描述】:
我正在比较两个不同神经网络的训练精度。如何设置比例以便它们具有可比性。 (比如将两个 y 轴都设置为 1,以便图表具有可比性)
我使用的代码如下:
def NeuralNetwork(X_train, Y_train, X_val, Y_val, epochs, nodes, lr):
hidden_layers = len(nodes) - 1
weights = InitializeWeights(nodes)
Training_accuracy=[]
Validation_accuracy=[]
for epoch in range(1, epochs+1):
weights = Train(X_train, Y_train, lr, weights)
if (epoch % 1 == 0):
print("Epoch {}".format(epoch))
print("Training Accuracy:{}".format(Accuracy(X_train, Y_train, weights)))
if X_val.any():
print("Validation Accuracy:{}".format(Accuracy(X_val, Y_val, weights)))
Training_accuracy.append(Accuracy(X_train, Y_train, weights))
Validation_accuracy.append(Accuracy(X_val, Y_val, weights))
plt.plot(Training_accuracy)
plt.plot((Validation_accuracy),'#008000')
plt.legend(["Training_accuracy", "Validation_accuracy"])
plt.xlabel("Epoch")
plt.ylabel("Accuracy")
return weights , Training_accuracy , Validation_accuracy
两张图如下:
【问题讨论】:
-
如果你使用子图你也可以写
sharey=True
标签: python matplotlib plot graph subplot