营销场景的自动化建模思考

一、需求分析

在营销场景实际业务中,例如节日大促,新品发售等场景确定模型相对于专家规则有效果后,后续是两个方向

1、要么单个场景做单点突破,例如已经准确率已经达到90%了,想要进一步提升,例如从梯度提升决策树到深度学习,甚至到强化学习。这种场景适合单一入口的产品,例如百度搜索、抖音视频推荐,围绕这第一生产力做优化,因为每个1%甚至0.1%的优化,在几亿用户体量下都会带来很大的收益,则考虑纵向发展。

2、要么根据模型有效,快速复制到多个场景,每个场景提升20%-30%,带来整体的效果提升。例如五一大促有效,马上复用于后续的各个大促节点。这种适合单一场景是一次性的,但是每年场景是非常多的,则考虑进行横向扩展。

在营销场景中,以业务销售公司做横向多场景扩展为例子,讲下如何做横向扩展。

在机器学习建模流程中分六个步骤:需求沟通、目标确定、特征和数据挖掘、模型训练、模型评估、模型上线。其中越往下游,则越容易复用,可以考虑抽象出模版来解决代码重复开发问题。

二、详细分析

例如模型上线,可以使用在线的统一服务接口或者是离线统一数据表来提供实时数据和T+1的离线数据。例如Python的Flask服务,或者直接用Seldon,kserve等模型发布服务。或者是hive计算离线数据。基本可以实现一套代码通用全部场景。

参考对应的kserver代码kserve/python/xgbserver/xgbserver/model.py at master · kserve/kserve · GitHub

复制代码
import pickle
class Model:
    def __init__(self):
        self._model = pickle.loads( open("model.pickle", "rb") )

    def predict(self, X):
        output = self._model(X)
        return output

模型训练阶段 ,则可以提供可修改模型的优化配置参数文件,以及对应的训练数据和预测数据的地址,就可以复用多个场景,一套代码通用全部场景。

复制代码
(
 learning_rate =0.1,
 n_estimators=1000,
 max_depth=5,
 min_child_weight=1,
 gamma=0,
 subsample=0.8,
 colsample_bytree=0.8,
 objective= 'binary:logistic',
 nthread=4,
 scale_pos_weight=1,
 seed=27
)

特征和数据挖掘阶段 ,则考虑多个场景中的相同性,对共性的做代码提取,对非共性的提供可配置的文件,并且是多场景,很多特征其实是可以复用,并且不会大规模更新特征,则可以复用特征获取脚本。这个场景是可能是一个场景或者一个品牌一套特征和数据挖掘的流程,N个品牌的代码。

目标确定阶段 ,同样根据多个场景的相同性,开发标签模模版,例如大促是固定的 开始时间到结束时间,订单范围是限定某些特定渠道,用户范围是限定某些用户,这个就需要有很强的灵活性,例如大促一套,商品一套,门店一套,甚至不同品牌还需要各自一套逻辑,N个品牌*M个商品的代码。

参考文献

  1. ​​​​​​GitHub - kserve/kserve: Standardized Serverless ML Inference Platform on Kuberneteshttps://github.com/SeldonIO/seldon-core

  2. ​​​​​​GitHub - kserve/kserve: Standardized Serverless ML Inference Platform on Kubernetes

相关推荐
忆挽篱笙歌11 分钟前
环境变量,本地变量
linux·运维·服务器
虎鲸不是鱼19 分钟前
【虎鲸进化论 30】安全护栏:人类闸门、审计与爆炸半径
人工智能·自动化·大模型·llm·自进化agent
码间留白1 小时前
手把手把 GitHub 推上阿里云 ECS:Actions CI/CD 全链路避坑实录(折腾好几天,到 2 分钟见绿)
运维·阿里云·ci/cd·docker·devops·github actions
吹什么轩2 小时前
linux系统复习:僵尸进程与孤儿进程
linux·运维·php
大文说跨境3 小时前
亚马逊多账号管理浏览器怎么选?云登/紫鸟/AdsPower 对比
java·前端·自动化
老李IT笔记3 小时前
连不上不一定是网不好:新系统不认的服务端配置卡在哪一档
运维·服务器·网络
小此方3 小时前
Linux网络(二十八):从NAT转换到正反向代理:图解内网通信、NAPT端口映射
linux·运维·网络
刚入门的大一新生4 小时前
Linux-进程池
linux·运维·服务器
数据库小学妹4 小时前
数据库运维五级成熟度:监控、备份、高可用怎么串起来
运维·数据库·监控
AliCloudROS4 小时前
从 1 万到 20 万:OOS Loop 任务规模提升 20 倍的攻坚记录
运维·性能优化