作者:Guojiang Zhao
数据量大,数据要进行清洗以及预处理,同时要多方面可视化,要探索多变量对因变量的影响。
解决方案
用R语言读取数据,对数据进行清洗合并以及预处理,数据可视化,特征工程以及变量选择,建模,交叉验证,模型评价。
任务/目标
对价格进行预测并且比较
特征转换
处理缺失值(对缺失值进行插值以及取均值进行处理,同时去掉一些缺失较少的数据行)
将因子变量变为数值型变量好做best subset selection来进行特征选择等等
可视化
运用nlp以及词云可视化
构造
以上说明了如何抽取相关特征,我们大致有如下训练样本(只列举部分特征)。
划分训练集和测试集
训练集70%和测试集30%
变量选择:best subset selection
选取5个最佳的变量
建模
预测价格
- 多元回归分析
- GAM模型(平滑样条,多项式回归,三次样条)
- 不同变量通过cross-validation来选择哪一种模型是cv.error最小的
如图:
最后得到最终的一个模型
回归决策树
剪枝后
预测
三个模型中分别对price预测
模型比较:
比较预测值和实际值的RMSE,选取最优模型
三个模型price预测值与实际值
比较:
可以看出,GAM模型是三个模型中最适合的,然后可以依据该模型对price进行预测。
关于作者
在此对Guojiang Zhao对本文所作的贡献表示诚挚感谢,他在卡耐基梅隆大学完成了硕士学位,擅长机器学习,数据挖掘,数理统计,数据分析。
标签:nlp,变量,模型,airbnb,GAM,可视化,price,预测 From: https://blog.51cto.com/u_14293657/5827825