乐趣区

关于数据挖掘:Python爱彼迎Airbnb新用户体验数据XGBoost随机森林预测

全文链接:http://tecdat.cn/?p=32380

原文出处:拓端数据部落公众号

分析师:Zhuhua Huang

在多项用户数据中寻找与预测值相干的属性。查看各个特色的散布与特色之间的关联。剖析用户数据,查看特定人群的应用习惯进行产品优化。最初抉择适合的模型与参数来进行预测。

解决方案

工作 / 指标

依据爱彼迎的 2009-2014 年的用户数据,预测用户第一次预约的目的地城市。同时剖析用户的行为习惯。

 

数据源筹备

数据源蕴含训练集用户数据与测试集用户数据,用户数据蕴含 id, 性别,年龄,创立账户工夫,第一次预约工夫,目的地城市(需预测值)等。

首先将训练集数据与测试集数据整合在一起。查看数据并荡涤数据,解决脏值 将年龄中的离群值(<18 或 >100)删除。

特色转换

通过画图(柱状图,箱形图)直观展现每个特色的散布状况和该特色对于预测值的影响。

图表 1 性别散布

图表 2 性别与预测值的关系

图表 3 App 应用品种与指标城市的散布

 

通过剖析,将无意义的特征值删除,如用户 id,第一次激活工夫等。

将分类数据(性别,语言,应用的设施类型)进行独热编码。

并将工夫类型数据转化成年,月,日变量。寻找不同月份与账号创立的关联。

图表 4 2013 年每月账号创立统计

图表 5 2013 年每月目的地城市剖析


结构

以上阐明了如何抽取相干特色,咱们大抵有如下训练样本(只列举局部特色)。

划分训练集和测试集

为了证实模型的准确性,将训练集中的数据再分为训练集和测试集。当账户发明工夫为 2014 年以前时,数据为训练集,2014 年为测试集。

建模

XGBoost:

高效地实现了 GBDT 算法并进行了算法和工程上的许多改良,其原理是一直地增加树,每次增加一个树会学习一个新函数 f(x),并拟合上次预测的残差。

当咱们训练实现失去 k 棵树,咱们要预测一个样本的分数,其实就是依据这个样本的特色,在每棵树中会落到对应的一个叶子节点,每个叶子节点就对应一个分数

最初只须要将每棵树对应的分数加起来就是该样本的预测值。

最初选取概率最大的预测值作为预测后果。

随机森林:

随机森林是一种集成学习,通过建设几个模型组合的来解决繁多预测问题。它的工作原理是生成多个分类器 / 模型,各自独立地学习和作出预测。这些预测最初联合成单预测,因而优于任何一个单分类的做出预测。它依附于决策树的投票抉择来决定最初的分类后果。

模型优化

1. 特征提取,样本抽样,参数调参。

通过图像能够看出, 局部指标城市在某些月份观光量增多。

年纪较长(40+)的人群更偏向于去 US。

未填写性别信息的人更偏向于不预约。

应用英语为母语的人群相较于其余人群更偏向于去 US。

大多数用户更偏向于应用 web 进行操作,也有一部分应用 ios 零碎操作。

能够向年长人群与母语为英语人群更多的举荐 US 的住宿信息,其余人群则多样化的推广。

优化 ios,安卓等零碎上的产品,以此取得更多用户。

通过应用 XGBoost 来进行预测,最终失去准确率为 0.628

通过应用随机森林来进行预测,最终失去准确率为 0.749

能够得出应用随即森林算法比 XGBoost 准确性更高。

输入 / 预测后果(局部):

对于作者

在此对 Zhuhua Huang 对本文所作的奉献示意诚挚感激,她在西交利物浦大学实现了信息与计算迷信学位。善于数据采集与解决。


最受欢迎的见解

1.PYTHON 用户散失数据挖掘:建设逻辑回归、XGBOOST、随机森林、决策树、反对向量机、奢侈贝叶斯模型和 KMEANS 聚类用户画像

2. R 语言基于树的办法:决策树,随机森林

3.python 中应用 scikit-learn 和 pandas 决策树

4. 机器学习:在 SAS 中运行随机森林数据分析报告

5. R 语言用随机森林和文本开掘进步航空公司客户满意度

6. 机器学习助推快时尚精准销售工夫序列

7. 用机器学习辨认一直变动的股市情况——隐马尔可夫模型的利用

8.python 机器学习:举荐零碎实现(以矩阵合成来协同过滤)

9.python 中用 pytorch 机器学习分类预测银行客户散失

退出移动版