ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

数据挖掘驱动广告精准投放:从用户画像到效果评估的实战指南

数据挖掘驱动广告精准投放:从用户画像到效果评估的实战指南 1. 内容整体设计与思路拆解1.1 广告投放为什么会需要数据挖掘先聊一个大家都遇到过的情况。你在某个电商平台搜过一次机械键盘接下来好几天不管刷短视频还是看资讯铺天盖地全是外设广告。这不是玄学也不是平台偷听了你说话而是背后有一套完整的数据挖掘链路在实时运转。广告精准投放这件事本质上就是回答三个问题给谁看、看什么、什么时候看。而数据挖掘解决的就是让这三个问题的答案从凭感觉猜变成拿数据算。传统广告投放的逻辑是买位置——我买一个首页横幅所有访问首页的人都能看到。这种模式的浪费是惊人的一百个人里可能只有十个人对产品感兴趣另外九十个的注意力被白白消耗而广告主还得为这九十个无效曝光买单。数据挖掘介入之后逻辑变成了买人——我先通过数据判断哪些用户最可能购买再把广告只展示给这一小撮高概率人群。同样是十万块预算传统投放可能带来几百次点击精准投放能把这个数字翻几倍转化率的差距更明显。我见过太多刚接触精准投放的人一上来就急着上模型、跑算法结果数据质量一塌糊涂模型输出自然也是垃圾。数据挖掘在广告投放里真正值钱的地方不在于算法本身有多炫而在于能不能把用户行为数据、商品特征数据、投放反馈数据整理成一套可计算、可迭代的体系。没有这个地基再好的模型也跑不起来。1.2 项目目标与解决的核心问题这个项目的目标分三层。第一层是找对人通过分析用户的历史行为、兴趣标签、消费能力等维度把一个模糊的用户群体切分成一个个特征鲜明的细分人群包。第二层是说对话针对不同人群匹配差异化的广告创意比如给价格敏感型用户推折扣信息给追求品质的用户推产品工艺和品牌故事。第三层是算对账每一次投放之后要能准确评估每个渠道、每类人群、每种创意的真实贡献指导下一轮投放预算分配。这三层目标对应着数据挖掘中三种典型任务。找对人靠的是聚类分析和分类模型说对话靠的是关联规则和推荐算法算对账靠的是归因分析和效果预估。我做过的一个真实项目里客户是一家在线教育公司投放渠道有信息流、搜索、社交媒体单个用户的获客成本一度高达三百多元。经过一轮完整的数据挖掘改造把用户按学习意愿、年龄阶段、付费能力聚成七类人群针对每类人单独设计投放策略获客成本降到了一百五以内同时付费转化率提升了将近一倍。这就是数据挖掘在广告投放里最直接的商业价值。2. 核心细节解析与实操要点2.1 数据采集与清洗决定成败的地基工程数据挖掘项目中流传着一句话垃圾进垃圾出。广告投放涉及的数据源通常很杂第一方数据是自有平台上的用户注册信息、浏览日志、订单记录第二方数据来自媒体平台提供的曝光、点击、转化回传第三方数据可能是购买的外部人群包或标签数据。把这些数据整合到一起第一步要解决的就不是怎么建模而是数据能不能被信任。我复盘过不少失败项目发现最常见的问题出在埋点不规范。比如同一个点击事件在Web端通过页面跳转记录在App端通过SDK上报两边统计口径不统一数据对不上号模型训练时就会学出错误的规律。再比如用户标识移动端没有Cookie可用通常用设备ID如OAID、IDFA但如果用户在多个设备间切换没有做ID映射同一个用户就会被当成好几个人导致画像碎片化。数据清洗阶段有几条硬性要求。第一是去重同一个用户在短时间内重复触发同一个事件只保留一次有效记录。第二是异常值处理比如某个用户一天内点击了上万次广告这种大概率是机器刷量要直接剔除不然模型会被带偏。第三是缺失值填充用户年龄、性别这类信息经常缺失可以用模型预测填充也可以单独划分一个未知类别后者在广告投放中反而更稳妥因为瞎猜性别导致广告创意错配的案例太多了。2.2 用户画像构建与人群分层方法用户画像这个词被用滥了但在广告投放的场景里画像不是给用户贴几个标签就完事而是要形成一个能直接驱动投放决策的人群分层体系。一个标准的画像体系包含四个维度基础属性年龄、性别、地域、设备、行为特征浏览偏好、活跃时段、点击习惯、消费能力历史客单价、复购率、消费频次、意图阶段有明确购买意向还是处于种草阶段。人群分层最常用的方法是RFM模型和聚类分析的组合。RFM是三个指标的缩写最近一次消费时间Recency、消费频率Frequency、消费金额Monetary。这三个维度的组合可以将用户清晰划分成重要价值客户、重要发展客户、重要保持客户、一般价值客户等类别。对于广告投放来说RFM的价值在于快速锁定高净值人群但它的局限也很明显——只能基于历史交易数据对没有产生过购买行为的新用户无能为力。这时候就要上聚类算法了。我习惯先用K-Means对全量用户做一次预聚类特征选择大概在二十到三十个维度包括活跃度、品类偏好、内容消费时长、页面停留深度等等。K的选择不是拍脑袋通常跑一遍轮廓系数曲线看看K在哪个区间时类内距离最小、类间距离最大再结合业务人员对各个人群的可解释性判断来定。聚类结果必须要能让投放运营看懂。如果你的聚类结果是第1类人群、第2类人群投放人员不知道该怎么用那就等于白做。正确的做法是给每个人群归纳出清晰的特征描述比如夜间活跃的平价美妆爱好者、对高端母婴产品有高意向的25-35岁女性投放人员看到一句描述立刻就能决定该怎么出价、用什么创意。3. 实操过程与核心环节实现3.1 从数据到模型一个真实投放场景的完整流程拿我曾做过的一个美妆电商项目来说完整的流程能让你看到数据挖掘是怎么一步步落地的。项目背景是一款新上市的精华液目标受众是25到40岁的都市女性预算有限要求在ROI不低于1:1.5的前提下尽量放量。第一步是数据准备。我们把客户近六个月的第一方数据全部拉出来包括用户的浏览记录、搜索词、加购记录、订单数据同时对接广告平台拿到近三个月的广告曝光和点击日志。原始数据量大概有两千多万条经过清洗、去重、拼接之后整理成约一百二十万条用户级别的特征表。特征表里每个用户一行列包含年龄、性别、地域、近30天活跃天数、最近一次访问距今天数、近90天购买品类分布、平均浏览深度、价格敏感度得分、领券频率等等一共四十六个特征。第二步是样本标注。我们把过去30天内购买过该品类产品的用户标记为正样本数量大概是五万多个负样本从没有购买行为的用户里随机抽取控制在五万个做1:1平衡。这里有个细节值得说下正样本的定义不能太宽也不能太窄太宽会把偶然购买的用户也算进来太窄则可能样本量不足导致模型欠拟合。我们最终选择了购买且复购作为强正样本单独建模一版又把加购未支付的用户作为弱正样本一起训练效果差异很明显强正样本模型的精准度更高弱正样本模型的召回率更好最终投放阶段两版模型并行使用。第三步是特征工程。这是整个流程里最花时间的部分也最考验经验。我们做了三类特征。第一类是统计型特征比如用户近7天、14天、30天的浏览次数、加购次数、下单次数这类特征能捕捉用户近期行为的变化趋势。第二类是比值型特征比如加购转化率加购次数除以浏览次数、领券使用率、高价格带商品浏览占比这类特征反映用户的购买意愿和质量。第三类是交叉特征比如地域和品类偏好的交叉、活跃时段和点击时段的交叉这类特征能发现很多单维特征里看不出来的规律。第四步是模型训练。我们对比了XGBoost和LightGBM两套梯度提升树模型。LightGBM在特征维度高、数据量大的情况下训练速度快很多而且它对类别特征的原生支持能省掉不少编码工作。最终线上使用的基础模型是LightGBMAUC在测试集上做到了0.83左右。与此同时我们又训练了一个CTR预估模型和一个CVR预估模型前者预测用户点击广告的概率后者预测用户点击之后下单购买的概率投放时两个模型联合打分取乘积作为最终排序依据。3.2 投放策略的设计与算法选择对比模型只是精准投放的一半另一半是投放策略的制定。这里有一个很容易被忽略的关键点拿同样的用户列表去跑不同广告平台效果千差万别因为每个平台的流量特征、竞价机制、用户意图都不一样。信息流平台的用户处于逛的状态需要靠创意刺激需求搜索引擎的用户处于找的状态需求明确但竞争也更激烈。我们当时的策略是分渠道差异化出价。对搜索渠道锁定品牌词和功效词出价维持市场平均水平的1.2倍目的是截流那些已经有明确购买意向的用户。对信息流渠道则把预算重点放在我们模型评分Top 20%的高意向人群上出价可以适当激进创意突出成分党关注的核心卖点。这里需要说明一下不同广告平台的DMP数据管理平台都会提供人群包上传功能我们通过API把打分后的用户设备ID列表上传到平台平台就能在竞价逻辑里对这部分用户做优先展示。算法选择方面我给一个相对通用的参考方案。用户分层用K-Means或高斯混合模型用户购买意向预测用XGBoost或LightGBM广告点击率预估优先尝试逻辑回归或FM/FFM模型复杂度低、可解释性好如果数据量足够大且特征交互复杂再上DeepFM或MMoE这类深度模型。需要提醒的是很多团队上来就追求深度学习模型实际效果未必比梯度提升树好反而给特征工程和模型调参带来巨大工作量建议不要盲目追新。3.3 数据指标监控与投放效果评估模型上线只是开始后面还有更考验功力的环节——效果评估与持续迭代。我们当时的监控指标体系分三层。第一层是投放侧指标包括曝光量、点击率、千次展示成本、点击成本、转化率、转化成本第二层是用户侧指标包括新客占比、老客回流率、高净值人群触达率第三层是财务侧指标包括ROI、客单价、复购率。三层指标缺一个环节都可能误判投得好不好。比如只看转化成本可能不知不觉把预算全部变成对老客户的优惠收割拉新断了档后面增长会乏力。我在实际监控中发现一个非常典型的现象模型上线后第一周效果通常很好等跑了两周就会衰减。原因是广告系统会不断探索流量把广告展示给越来越多非目标人群导致数据中混入更多噪声。解决方法是固定频率的模型重训练我们当时是每周全量重训一次同时每天增量更新保持模型对最新用户行为的敏感度。另外每两周会做一次特征重要性分析看看哪些特征在快速失效及时用新的特征替换。还有一个容易被忽视的评估盲区增量效果评估。广告投放的ROI有一个天然的bug——就算不做精准投放那部分高意向用户也可能通过自然流量或品牌搜索进来。真正要评估的是精准投放带来的增量转化而不是精准投放渠道内的转化。我的习惯是预留一小部分预算大概总量的百分之十到十五投给随机人群作为对照组定期对比实验组和对照组的转化差异这个差值才是数据挖掘真正创造的价值。如果只看渠道内转化数据你的ROI算出来可能是虚高的。4. 常见问题与排查技巧实录4.1 你能看懂的直击本质的排查思路数据挖掘在广告投放里踩坑的频次可能比我见过的任何技术方向都高。下面把这些坑一个个讲透。第一个大坑正负样本分布不合理。用户点击广告的比例本身就低假设千次曝光只有十次点击直接拿原始数据训练模型会倾向于把所有用户都预测为不点击因为这样准确率最高。业务上这毫无意义。解决思路是做采样平衡同时对样本做加权。但这里面有个度的问题需要把控下采样率太高会损失信息我建议初始正负样本比控制在1:5到1:10之间后续根据模型表现动态调整。第二个大坑特征穿越。我听过一个真实案例某团队在做转化率预估时把用户是否在当天浏览过支付成功页面作为特征放进了模型。线上使用时这个数据只有在转化发生之后才存在预测当下根本拿不到。结果模型离线评估时准确率接近百分之百上线后一塌糊涂。你应该也意识到了这类还没有发生的未来信息混进特征是数据挖掘新手最容易犯的错误。每一次模型上线前一定要逐条检查特征的时间戳来源确保所有特征在预测时刻都是已经存在的。第三个大坑广告媒体平台的回传延迟。广告平台给你回传转化数据常有几小时的延迟这会导致你在短时间内低估转化效果从而错误下调出价。解决方法是建立一套延迟校准机制根据历史延迟分布估算当前时间点真实应计的转化量。第四个大坑只看点击不看到达。广告点击率和落地页到达率是两回事移动端网络环境不稳定不少点击其实没有完成页面加载数据又对不上。严格来说应该把落地页到达而不是广告点击作为第一层转化目标来建模不然模型学了一堆无效点击的特征。我们当时在落地页预埋了单独的到达埋点两套数据对比后发现信息流渠道的点击到达率平均只有七成出头后续建模全部改用到达数据作为基础。4.2 排查实操与效率笔记实际操作中排查问题最快的路径不是看代码而是先看指标。我先看点击率和转化率的走势曲线如果点击率明显高于历史均值而转化率暴跌大概率是流量质量出了问题——或者创意和标题过于夸大了实际产品能力。如果点击率骤降而转化率没变通常是创意出现了疲劳需要替换素材。模型侧的问题排查我的习惯是先跑特征重要性排序逐项检查排在前面的特征是否存在穿越或者数据异常波动。这条能淘汰掉一半的坑。接下来检查特征覆盖率如果某个重要特征在训练集和测试集的覆盖率差别太大模型稳定性一定差建议加一些工程兜底。还有个具体案例值得分享有一次我们发现投放的人群包规模突然缩水排查后定位到是设备ID的过期机制引起的——用户三个月没活跃ID被第三方数据源标记为失效人群包就自动丢弃了这部分用户。解决方案是对高价值人群每个月做一次定向唤醒把超过活跃阈值期限的用户单独拉出来投放召回广告。这个细节看起来小实际影响很大曾经让一个客户的高净值人群覆盖量恢复了三成以上。4.3 常用工具与工作流清单做一个大型数据挖掘投放项目涉及的常用工具大致有这几类数据仓库与调度Hive或Spark做离线数据加工Airflow做任务调度。特征存储与实时计算Flink处理实时特征Redis缓存用户标签供在线调用。建模工具Python生态Pandas做数据探索LightGBM/XGBoost做结构化数据建模TensorFlow/PyTorch做深度模型。实验评估媒体平台自带的实验工具配合内部搭建的A/B Test分流系统。工作流的标准化模板我一般是六个阶段业务调研与目标拆解、数据盘点与埋点规范、特征工程与样本构建、模型训练与离线评估、线上投放与监控告警、复盘迭代与知识沉淀。每个阶段都有对应的交付物。这里也顺便说下团队配比问题。一个健康的广告数据挖掘项目至少需要一个熟悉业务的投放运营、一个负责数据处理的数据工程师、一个专攻模型的算法工程师。如果只丢给一个算法工程师独立完成大概率做出来的模型漂亮但投放场景水土不服。数据分析师在业务侧帮助考虑逻辑而不是让整个链路都堵在一个人身上。5. 效果验证与项目复盘5.1 核心指标对比与分析一个完整的项目落地之后一定要做一个系统性的复盘。我常用的复盘框架是对比四看看基线和投放改造前对比、看分组不同人群包之间对比、看渠道不同平台的效率对比、看时间长周期趋势。只有把这四个角度都对一遍才能确认效果提升究竟来自数据挖掘的精准定向还是恰巧赶上行业流量红利。我当时负责的美妆项目投放改造后完整跑了一个月。和之前的常规投放相比点击率提升了大概2.1倍转化率提升了1.7倍左右平均单次转化成本下降了接近四成。分渠道看搜索渠道的转化成本一直稳定信息流渠道成本波动大但整体规模和毛利率贡献都比之前好。这里有个反直觉的现象信息流渠道的直接ROI不如搜索渠道但加上新客占比和复购价值之后信息流渠道的长期价值反而更优。所以效果评估真不能只看单次ROI尤其是新品类打市场阶段用户从种草到拔草可能需要等两周甚至更久。5.2 过程中踩过的坑与复盘心得复盘的价值一半来自成功指标另一半来自踩过的坑。回头看看这个项目我总结了几个关键教训。第一个教训是特征体系的构建要从业务出发不是堆得越多越好。我们第一版特征做了一百二十多个模型训练的时间翻倍效果却和后面精简到六七十个特征时差不多。后来做特征筛选发现大量弱相关特征只是给模型增加了噪声精简之后AUC反而微涨。现在我给自己定了个规矩凡是业务人员解释不了的特征一开始就不进模型。第二个教训是投放运营和算法团队之间必须建立高效沟通机制。我们前期因为人群包命名不规范运营同事根本不知道人群包A和人群包B分别代表什么策略配置出了好几次错。后来我们定了标准每个人群包必须有清晰的中文描述加关键标签比如美妆-精华-高消费力-25-30岁-晚活跃这种格式运营看到就能直接做投放决策配合效率大幅提升。第三个教训是预算分配是算法和运营共同的决策不能只交给模型。模型能给的是每个用户群的转化概率但不同用户群的商业价值不一样有的用户转化率高但客单价低算下来利润不一定最好。我们在后期做了一个人群价值评分模块把预估转化率、历史客单价、复购率加权成一个综合分用这个分来指导出价和预算分配ROI又上了一个台阶。这一步对于面向不同层次客单价的行业来说借鉴意义非常大。6. 沉淀下来的正确指导思想数据挖掘在广告精准投放中的应用说到底是一场关于用更低的成本找到更合适的人的持续优化。做过一轮完整项目之后我最大的体会是不要迷信某一项技术比如不要以为上个大模型就万事大吉也不要以为买一套DSP就能自动精准。真正的精准投放是一套数据和业务深度耦合的工程化体系。这里面有几个朴素但重要的认知我作为个人经验拿出来分享。第一业务理解比算法能力更重要。如果你不懂广告投放的竞价机制、流量环境和用户决策路径模型调得再好也只是实验室产物一到真实环境就失灵。第二数据质量这件事永远值得投入。宁可花三周把数据清洗和埋点规范做好也不要急着花三天跑出一个不可靠的模型。第三投放优化是一个没有终点的循环。用户行为在变、平台规则在变、市场竞争格局也在变模型、特征、人群包都需要定期更新迭代保持一周一复盘、两周一迭代的节奏是一个比较健康的频率。最后再说一个我最近特别重视的细节算法解释能力。广告投放牵涉真金白银投放团队和客户都有强烈的好奇心——你凭什么判断这个用户会买如果模型是个完全无法解释的黑盒内部信任就很难建立后续迭代阻力也大。在效果接近的情况下我会优先选可解释性更强的模型并且在每个版本里随附一份特征解释报告甚至为投放人员开发一套简单的解释工具。实际跑下来这个细节对项目长期稳定推进的帮助比想象中大得多。
返回列表