电子商务站点生成大量的Web服务器日志数据,这些数据可以通过分析提供有价值的见解。例如,如果我们知道哪些用户更有可能购买产品,则可以进行有针对性的营销,改善网站上相关产品的位置并提高转化率。但是,原始Web日志通常非常庞大且混乱,因此准备数据以训练预测模型对于数据科学家来说是非常耗时的。
根据 《福布斯》最近的一篇文章,“数据准备工作约占数据科学家工作的80%”,但“ 76%的数据科学家认为数据准备工作是他们工作中最不愉快的部分”。数据科学家知道,如果准备步骤未正确完成,则将浪费其余的精力。
这篇博客文章演示了如何通过将Amazon SageMaker与AuriQ的 Essentia 结合在一起,为大型企业客户简化预测模型的数据准备过程。
Essentia是一种数据处理工具,用于将大量的非结构化数据有效地转换为适合建模的格式。Amazon SageMaker是一个非常适合大型数据集的机器学习平台。无法共享有关客户业务性质的详细信息,但是我们可以共享用于您应用于其他大型数据集的技术和方法。
从Web日志创建数据
首先,我们每天使用的Web服务器日志数据作为具有超过1
该管道极大地缩短了处理客户超过700GB的原始Web日志数据的时间表。Essentia使用100个Amazon EC2 m4.large实例在1小时内处理了客户端的8
在SageMaker上训练模型
准备好数据后,我们可以打开Jupyter Notebook并开始使用Amazon Sagemaker构建模型。我们希望预测每个客户在下个月是否会进行购买,并将其视为分类问题(将每个客户分类为购买还是不购买)。
按照Amazon的入门指南,我们 提供了有关Hyperparameter调优设置的快速示例。 SageMaker支持用于训练梯度提升机的流行XGBoost软件,预测建模竞赛中性能最高的算法之一,以及当今行业中最常用的算法。下面的示例显示了在SageMaker中构建XGBoost模型有多么容易。
查看Amazon SageMaker的文档以获取更多示例:
使用Amazon SageMaker XGBoost定位直接营销
使用Amazon SageMaker XGBoost和超参数T进行直接营销...
特征工程
由于数据高度不平衡(阳性类别占所有类别的1%),因此我们 在精确的召回曲线上将评估指标设置为AUC ,并强调召回的价值,因为我们试图预测购买客户的罕见情况(大约1%),并且在市场营销的误报方面要比在误报中更胜一筹:向一些最终没有购买的客户进行营销并没有像对那些非常接近购买的客户进行有效的营销那样糟糕。为了提高性能,我们继续进行要素工程,通过扩展最初有用的要素来创建新的预测性要素。组合解决方案的快速迭代能力也简化了要素工程流程。
测试数据集上的结果:
※1准确度/召回率/精度是根据阈值计算的,暂时为0.5。
※2随机化时,本数据集的AUC(PR曲线)为0.01。另一方面,针对任何数据集,AUC(ROC曲线)始终为0.5。
部署和持续改进
客户可能希望每天,每周或每月根据其营销策略为所有客户生成更新的预测。使用Essentia和SageMaker,可以很容易地使整个过程自动化,并随时间将模型性能的任何重大变化通知相关团队。总体而言,Essentia和Amazon SageMaker可以轻松地将大型原始数据集转换为经过微调的预测模型。
关注 CDA人工智能学院 ,回复“录播”获取更多人工智能精选直播视频!