我有一个数据集X和标签y,用于训练和评分sklearn.SVC模型。数据分为X_trainX_test。我运行for-loop来找到两个SVC参数(Cgamma)的最佳可能值组合(即最佳分数)。我可以打印出最高分数,但是如何打印用于该特定分数的C和伽玛值?

for C in np.arange(0.05, 2.05, 0.05):
    for gamma in np.arange(0.001, 0.101, 0.001):
        model = SVC(kernel='rbf', gamma=gamma, C=C)
        model.fit(X_train, y_train)
        score = model.score(X_test, y_test)
        if score > best_score:
            best_score = score
print('Highest Accuracy Score: ', best_score)

最佳答案

您可以将其更改为:

   if score > best_score:
        best_score = score
        best_C = C
        best_gamma = gamma


或创建一个元组:

if score > best_score:
    best_score = score, C, gamma

关于python - Python for循环找到SVC的最佳值(C和gamma),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49006391/

10-12 22:24