公司网站建设费如何入账,建站网址打不开,自己做网站的二维码,收录排名好的发帖网站2019年5月6日#xff0c;美团点评正式推出新品牌“美团配送”#xff0c;发布了美团配送新愿景#xff1a;“每天完成一亿次值得信赖的配送服务#xff0c;成为不可或缺的生活基础设施。”现在#xff0c;美团配送已经服务于全国400多万商家和4亿多用户#xff0c;覆盖28… 2019年5月6日美团点评正式推出新品牌“美团配送”发布了美团配送新愿景“每天完成一亿次值得信赖的配送服务成为不可或缺的生活基础设施。”现在美团配送已经服务于全国400多万商家和4亿多用户覆盖2800余座市县日活跃骑手超过70万人成为全球领先的分钟级配送网络。 即时配送的三要素是“效率”、“成本”、“体验”通过精细化的策略迭代来提升效率降低成本提高体验不断地扩大规模优势从而实现正向循环。但是策略的改变不是由我们随便“拍脑袋”得出而是一种建立在数据基础上的思维方式数据反馈会告诉我们做的好不好哪里有问题以及衡量可以带来多少确定性的增长。而A/B-test就是我们精细化迭代的一个“利器”通过为同一个迭代目标制定两个或多个版本的方案在同一时间维度让组成成分相同或相似的A/B群组分别采用这些版本然后收集各群组的体验数据和业务数据最后分析、评估出最好的版本帮助我们作出正确的决策使迭代朝着更好的方向去演进。基于此构建一个适用于配送业务的A/B平台就应运而生了。 1. A/B平台简介 如上图所示A/B实验可以看作一个“无尽”的学习环我们通过提出假设、定义成功指标、检验假设A/B实验、分析学习、发布、建立另一个假设这就形成一个完整的闭环通过多轮实验迭代使策略趋于更优。基于上述对A/B实验划分的5个步骤我们将A/B实验的完整生命周期分为三个阶段 实验前提出该实验假设定义实验成功的指标确定分流策略实验中即验证假设的阶段根据配置阶段的分流策略进行分流和埋点上报实验后进行实验分析与学习并基于实验报告决定是否发布。 按照功能划分我们将A/B平台分为三个模块实验配置管理模块、分流以及埋点上报模块和在线分析模块分别对应于A/B实验生命周期的实验前、实验中和实验后三个阶段。在实验配置模块用户可以基于实验前提出的假设、定义的成功指标快速创建实验并基于特定的分流策略完成分流配置分流以及埋点上报模块提供JAR包接入的形式异步获取实验配置进行本地分流计算和埋点上报在线分析模块依据用户在实验配置管理模块选取的用于说明实验效果的指标、分流埋点上报模块记录的日志自动地产生各实验的实验报告供实验观察者使用然后根据实验效果帮助他们作出正确的决策。具体流程如下图所示 2.为什么要强调评估体系建设 2.1 分流业务场景需要 业界的A/B平台建设基本以《Overlapping Experiment Infrastructure: More, Better, Faster Experimentation》这篇论文为蓝本进行展开 引入分层模型以及在分流算法中加入层编号因子来解决“流量饥饿”和“正交”问题并且通过引入域的概念支持域和层之间的相互嵌套使分层实验模型更加灵活进而满足多种场景下的A/B诉求。如下图所示将流量通过Hash取模的方式即可实现流量的均匀划分。 这种是面向C端用户进行流量选择的传统A/B实验采用上述的分流方式基于这样的假设参与实验的流量因子是相互独立的、随机的服从独立同分布。但是配送业务场景下的A/B实验涉及到用户、骑手、商家三端请求不独立策略之间相互影响并且受线下因素影响较大。传统A/B实验的分流方式无法保证分出的两个群组实验组和对照组的流量都是无差别的无法避免因流量分配不平衡而导致的A/B群组差异过大问题很容易造成对实验结果的误判。为满足不同业务场景的诉求我们的A/B平台建设采取了多种分流策略如下图所示 针对策略之间的相互影响、请求不独立场景下的A/B实验我们采取限流准入的分流方式针对不同的实验选取不同的分流因子。在实验前我们通过AA分组找出无差别的实验组和对照组作为我们实验分流配置的依据这种分流方式要求我们要有一套完整刻画流量因子的指标体系只要刻画流量因子的指标间无统计显著性我们就认为分出的实验组和对照组无差别。 2.2 业务决策的重要依据 在实验后的效果评估环节通常允许实验者用自定义的指标来衡量不同策略带来的影响。但这样做会带来如下两个问题 首先由实验者来负责实验效果的评估很难做到客观。同时也无法避免实验者仅仅选择支持自己假设的指标来证明自己的实验结论其次所有的策略迭代都是为业务服务如果实验者用自定义的、与业务认知不一致的指标来说明实验效果、推动业务灰度这种方式往往难以被采纳。因此权威的评估体系对于对齐大家认知并帮助我们在策略迭代方面作出正确的决策尤为重要。 3.A/B评估体系构建 A/B评估体系的构建要解决A/B平台两个核心问题 第一要有一套用于刻画流量因子区域、骑手、商家的权威的、完备的指标体系帮助实验者完成实验前的AA分组和实验后的效果评估第二要建立一套科学的评估方法帮助实验者作出正确的决策。3.1 权威完备的指标体系 指标的权威性体现在刻画分流因子用于实验前AA分组和证明实验假设的指标必须经过治理且业务认知一致这样才能对齐认知使得实验结果更具说服力指标的完备性体现在评估体系中的指标不仅要有经过第三方独立生产治理且各业务方认知一致的治理指标而且还要有实验者为了更全面的分析描述实验过程自定义的探索指标。 3.1.1 整体架构 治理指标强调的是指标的权威性和生产的规范性而探索性指标强调的是指标的多样性和生产的灵活性。在评估体系中要实现这两类指标的统一既要包含用于说明实验效果的治理指标又要包含帮助实验者更好迭代实验所需的探索指标。 为实现上述的统一指标层面要有分级运营的策略治理指标按照业务认知一致性和算法内部认知一致性分别定级为P0、P1这一类指标在生产前必须要有严格的注册、评审生产环节需要交给独立的第三方团队数据团队生产保证指标的权威性产出后打通指标与字段的映射关系对用户屏蔽底层实现逻辑对于探索性指标定级为P2强调的是生产的灵活性和快速实现因此它的生产就不宜带有指标注册和评审等环节。为保证其快速实现希望基于物理表和简单的算子配置就可以实现效果分析时即席查询使用。基于如上的问题拆解我们进行了如下的架构设计 3.1.2 数据集成 为了支持监控和分析在数据集成环节我们集成了实验配置数据、业务数据和染色数据以便实验者在效果评估环节不仅可以查看流量指标PV、UV和转化率也可以深入探索策略变动对业务带来的影响。对于那些在实验配置环节不能确定流量是否真正参加实验的场景例如选择了特定区域进行实验该区域产生的单只有满足特定条件时才能触发实验我们不能直接通过限制确定的区域来查看业务指标。因为此时查看的指标并不是真正参与实验的流量所对应的指标。因此在数据集成环节我们同时将实验前的实验配置数据和实验中的染色数据针对每个参与实验的流量每次操作所产生的数据都会打上实验场景、实验组以及具体的分组标记我们该数据为染色数据同步到数仓。在数据基建环节将业务数据模型和染色数据模型通过流量实体作为关联条件进行关联构建实验粒度模型。 3.1.3 数据基建 在数据基建层我们基于指标分级运营的思路由数据团队和算法团队分别构建实体粒度区域、骑手、GeoHash和实验粒度的实体宽表模型以满足P0/P1指标和P2指标的诉求为实现指标的规范化建设和灵活建设的统一在物理模型和对外提供应用的指标池之间我们提供了元数据管理工具和模型配置工具从而实现离线数据快速接入评估体系的指标池。由数据团队建设的实体宽表模型对应着治理指标P0/P1指标必须在生产后通过元数据管理工具完成指标与物理字段的映射将指标的加工口径封装在数据层对用户屏蔽物理实现确保治理指标的一致性。由算法团队独立建设的实体宽表模型对应着挖掘指标P2指标为确保其接入评估体系指标池的灵活性和方便性我们在数据基建环节通过标签的形式对指标口径做部分封装在模型配置环节完成指标逻辑的最终加工。 3.1.4 元数据管理 元数据管理层是实现指标权威性的关键。治理指标在本层实现注册、评审达到业务认知一致性和算法内部认知一致性的目的。同时本层还完成了治理指标与数据基建层物理模型之间的绑定为后续的模型配置建立基础。 3.1.5 模型配置 模型配置工具是打通物理模型与评估指标池的桥梁它通过输入组件、操作组件和应用组件将离线数据接入到评估体系中满足实验前AA分组和实验后AB评估的需求。首先输入组件可以对应不同的数据源既可以接入治理的离线指标也可以接入特定库下的物理表。其次操作组件提供了分组操作、算子操作、过滤操作和测试操作通过分组操作确定模型包含的维度通过算子操作将算子作用在指标或标签字段上在取数环节实现指标的二次计算通过过滤操作实现数据的过滤通过测试操作保证模型配置质量。最后应用组件可以将配置的模型注册到不同的应用上针对A/B场景主要是AA分组和AB评估。具体接入流程如下图所示 3.2 科学权威的评估方式 评估报告的可靠和权威性主要体现在两个方面一是评估指标的可靠性和权威性二是评估方式的科学性。在上一节中我们重点讨论了如何构建可靠权威的指标体系。在这一节我们重点讨论如何进行科学的评估。 在讨论科学评估之前我们再重温一下A/B实验的定义A/B实验简单来说就是为同一个目标制定两个版本或多个版本的方案在同一时间维度分别让组成成分相同相似的A/B群组分别采用这些版本收集各群组的体验数据和业务数据最后分析、评估出最好版本正式采用。其中A方案为现行的设计称为控制组 B方案是新的设计称为实验组。分析A/B实验的定义要实现科学权威的评估最重要的两点在于 第一确保在实验前分出无差别的实验组和对照组避免因流量分配不平衡导致的AB群组差异过大最终造成对于实验结果的误判第二确保对实验结果作出准确的判断能够准确的判断新策略相对于旧策略的优势是不是由自然波动引起的它的这一优势能否在大规模的推广中反映出来。无论是实验前确保实验组和对照组流量无显著性差异还是实验后新策略较旧策略的指标变动是否具有统计上的显著性无一例外它们都蕴含着统计学的知识。接下来我们重点论述一下A/B实验所依赖的统计学基础以及如何依据统计学理论做出科学评估。 3.2.1 假设检验 3.2.1.1 两个假设 A/B测试是一种对比试验我们圈定一定的流量进行实验实验结束后我们基于实验样本进行数据统计进而验证实验前假设的正确性我们得出这一有效结论的科学依据便是假设检验。假设检验是利用样本统计量估计总体参数的方法在假设检验中先对总体均值提出一个假设然后用样本信息去检验这个假设是否成立。我们把提出的这个假设叫做原假设与原假设对立的结论叫做备择假设如果原假设不成立就要拒绝原假设进而接受备择假设。 3.2.1.2 两类错误 对于原假设提出的命题我们需要作出判断要么原假设成立要么原假设不成立。因为基于样本对总体的推断会面临着犯两种错误的可能第一类错误原假设为真我们却拒绝了第二类错误原假设为伪我们却接受了。显然我们希望犯这两类错误的概率越小越好但对于一定的样本量n不能同时做到犯这两类错误的概率很小。 在假设检验中就有一个对两类错误进行控制的问题。一般来说哪一类错误所带来的后果严重、危害越大在假设检验中就应该把哪一类错误作为首要的控制目标。在假设检验中我们都执行这样一个原则首先控制犯第一类错误的概率。这也是为什么我们在实际应用中会把要推翻的假设作为原假设这样得出的结论更具说服力我们有足够充分的证据证明原来确定的结论是错误的所以通常会看到我们把要证明的结论作为备择假设。 3.2.1.3 T检验 常见的假设检验方法有Z检验、T检验和卡方检验等不同的方法有不同的适用条件和检验目标。Z检验和T检验都是用来推断两个总体均值差异的显著性水平具体选择哪种检验由样本量的大小、总体的方差是否已知决定。在样本量较小且总体的方差未知的情况下这时只能使用样本方差代替总体方差样本统计量服从T分布应该采用T统计量进行检验。T统计量具体构造公式如下图所示其中f是T统计量的自由度S1、S2是样本标准差。 T检验的流程是在给定的弃真错误概率下一般取0.05依据样本统计量T是否落在拒绝域来判断接受还是拒绝原假设。实际上在确定弃真错误概率以后拒绝域的位置也就相应地确定了。使用T统计量进行判断的好处是进行决策的界限清晰但缺陷是决策面临的风险是笼统的。例如T3落入拒绝域我们拒绝原假设犯弃真错误的概率为0.05T2也落入拒绝域我们拒绝原假设犯弃真错误的概率也是0.05。事实上依据不同的统计量进行决策面临的风险也是有差别的。为了精确地反映决策的风险度我们仍然需要P值来帮助业务来做决策。 3.2.1.4 利用P值决策 P值即统计功效函数当原假设为真时所得到的样本观察结果或更极端的结果出现的概率。如果P值很小说明这种情况发生的概率很小但是在这次试验中却出现了根据小概率原理我们有理由拒绝原假设P值越小我们拒绝原假设的理由越充分。P值可以理解为犯弃真错误的概率在确定的显著性水平下一般取0.05P值小于显著性水平则拒绝原假设。 3.2.2 基于假设检验的科学评估 围绕着科学评估要解决的两个问题实验前针对圈定的流量使用假设检验加上动态规划算法确保分出无差别的实验组和对照组实验后基于实验前选定的用于验证假设结论的指标构造T统计量并计算其对应的P值依据P值帮我们做决策。 3.2.2.1 AA分组 首先看如何解决第一个问题避免因流量分配不平衡A/B组本身差异过大造成对实验结果的误判。为解决该问题我们引入了AA分组基于实验者圈定的流量通过AA分组将该流量分为无显著性差异的实验组和对照组。我们这样定义无显著性差异这一约束首先实验者选取的用于刻画实验流量的指标在实验组和对照组之间无统计上的显著性即上节所描述的基于均值的假设检验其次在所分出的实验组和对照组之间这些指标的差值最小即一个寻找最优解的过程。从实验者的实验流程看在实验前圈定进入该实验的流量然后确定用于刻画实验流量的指标最后调用AA分组为其将流量分成合理的实验组和对照组。 3.2.2.2 A/B效果评估 A/B效果评估是实验者在实验后依据评估报告进行决策的重要依据。 因此我们在实验后的效果评估环节效果评估要达成三个目标即权威、灵活性和方便。首先权威性体现在用于作出实验结论所依赖的指标都是经过治理、各方达成一致的指标并且确保数据一致性最终通过假设检验给出科学的实验结论帮助实验者作出正确的判断。其次灵活性主要体现在采用列转行的形式按需自动生成报表告别“烟囱式”的报表开发方式。第三方便主要体现在不仅可以查看用于说明实验效果的指标还可以选择查看接入到评估体系里的任意指标不仅可以查看其实验前后对比以及趋势变化还可以做到从实验粒度到流量实体粒度的下钻。效果如下图所示 3.2.2.3 技术实现 不管是实验前的AA分组还是实验后的效果评估我们要解决的一个核心问题就是如何灵活地“取数”为我们的AA分组和AB效果分析提供一个灵活稳定的取数服务。因此我们整个架构的核心就是构建稳定、灵活的取数服务具体架构如下图所示。离线建模和指标模型管理完成数据和元数据建设建立权威完备的指标体系中间的取数服务作为上层各应用服务和指标体系的“桥梁”为上层各应用服务提供其所依赖的指标。 4. 总结与展望 目前A/B测试已成为许多互联网公司评估其新产品策略和方法的“金标准”在美团配送业务场景下它被广泛应用于调度策略、定价策略、运力优化、ETA时间预估等业务场景为我们的策略迭代制定数据驱动型决策。特别是针对配送场景下这种策略之间相互影响请求不独立场景下的A/B实验结合配送技术团队的具体实践跟大家分享了我们目前的解决思路。 最后再补充一点在A/B测试领域实验的流量规模应该有足够的统计能力才能确保指标的变化有统计意义的为了更好地达到这个目标未来我们将通过辅助工具建设在实验前依据实验者所关注的指标以及敏感度给出流量规模的建议方便实验者在实验前快速地圈定其实验所需的流量。 5.作者简介 王鹏2016年加入美团点评目前在配送事业部数据团队负责众包业务数据建设、数据治理及系统化和A/B评估体系建设相关工作。启政2018年加入美团点评目前在配送事业部数据团队负责众包业务数据建设、A/B评估体系建设相关工作。连恒2016年加入美团点评目前在配送事业部数据团队负责众包业务数据建设、A/B评估体系建设相关工作。