コード例 #1
0
                model.gamma = gamma
                model.fit(list(data), list(unlab))
                score = model.score(list(testData), list(testLabels))
                print(score, ' gamma = ', gamma, ' max_iter = ', max_iter, ' alpha = ', alpha)
                if (score in scoreDict):
                    scoreDict[score].append(
                        'gamma = ' + str(gamma) + ' max_iter = ' + str(max_iter) + ' alpha = ' + str(alpha))
                else:
                    scoreDict[score] = [
                        'gamma = ' + str(gamma) + ' max_iter = ' + str(max_iter) + ' alpha = ' + str(alpha)]

    knnModel = LabelSpreading(kernel='knn')
    knnParams = {'n_neighbors': [1, 4, 9, 16], 'max_iter': [10, 100, 1000], 'alpha': [0.2, 0.4, 0.6, 0.8]}
    for max_iter in knnParams['max_iter']:
        model.max_iter = max_iter
        for alpha in knnParams['alpha']:
            model.alpha = alpha
            for n_neighbors in knnParams['n_neighbors']:
                model.n_neighbors = n_neighbors
                model.fit(list(data), list(unlab))
                score = model.score(list(testData), list(testLabels))
                print(score, ' n_neighbors = ', n_neighbors, ' max_iter = ', max_iter, ' alpha = ', alpha)
                if (score in scoreDict):
                    scoreDict[score].append(
                        'n_neighbors = ' + str(n_neighbors) + ' max_iter = ' + str(max_iter) + ' alpha = ' + str(alpha))
                else:
                    scoreDict[score] = [
                        'n_neighbors = ' + str(n_neighbors) + ' max_iter = ' + str(max_iter) + ' alpha = ' + str(alpha)]

    best = sorted(list(scoreDict.keys()))[-1]
    print('Best accuracy: ', best, scoreDict[best])