zoukankan      html  css  js  c++  java
  • 机器学习-分类算法-模型的保存和加载12

    在这里插入图片描述
    在这里插入图片描述
    保存模型

    from sklearn.datasets import load_boston
    from sklearn.linear_model import LinearRegression,SGDRegressor,Ridge
    from sklearn.model_selection import train_test_split
    from sklearn.preprocessing import StandardScaler
    from sklearn.metrics import mean_squared_error
    import joblib
    
    
    
    def mylinear():
        """
        线性回归直接预测房子价格
        :return: 
        """
        # 获取数据
        lb = load_boston()
    
        # 分割数据到训练集和测试集
        x_train,x_test,y_train,y_test = train_test_split(lb.data,lb.target,test_size=0.25)
        print(y_train,x_test)
        # 进行标准化处理
        # 特征值和目标值都必须进行标准化处理(实例化2个标准化API)
            # 特征值标准化处理
        std_x = StandardScaler()
        x_train = std_x.fit_transform(x_train)
        x_test = std_x.transform(x_test)
            # 目标值标准化处理
        std_y = StandardScaler()
        y_train = std_y.fit_transform(y_train.reshape(-1,1)) # 要求数据必须是二维我们需要使用reshape(-1,1)进行转换
        y_test = std_y.transform(y_test.reshape(-1,1))
    
    
        # estimator预测
        # 正规方程求解预测结果
        lr = LinearRegression()
        lr.fit(x_train,y_train)
        print(lr.coef_)
    
        # 保存训练好的模型
        joblib.dump(lr,"test.pkl")
    
        # 预测测试集的房子价格
        y_lr_predict = lr.predict(x_test)
        y_lr_predict = std_y.inverse_transform(y_lr_predict)# 将降维后的数据转换成原始数据
        print("正规方程测试集里面每个房子的预测价格:",y_lr_predict)
        print("正规方程的均方误差:",mean_squared_error(std_y.inverse_transform(y_test),y_lr_predict))
    
    
    
        return None
    
    
    if __name__=="__main__":
        mylinear()
    
    

    在这里插入图片描述
    调用模型预测的结果

    from sklearn.datasets import load_boston
    from sklearn.linear_model import LinearRegression,SGDRegressor,Ridge
    from sklearn.model_selection import train_test_split
    from sklearn.preprocessing import StandardScaler
    from sklearn.metrics import mean_squared_error
    import joblib
    
    
    
    def mylinear():
        """
        线性回归直接预测房子价格
        :return: 
        """
        # 获取数据
        lb = load_boston()
    
        # 分割数据到训练集和测试集
        x_train,x_test,y_train,y_test = train_test_split(lb.data,lb.target,test_size=0.25)
        print(y_train,x_test)
        # 进行标准化处理
        # 特征值和目标值都必须进行标准化处理(实例化2个标准化API)
            # 特征值标准化处理
        std_x = StandardScaler()
        x_train = std_x.fit_transform(x_train)
        x_test = std_x.transform(x_test)
            # 目标值标准化处理
        std_y = StandardScaler()
        y_train = std_y.fit_transform(y_train.reshape(-1,1)) # 要求数据必须是二维我们需要使用reshape(-1,1)进行转换
        y_test = std_y.transform(y_test.reshape(-1,1))
        # 调用保存好的模型进行预测
        model = joblib.load("test.pkl")
        y_predict = std_y.inverse_transform(model.predict(x_test))
        print("调用模型预测的结果:",y_predict)
        return None
    
    
    if __name__=="__main__":
        mylinear()
    
    

    在这里插入图片描述

  • 相关阅读:
    Java实现 蓝桥杯 算法训练 画图(暴力)
    Java实现 蓝桥杯 算法训练 画图(暴力)
    Java实现 蓝桥杯 算法训练 相邻数对(暴力)
    Java实现 蓝桥杯 算法训练 相邻数对(暴力)
    Java实现 蓝桥杯 算法训练 相邻数对(暴力)
    Java实现 蓝桥杯 算法训练 Cowboys
    Java实现 蓝桥杯 算法训练 Cowboys
    55. Jump Game
    54. Spiral Matrix
    50. Pow(x, n)
  • 原文地址:https://www.cnblogs.com/gemoumou/p/14186286.html
Copyright © 2011-2022 走看看