gpt4 book ai didi

matplotlib - 如何正确绘制 (loss_curve_) 从 MLPClassifier 获取的损失值

转载 作者:行者123 更新时间:2023-11-30 08:25:18 24 4
gpt4 key购买 nike

我使用以下代码通过 o​​jit_a 给定我的数据集来拟合模型:

tr_X, ts_X, tr_y, ts_y = train_test_split(X, y, train_size=.8)
model = MLPClassifier(hidden_layer_sizes=(32, 32),
activation='relu',
solver=adam,
learning_rate='adaptive',
early_stopping=True)

model.fit(tr_X, tr_y)
prd_r = model.predict(ts_X)
test_acc = accuracy_score(ts_y, prd_r) * 100.
loss_values = model.estimator.loss_curve_
print (loss_values)

如上所示,可以通过调用loss_curve_返回损失列表来获取每个批处理的损失值。我得到了这个:

[0.69411586222116872, 0.6923803442491846, 0.66657293575365906, 0.43212054205535255, 0.23119813830216157, 0.15497928755966919, 0.11799652235604828, 0.095235784011297939, 0.079951427356068624, 0.069012741113626194, 0.061282868601098078, 0.054871864138797251, 0.049835046972801049, 0.046056362860260207, 0.042823979794540182, 0.040681220899240651, 0.038262366774481374, 0.036256840660697079, 0.034418333946277503, 0.033547227978657508, 0.03285581956914093, 0.031671266419493666, 0.030941451221456757]

我想绘制这些结果来表示该模型的损失曲线。问题是我不知道在这种情况下 x 轴和 y 轴是什么。如果我将 y 轴 设为这些损失值,那么这里的 x 轴 应该是什么来显示损失曲线减少或增加?

任何提示或想法都会受到赞赏。

最佳答案

plot() 命令已重载,并且不需要 x 轴。如果您仅传入 loss_curve_,则默认 x 轴将是绘制的 y 值列表中的相应索引。例如,如果我们运行

import matplotlib.pyplot as plt

plt.plot(loss_values)
plt.show()

然后我们得到以下图表:

enter image description here

关于matplotlib - 如何正确绘制 (loss_curve_) 从 MLPClassifier 获取的损失值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48123023/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com