r2_dict = {}
r2_list = []
for i in range(1, 33):
for j in range(1, 17):
for k in range(1, 9):
ann = MLPRegressor(hidden_layer_sizes=(i, j, k), activation='relu', solver='adam',
alpha=0.001,
max_iter=10000)
ann.fit(X_train, Y_train)
y_test_pred = ann.predict(X_test)
r2 = 1 - sum((Y_test - y_test_pred) ** 2) / sum(Y_test ** 2)
r2_list.append(r2)
r2_dict[r2] = (i, j, k)
print('神经网络3', (i, j, k), r2_dict[max(r2_list)], max(r2_list))
请教一下各位大佬,这种循环调参选取最大r2的代码有什么问题么,选取出最大的参数后,单独运行却不是最大的r2