python数据分析与机器学习-用户流失预警

    本文针对某网站游戏用户数据,运用python、pandas、matplotlib及sklearn,对初始数据进行数据清理,并结合机器学习的一些算法,建立关于用户流失预警的简单模型,重点是模型评估指标,可作为入门机器学习的小案例。

1.加载数据,查看数据特征,分析特征。

python数据分析与机器学习-用户流失预警_第1张图片

python数据分析与机器学习-用户流失预警_第2张图片

2.删除无用特征,处理字符型特征及样本标签(可参考贷款申请利润最大化),将数据标准化,消除量纲对机器学习建模的影响,这里使用sklearn自带的数据标准化函数。

python数据分析与机器学习-用户流失预警_第3张图片

3.由于本案例样本数目有限,建模时采用交叉验证的方式,首先建立模型训练函数,便于后期更换机器学习算法时直接调用。

python数据分析与机器学习-用户流失预警_第4张图片

4.接下来考虑模型效果评估指标,一般情况下采取precision进行模型效果评估,但考虑本案例是用户流失预警,其需求为:对于流失用户,我们预测的准确率应该更高才更合适,即考虑召回率recall,故引用混淆矩阵。

python数据分析与机器学习-用户流失预警_第5张图片

5.下面是运用SVM,RF,KNN算法训练出的模型的精度,召回率以及相应的混淆矩阵。

python数据分析与机器学习-用户流失预警_第6张图片

python数据分析与机器学习-用户流失预警_第7张图片

python数据分析与机器学习-用户流失预警_第8张图片

python数据分析与机器学习-用户流失预警_第9张图片

总结:以上结果显示,Random forest算法训练的模型精度以及召回率都相对较好,可在此算法的基础上对模型进行调优改进。调优方式可参考上篇贷款申请利润最大化,如通过上采样均衡样本数量,增加新的特征等。

你可能感兴趣的:(机器学习)