【玩转数据系列八】机器学习算法的离线调度实现-广告CTR预测

本文涉及的产品
交互式建模 PAI-DSW,5000CU*H 3个月
简介: 整套实验使用了阿里云机器学习进行数据挖掘工作,通过大数据开发套件进行调度和推送。具体的业务场景是:通过历史数据在阿里云机器学习平台上面训练模型,通过大数据开发进行调度,每天凌晨对于每天的广告投放CTR预测,甄选出符合标准的广告推送出去。

机器学习实验部署和调度

产品地址:https://data.aliyun.com/product/learn?spm=a21gt.99266.416540.102.OwEfx2

(因为模板功能限制,本实验需要用户自行上传分区表数据。)

(本文数据为虚构,仅供实验。本实验拟在介绍阿里云机器学习与大数据开发调度的配合。)

一、背景

本文实现的场景是广告的CTR预测。广告CTR预测是广告行业的典型应用,通过历史数据训练预测模型,对于每天的增量数据进行预测,找出广告的CTR符合标准的样本进行投放。
整套实验使用了阿里云机器学习进行数据挖掘工作,通过大数据开发套件进行调度和推送。具体的业务场景是:通过历史数据在阿里云机器学习平台上面训练模型,通过大数据开发进行调度,每天凌晨对于每天的广告投放CTR预测,甄选出符合标准的广告推送出去。

二、数据集介绍

具体字段如下:

字段名 含义 类型 描述
id ID string 广告的唯一标识
age 年龄 double 广告投放人群的年龄
sex 性别 double 广告投放人群的性别,1是男,0是女
duration 时长 double 广告在界面的停留时长,以秒为单位
place 位置 double 广告投放位置,0~4,按照投放位置从上到下的顺序排列
ctr 广告CTR double 广告点击量除以展现量,这里面大于0.03是1,其它是0
dt partition string 年月日格式yyyyMMdd

数据截图:

数据是通过random算法随机生成,所以本次实验不针对结果进行评估,主要介绍实验搭建以及和大数据开发套件的调度使用。数据包含20160919、20160920的历史数据,需要针对20160921的数据预测。使用的是MaxCompute的分区表。

三、机器学习平台

实验可以通过实验模板处创建。找到带有【机器学习离线调度实现】字样的实验,从模板创建。

首先,实验流程图:

实验可以大致分为四个模块,数据源导入(ad),数据预处理(归一化),模型训练(逻辑回归二分类),预测(预测)。

数据源导入

中间过程

中间过程包括数据的归一化、模型预测两个步骤。模型训练是通过历史数据训练生成的预测模型。(详细原理可以参考心脏病预测案例)

预测

最终预测生成的结果表为ad_result-1,数据如下:

  • prediction_result包含每个广告id是否被点击,被点击是1,不被点击为0。
  • prediction_score表示对应被点击概率

四、调度模块

进入数加的数据开发应用:

(1)新建工作流任务

  • 在画布中可以拖动机器学习组件和ODPS_SQL组件进行工作流的搭建。
  • 双击"广告预测"组件进入对应的机器学习模块,选择需要调度的机器学习实验:
  • 返回,双击"每日预测值"组件,配置每日需要推送的信息,这里只需要推送预测结果是"被点击的广告",
  • 选择需要调度的时间,这里我选择每日的凌晨0点进行训练和推送信息。
  • 点击“提交”按钮,即可在运维中心查看实验的运行状态。调度从第二天才正式开始,进入运维中心。可以查看实验的日志。

五、其它

作者微信公众号(与作者讨论):

参与讨论:云栖社区公众号

免费体验:阿里云数加机器学习平台

联系我们: aohai.lb@alibaba-inc.com

往期文章:

【玩转数据系列一】人口普查统计案例

【玩转数据系列二】机器学习应用没那么难,这次教你玩心脏病预测

【玩转数据系列三】利用图算法实现金融行业风控

【玩转数据系列四】听说啤酒和尿布很配?本期教你用协同过滤做推荐

【玩转数据系列五】农业贷款发放预测

【玩转数据系列六】文本分析算法实现新闻自动分类

【玩转数据系列七】有娃的注意了,机器学习教您如何提高孩子学习成绩

相关实践学习
使用PAI-EAS一键部署ChatGLM及LangChain应用
本场景中主要介绍如何使用模型在线服务(PAI-EAS)部署ChatGLM的AI-Web应用以及启动WebUI进行模型推理,并通过LangChain集成自己的业务数据。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
目录
相关文章
|
17小时前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】聚类算法中,如何判断数据是否被“充分”地聚类,以便算法产生有意义的结果?
【5月更文挑战第14天】【机器学习】聚类算法中,如何判断数据是否被“充分”地聚类,以便算法产生有意义的结果?
|
18小时前
|
存储 移动开发 算法
磁盘调度算法
磁盘调度算法
10 2
|
18小时前
|
算法 调度 UED
作业调度算法(含详细计算过程)和进程调度算法浅析
作业调度算法(含详细计算过程)和进程调度算法浅析
20 1
作业调度算法(含详细计算过程)和进程调度算法浅析
|
1天前
|
机器学习/深度学习 分布式计算 并行计算
【机器学习】怎样在非常大的数据集上执行K-means算法?
【5月更文挑战第13天】【机器学习】怎样在非常大的数据集上执行K-means算法?
|
1天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】列举几种情况,在这些情况下K-means算法难以取得较好效果
【5月更文挑战第13天】【机器学习】列举几种情况,在这些情况下K-means算法难以取得较好效果
|
1天前
|
机器学习/深度学习 传感器 算法
【机器学习】在聚类算法中,使用曼哈顿距离和使用欧式距离有什么区别?
【5月更文挑战第12天】【机器学习】在聚类算法中,使用曼哈顿距离和使用欧式距离有什么区别?
|
1天前
|
数据采集 机器学习/深度学习 人工智能
【机器学习】在使用K-means算法之前,如何预处理数据?
【5月更文挑战第12天】【机器学习】在使用K-means算法之前,如何预处理数据?
|
1天前
|
机器学习/深度学习 算法 数据可视化
【机器学习】比较分层聚类(Hierarchical Clustering)和K-means聚类算法
【5月更文挑战第12天】【机器学习】比较分层聚类(Hierarchical Clustering)和K-means聚类算法
|
1天前
|
机器学习/深度学习 数据采集 算法
深入理解并应用机器学习算法:支持向量机(SVM)
【5月更文挑战第13天】支持向量机(SVM)是监督学习中的强分类算法,用于文本分类、图像识别等领域。它寻找超平面最大化间隔,支持向量是离超平面最近的样本点。SVM通过核函数处理非线性数据,软间隔和正则化避免过拟合。应用步骤包括数据预处理、选择核函数、训练模型、评估性能及应用预测。优点是高效、鲁棒和泛化能力强,但对参数敏感、不适合大规模数据集且对缺失数据敏感。理解SVM原理有助于优化实际问题的解决方案。
|
1天前
|
机器学习/深度学习 算法
理解并应用机器学习算法:决策树
【5月更文挑战第12天】决策树是直观的分类与回归机器学习算法,通过树状结构模拟决策过程。每个内部节点代表特征属性,分支代表属性取值,叶子节点代表类别。构建过程包括特征选择(如信息增益、基尼指数等)、决策树生成和剪枝(预剪枝和后剪枝)以防止过拟合。广泛应用在信贷风险评估、医疗诊断等领域。理解并掌握决策树有助于解决实际问题。

热门文章

最新文章

http://www.vxiaotou.com