Esempio n. 1
0
        _x = []
        for j in range(n):
            _x.append(((X[i, j] - Min[j]) / (Max[j] - Min[j]) - 0.5) * 2)
            # 此处将feature值归一化压缩到 [-1,1] 区间内
        _X.append(_x)
    return mat(_X)


#--------------------------------------------------主函数---------------------------------------------------------

if __name__ == "__main__":
    # 1. 导入训练数据
    f = 'train.txt'
    raw_X, raw_Y = load_data(f)
    #print(raw_X.shape,raw_Y.shape)
    dataSet = Normalization(raw_X)
    labels = transformLabel(raw_Y)

    # 2. 训练SVM模型
    C = 1.2
    toler = 0.001
    svm_model = SVM.SVM_training(dataSet, labels, C, toler)

    # 3. 计算训练的准确性
    accuracy = SVM.cal_accuracy(svm_model, dataSet, labels)
    predict = get_predict(svm_model, dataSet)

    print("accuracy =", accuracy)
    print(predict.shape)
    show_plot(raw_X, predict)