APP下载

基于scikit-learn的房价回归分析

2019-07-13秦培煜胡艳芬

消费导刊 2019年51期
关键词:均方房价标准化

秦培煜 胡艳芬

1.武汉软件工程职业学院; 2.中国地质大学(武汉)

随着大数据和人工智能时代的到来,机器学习应用的场景越来越多。机器学习分为监督学习和无监督学习,回归属于监督学习范畴[1]。本文对scikit-learn自带的房价数据进行了回归分析。

一、回归分析过程

(一)房价数据加载

数据使用scikit-learn自带的boston房价数据,使用load_boston函数加载。

import numpy as np

from sklearn.datasets import load_boston

house = load_boston()

首先导入numpy和sklearn.datasets中load_boston函数,使用 load_boston加载boston房价数据,其中house.data是特征数据,house.target是标签数据。

(二)数据标准化

from sklearn.preprocessing import StandardScaler

stdHouse = StandardScaler().fit_transform(house.data)

特征数据中有些特征量纲比较大,有些特征量纲比较小,如果放在一起使用,会对最终分析结果产生不好影响。这里使用sklearn.preprocessing里的StandardScaler对房价数据进行标准化。house是标准化前的数据,stdHouse是标准化后的数据。

(三)数据划分

from sklearn.model_selection import train_test_split

data_train,data_test,target_train,target_test = train_test_split(stdHouse,house.target,random_state=100)

这里使用sklearn.model_selection里train_test_split对数据进行划分。默认数据的75%划分为训练集,25%划分为测试集。

(四)回归模型选用

from sklearn.linear_model import LinearRegression

linReg = LinearRegression().fit(data_train,target_train)

pred = linReg.predict(data_test)

使用sklearn.linear_model里的LinearRegression模型对数据进行训练和预测。得到的pred是预测数据。

(五)均方误差评价指标

from sklearn.metrics import mean_squared_error

mean_squared_error(target_test,pred)

mean_squared_error是均方误差指标,最后得到真实值target_test和预测值之间的均方误差为27.18。

二、结论

本文用scikit-learn,对boston房价数据进行了回归分析。首先加载房价数据;其次对数据进行标准化;然后将数据划分成训练集和测试集,并用线性回归模型对训练集进行训练,对测试集进行预测;最后用均方误差指标对真实值和预测值进行评价。整个过程对于回归分析有着重要的指导作用。

猜你喜欢

均方房价标准化
一类随机积分微分方程的均方渐近概周期解
标准化简述
两大手段!深圳土地“扩权”定了,房价还会再涨?
Beidou, le système de navigation par satellite compatible et interopérable
防范未然 “稳房价”更要“稳房租”
标准化是综合交通运输的保障——解读《交通运输标准化体系》
去库存的根本途径还在于降房价
2016房价“涨”声响起
基于抗差最小均方估计的输电线路参数辨识
论汽车维修诊断标准化(上)