基于多种回归方法的Kaggle房价预测
成员
- 韩亚辉_3220190803
- 郝家辉_3220190804
- 许达_3220190905
- 李生椰_3220190827
- 李思远_3220190828
问题描述
1、问题背景及分析
Kaggle房价预测:House Prices: Advanced Regression Techniques
房价与我们的生活息息相关,房价的波动牵动着无数购房者的心。如果能够预测房价的走势,可以有效地帮助购买者做出合理的决策。本项目中,我们选择kaggle竞赛中的爱荷华州艾姆斯住宅数据集,数据集中有 79 个变量几乎描述了爱荷华州艾姆斯 (Ames, Iowa) 住宅的方方面面。我们将对数据集建模分析,并对房价进行预测。
影响房价的因素有很多,我们将进行数据可视化来分析各个因素对房价的影响,使用特征工程选择最相关的因素,利用多个机器学习算法(如决策树回归、xgboost等 )构建房价回归模型,并对比分析预测结果。
2、问题描述
2.1 数据准备
本项目使用kaggle上的Ames Housing dataset(爱荷华州埃姆斯市住宅数据集),该数据集包含以下四个部分:
- train.csv - 训练集
- test.csv - 测试集
- data-description.txt - 对每一列属性的描述文本
- sample-submission.csv - 根据销售年份和月份,地皮尺寸和卧室数量进行线性回归的基准提交
训练集和测试集合中的每条记录包含79项特征,用于描述市区住宅的属性,其部分属性简短描述如下所示:
- SalePrice-该房产的售价。这是我们要预测的目标变量。
- MSSubClass:建筑分类
- MSZoning:常规分区分类
- LotFrontage:街道的线性尺寸
- LotArea:以平方英尺为单位的地块大小
- Street:街道的类型
- Alley:胡同的类型
- LotShape:房产的一般形状
- LandContour:房产的平坦度
- Utilities:可用的公共设施类型
- LotConfig:地块配置
- LandSlope:房产的坡度
- Neighborhood:埃姆斯市区范围内的地理位置
- Condition1:接近主干道或铁路
- Condition2:接近主要道路或铁路(如果有)
- BldgType:住宅类型
- HouseStyle:住宅风格
- OverallQual:总体材料和加工质量
- OverallCond:总体状况的评价
- YearBuilt:原始施工日期
- YearRemodAdd:改型日期
- RoofStyle:屋顶类型
- RoofMatl:屋顶材料
- Exterior1st:房屋外墙
- Exterior2nd:房屋的外墙覆盖物(如果使用一种以上的材料)
- MasVnrType:砖石饰面类型
- MasVnrArea:砌面贴面面积(平方英尺)
- ExterQual:外部材料质量
- ExterCond:外部材料的当前状态
- Foundation:基金会的类型
- BsmtQual:地下室的高度
- BsmtCond:地下室的一般状况
- BsmtExposure:罢工或花园水平的地下室墙壁
- BsmtFinType1:地下室成品区域的质量
- BsmtFinSF1:1型成品的尺寸(平方英尺)
- BsmtFinType2:第二个完成区域的质量(如果存在)
- BsmtFinSF2:2型成品尺寸(平方英尺)
- BsmtUnfSF:未完成的地下室面积(平方英尺 )
- TotalBsmtSF:地下室总平方英尺
- Heating:供热方式
- HeatingQC:供热质量和条件
- CentralAir:中央空调
- Electrical:电气系统
- 1stFlrSF:一楼面积
- 2ndFlrSF:二楼面积
- LowQualFinSF:低质量完成面积(所有楼层)
- GrLivArea:地面(地面)以上居住面积
- BsmtFullBath:地下室全浴室
- BsmtHalfBath:地下室半浴室
- FullBath:地上全浴室
- HalfBath:地上半浴室
- Bedroom:地下室以上的卧室数量
- Kitchen:厨房数量
- KitchenQual:厨房质量
- TotRmsAbvGrd:上等客房总数(不包括浴室)
- Functional:家庭功能等级
- Fireplaces:壁炉数量
- FireplaceQu:壁炉质量
- GarageType:车库位置
- GarageYrBlt:车库建成年份
- GarageFinish:车库的内部装饰
- GarageCars:车库中车库的大小
- GarageArea:车库的大小(平方英尺)
- GarageQual:车库质量
- GarageCond:车库条件
- PavedDrive:铺装的车道
- WoodDeckSF:木制地板面积(平方英尺)
- OpenPorchSF:开放式阳台面积(平方英尺)
- EnclosedPorch:封闭的走廊面积(以平方英尺为单位)
- 3SsnPorch:三季走廊面积(以平方英尺为单位)
- ScreenPorch:纱窗走廊面积(以平方英尺为单位)
- PoolArea:游泳池面积
- PoolQC:泳池质量
- Fence:围栏质量
- MiscFeature:未包括在其他类别中的各方面特点
- MiscVal:各方面特点的价值
- MoSold:已售月份
- YrSold:已售年份
- SaleType:销售类型
- SaleCondition:销售条件
2.2 准备采用的方法或模型
准备使用线性回归,随机森林回归,xgBoost等算法,线性回归算法对线性数据有很好的解释性,随机森林用于回归任务,其非线性特性可以使其比线性算法更具优势,而XGBoost高效地实现了GBDT并进行了改进,速度快,效果好。使用这些算法构建房价回归模型,并进行对比和模型优化。
2.3 预期的挖掘结果
建立起房价预测模型,实现对房价的预测,对于测试集的每一个ID,都能大致预测出它的销售价格。
项目评估
评价标准使用MAE(Mean Absolute Error)。若真实值为,模型预测值为,那么该模型的MAE计算公式为
MAE越小代表模型预测越准确。
项目分工
- 郝家辉、韩亚辉:数据分析和可视化、数据预处理、特征工程、文档编写
- 许达、李生椰、李思远:频繁模式挖掘、模型构建和优化、文档编写