美文网首页
SVM算法项目实践---波士顿房价回归分析

SVM算法项目实践---波士顿房价回归分析

作者: 一只怂货小脑斧 | 来源:发表于2020-09-28 15:13 被阅读0次

    引言

    采用波士顿房价数据,因为SVM算法对数据预处理 要求较高,房价数据特征量级差异大,因此需要进行预处理

    代码

    #SVM实例---波士顿房价回归分析
    #
    import numpy as np
    import matplotlib.pyplot as plt
    from sklearn import svm
    from sklearn.datasets import load_boston #导入波士顿房价数据集
    from sklearn.model_selection import train_test_split #切分训练集和测试集
    from sklearn.preprocessing import StandardScaler #预处理
    
    boston = load_boston()
    
    #打印数据集中的键
    print(boston.keys()) #target是业主自住房屋价格的中位数
    
    X, y = boston.data, boston.target
    #拆分训练集和数据集
    X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=8)
    
    #对训练集和测试集进行数据预处理
    scaler = StandardScaler()
    scaler.fit(X_train)
    X_train_scaled = scaler.transform(X_train)
    X_test_scaled = scaler.transform(X_test)
    
    #训练模型
    for kernal in ['linear', 'rbf']:
        svr = svm.SVR(kernel=kernal)
        svr.fit(X_train_scaled, y_train)
        print('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>')
        print('数据预处理后',kernal,' 核函数的模型训练集得分:{:.3f}'.format(svr.score(X_train_scaled, y_train)))
        print('数据预处理后',kernal,' 核函数的模型测试集得分:{:.3f}'.format(svr.score(X_test_scaled, y_test)))
        #调节参数
        if kernal == 'rbf':
            svr1 = svm.SVR(kernel=kernal, C=100, gamma=0.1)
            svr1.fit(X_train_scaled, y_train)
            print('数据预处理后', kernal, ' 核函数调参后,模型训练集得分:{:.3f}'.format(svr1.score(X_train_scaled, y_train)))
            print('数据预处理后', kernal, ' 核函数调参后,模型测试集得分:{:.3f}'.format(svr1.score(X_test_scaled, y_test)))
    

    执行结果

    dict_keys(['data', 'target', 'feature_names', 'DESCR'])
    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    数据预处理后 linear  核函数的模型训练集得分:0.705
    数据预处理后 linear  核函数的模型测试集得分:0.698
    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    数据预处理后 rbf  核函数的模型训练集得分:0.665
    数据预处理后 rbf  核函数的模型测试集得分:0.694
    数据预处理后 rbf  核函数调参后,模型训练集得分:0.966
    数据预处理后 rbf  核函数调参后,模型测试集得分:0.894
    

    注释:

    《Sklearn之数据预处理——StandardScaler》

    相关文章

      网友评论

          本文标题:SVM算法项目实践---波士顿房价回归分析

          本文链接:https://www.haomeiwen.com/subject/kfpduktx.html