比赛页面:https://www.kaggle.com/c/house-prices-advanced-regression-techniques
这个比赛总的情况就是给你79个特征然后根据这些预测房价 (SalePrice),这其中既有离散型也有连续性特征,而且存在大量的缺失值。不过好在比赛方提供了data_description.txt这个文件,里面对各个特征的含义进行了描述,理解了其中内容后对于大部分缺失值就都能顺利插补了。
参加比赛首先要做的事是了解其评价指标,如果一开始就搞错了到最后可能就白费功夫了-。- House Prices的评估指标是均方根误差 (RMSE),这是常见的用于回归问题的指标 :
\[\sqrt{\frac{\sum_{i=1}^{N}(y_i-\hat{y_i})^2}{N}}\]
我目前的得分是0.11421
对我的分数提升最大的主要有两块:
特征工程 : 主要为离散型变量的排序赋值,特征组合和PCA
模型融合 : 主要为加权平均和Stacking
将在下文中一一说明。
探索性可视化(Exploratory Visualization)
数据清洗(Data Cleaning)
特征工程(Feature Engineering)
基本建模&评估(Basic Modeling & Evaluation)
参数调整(Hyperparameters Tuning)
集成方法(Ensemble Methods)
由于原始特征较多,这里只选择建造年份 (YearBuilt) 来进行可视化:
plt.figure(figsize=(15,8)) sns.boxplot(train.YearBuilt, train.SalePrice)