客户端 ABTest 怎么玩? 支付宝 App 落地与实践

教你如何对产品做AB测试(abtest) 我们经常会面临多个设计方案的选择,比如app或pc端某个界面的某个按钮是用红色还是用蓝色,是放左边还是放右边。传统的解决方法通常是集体讨论表决,或者由某位专 家或领导或文青来拍板,实在决定不了时也有随机选一个上线的。虽然传统解决办法多数情况下也是有效的,但A/B 测试(A/B Testing)可能是解决这类问题的一个更好的方法。 所谓 A/B 测试,简单来说,就是为同一个目标制定两个方案(比如 阅读详情

点击“开发者技术前线”,选择“星标?”

13:21 在看|星标|留言,  真爱

640?wx_fmt=png

来自:mPaas

| 导语
近年来,随着互联网的快速发展,Growth-Hacking 已经是一个很普遍的概念。Growth-Hacking 的目的就是使用更小更灵活的成本通过数据驱动来挖掘产品增长的奥秘。同时在 AARRR 这个模型中,打造成一个不断优良循环的流程,需要从数据分析中发现产品功能、运营策略与转化之间的相关性,思考他们之间因果关系。


One accurate measurement is worth more than a thousand expert opinions – Admiral Grace Hopper


如何衡量思考、创新想法的正确性?数据是最好的衡量标准,这就因此要求我们需要运用一些工具。而 AB 测试就是一个快速试错,用户影响尽可能小,通过数据科学决策的工具,它是 Growth-Hacking 最基础也是最重要的工具之一。自 2000 年谷歌工程师将 ABTest 应用在互联网产品以来,A/B 测试在国内外越来越普及,逐渐成为互联网数据驱动产品的重要体现,通过 A/B 测试来驱动产品设计迭代优化。


| 什么是 ABTest


A/B 测试以数据驱动为导向,可以实现灵活的流量切分,使得同一产品的不同版本能同时在线,通过记录和分析用户对不同版本产生的行为数据,得到效果对比, 最大程度地保证结果的科学性和准确性,从而帮助人们进行科学的产品决策。


1. ABTest 的主要组成部分

下图是一个通用的架构设计:


640?wx_fmt=png


整个架构包含以下部分:


  • AB 测试管理平台:实验操作门户,提供创建、修改、关闭实验等,并且提供报表查看。

  • 配置数据库:实验配置数据,不仅仅局限于普通的关系型数据库,也可能有缓存数据库等。

  • 分流服务:根据实验配置数据,实验具体的分流逻辑,这个一般集成在各个业务平台或者业务服务器。

  • SDK:提供通用的解析分流逻辑,一般集成于客户端,前端。

  • 数据采集:分流结果日志,用户行为日志的实时采集。

  • 数据分析:实时和离线数据分析,通过一定的数据分析算法做出科学决策。


2. ABTest 的统计学原理


从 A/B 测试的试验原理来看,它是统计学上假设检验( 显著性检验)的一种形式: 假设检验中的参数检验是先对总体的参数提出某种假设,然后利用样本数据判断假设是否成立的过程。


逻辑上运用反证法,统计上依据小概率思想:
  • 小概率思想是指小概率事件(显著性水平 p < 0.05)在一次试验中基本上不会发生。

  • 反证法是指先提出假设,再用适当的统计方法确定假设成立的可能性大小;如可能性小,则认为假设不成立。


具体到对比试验,就是假设测试版本的总体参数(优化指标均值)等于对照版本的总体参数,然后利用这两个版本的样本数据来判断这个假设是否成立。

检验假设的基础概念
  • 原假设:又称零假设,H0,通常我们都是假设对比实验中的两组统计量的统计值一样,即实验组的均值等于对照组的均值。

  • 备择假设:也作对立假设,即否定原假设;实验组均值不等于对照组均值。

  • 双侧检验与单侧检验:如果备择假设没有确定的方向即"≠",则为双侧假设。如果有特定的方向,包含“>” 或 “<”的则为单侧检验。

  • 检验统计量:在检验假设时所使用的统计量称为检验统计量,比如样本组的均值。

  • 接受域:使原假设接受的那些样本 (X1,X2,...,Xn) 所在的区域。

  • 否定域:使原假设被否定的样本构成的区域。

  • 简单假设与复杂假设:不论是原假设或者备择假设,只包含一个参数则为简单假设,否则为复杂假设。

两类型错误
  • 第 I 类错误(弃真错误):原假设为真时拒绝原假设;第 I 类错误的概率记为 α(alpha)。

  • 第 II 类错误(取伪错误):原假设为假时未拒绝原假设。第 II 类错误的概率记为 β(Beta)。


真实情况\实际决策接受 H0拒绝 H0
H0 为真正确判决第一类错误
H1 为真第二类错误正确判决


  • 功效函数:设 R 表示一个检验的拒绝区域,

640?wx_fmt=jpeg


显著性水平和统计功效


  • 显著性水平:显著性水平是指在原假设为真时而被拒绝的概率或者风险,也就是发生类型一错误的概率 α。通常在 AB 测试中,我们设置显著性水平为 0.05,当求得的 p-value 即 p<=0.05,那么拒绝原假设;p>0.05,那么不能拒绝原假设。

  • 统计功效:统计功效,简单说就是真理能被发现的可能性。就像胰岛素能降低血糖这事是真实存在的,但人类能发现它的概率是多少?如果统计功效是 0.8,就是说人类有 80% 的概率能发现它。它的数学定义可用一个公式来概括,统计功效=1-β。


p-value 计算


AB 测试中 p-value 的计算和区间估计的计算是相对应的,这个里面我们就利用双样本 Z 检验,简单说明一下 p-value 的计算公式:
  • 均值类指标:

640?wx_fmt=jpeg
  • UV 点击率/转化率等比率类指标:

640?wx_fmt=jpeg 根据 Z 值求 P 值,其实就是求标准正态分布的积分,求 (z,∞) 的 N(0,1) 的积分*2


| mPaaS ABTest

蚂蚁金服内部也有浓厚的实验文化,ABTest 实验平台已累计运行上万个实验:从支付宝客户端样式实验、交互实验到后端算法、策略实验都有着丰富的案例积累,在此过程中 ABTest 平台也得到了深度锤炼和能力积累,越来越简单易用 、成熟稳定、权威可信。 目前,ABTest 平台已完成产品化改造,并入驻到 mPaaS 产品体系中,为 mPaaS 的智能化能力构建提供了有力的支撑。


1. 实验模型

在进一步介绍 ABTest 架构之前有必要讨论一下 ABTest 的实验模型:


流量的隔离和复用

同一批用户如果同时参与多个实验,实验场景之间如果是相关的,两个实验之间的结果就可能相互影响,导致实验结论不正确。因此我们需要让同一个用户在同一段时间只能参与一个实验,从而避免多个实验导致的影响,称之为 流量的隔离。随着线上实验的增多,流量隔离 避免不了 流量不足 以及 流量饥饿 的问题,这就对 流量的复用 提出了要求。


Google 层域架构

在 Google 2010 年发布的《Overlapping Experiment Infrastructure: More, Better, Faster Experimentation》 这篇文章中,主要介绍了 Google 的交叠实验架构,目的是能够提供一个 Better & More Faster 的实验平台。关于 Google 提出的交叠实验架构,其核心是层域模型:


640?wx_fmt=png 通过上图我们可以了解层域模型的基础结构了,这类结构不仅能够兼容单层实验和多变量实验,同时更具灵活性,可以对系统参数进行多种组合划分。
因为层域之间的复杂关系,这样设计虽然增加了灵活性但是同时使得业务方使用成本也大大增高,实际业务中主要还是基于单层实验,当整个链路中,每个分支都是相互独立,而每个分支的子集划分也比较清晰,所以对域的需求并不是很强。


ABTest 的领域模型

mPaaS ABTest 的领域模型: 640?wx_fmt=png mPaaS 上的 ABTest 通过“实验室”实现了一个分层,即每个“实验室”都拥有独立的 100% 流量。由于实际业务的一个链路并没有很多的参数并且参数间是否独立也是比较明确的,所以 ABTest 弱化了 域 这个概念。


  • 实验室

100% 的流量入口。支持设置参数的默认值兜底。业务上相互独立的每个业务应该拥有一个独立的实验室。


  • 实验

每个实验室下可以创建多个实验,实验间的流量是互斥的,达到流量隔离的目的。同时实验级别支持圈人定向条件,支持定向实验。


  • 实验版本

一个试验下可以创建多个实验版本,实验版本上绑定实验参数的实验值。每个版本的的流量分配通过和 10000 个 bucket 间的映射关系来分配。


2. ABTest 架构

从架构上来讲  ABTest 分为接入层、核心能力层和底层依赖层,下面重点介绍下接入层和核心能力层。


640?wx_fmt=png

接入层

接入层解决业务系统如何接入 ABTest 组件的问题,互联网业务的 ABTest 通常分为两类: 客户端实验和 服务端实验,接入层对这两类型实验都提供了支持。
  • 客户端实验
客户端实验通常是针对客户端的样式、交互流程进行实验,从而帮助产品和研发团队进行更好的迭代和优化。实验配置通过客户端动态配置服务( Remote Config)触达到客户端,客户端业务通过从本地 local cache 中取变量的方式,拿到分流结果对应的实验变量及值,做对应的差异化渲染,达到对不同的用户提供不同服务、体验的目地,同时动态配置( Remote Config)服务会记录分流日志,回传服务端。 H5 容器、小程序框架集成 Remote Config,通过 Hybrid API 暴露服务给 H5、小程序,这样客户端 Native、H5、小程序大开发框架都具备了 ABTest 的能力。
  • 服务端实验
服务端实验通常是对服务端策略、算法做实验,是 AI 能力迭代的基础。 性能、接入难度是服务端业务系统接入 ABTest 比较关心的问题。ABTest 将分流服务抽离出独立 SDK,将实验配置信息保存在内存中,集成进宿主系统后可以提供本地的分流服务,避免了网络开销;同时 SDK 提供了简单易用的接口,降低了使用的难度。


下图是分流 SDK 和 ABTest Console、宿主系统之间的关系:


640?wx_fmt=png
集成分流 SDK 有一定的开发成本,需要业务方系统接入。 在 mPaaS 平台各个流量入口组件中集成分流 SDK 提供分流服务,简化了 ABTest 的工作:
  • 网关服务 MGS 将分流参数在请求上下文中透传到业务系统中,业务系统可以直接使用 ;

  • 发布服务 MDS 的 H5 离线包管理平台可以直接对一个 H5 应用的不同版本做 ABTest;

  • 智能投放 MCDP 可以支持对不同广告投放效果做 ABTest。


核心能力

关于 mPaaS ABTest 的核心能力,它已经达到了一个通用 ABTest 系统所应有的标准,主要分为两部分:


  • 实验能力
实验能力主要包括实验管理、指标定义、圈人定向、分流服务、灰度推全。 我们围绕“实验生命周期 & 科学流量分隔”着重展开:
    • 一次实验的生命周期包含“创建实验、功能和链路验证、正式运行、逐步放量、全量推全”五个阶段。而在实验状态转换过程中,流量的分配是否科学非常重要。

    • 在一个实验室下,每个用户通过 Hash 算法被绑定到 0~9999 号桶上,而实验版本保存对桶号的映射

    • ABTest 通过将流量划分为空闲桶、回收桶、使用桶三种状态,在流量分配过程中优先使用空闲桶,其次使用回收桶。在回收桶也分配完之后,整个实验室的流量已经使用完毕,需要同实验室下其他实验推全或者下线后,使用桶被回收后才能新建实验。ABTest系统在实验生命周期流转过程中科学的分配、回收流量(即改变桶的状态)保证了流量分配的科学性,降低了对用户的打扰。


640?wx_fmt=png


  • 分析能力
分析能力包括 实时的分流 PV/UV 统计, T+1 的实验显著性报表以及 多维分析和 对比分析。


640?wx_fmt=png


实验分流数据分为客户端分流埋点和服务端 ABTest SDK 分流日志两种,分别通过日志网关和 flume 收集到 HDFS 中。实验效果统计通过 mPaaS 客户端 SDK 自带的自定义事件埋点通过日志网关和 flume 回流到  HDFS 。
实时计算链路 数据通过 Kafka 导入流计算引擎, 流计算引擎 进行分流日志和业务转化日志的双流 join,和实验 PUV 统计,最终将计算结果转储至 HBase,ABTest console 展现结果。


离线计算链路 数据通过 flume 导入 HDFS,由离线计算平台进行离线指标的计算和 ABTest 元数据和结果的同步,数据回流Hbase,  ABTest console 展现结果。离线链路用于计算利己显著性报表、自定义指标已经留存等计算量较大的场景。


即时分析链路 离线链路还会将预处理的部分数据回流到 LDAP 系统 Explorer,ABTest Console 利用 Explorer 做更为灵活的多维分析和漏斗分析


  • mPaaS 指标计算体系
针对 mPaaS 的客户端用户行为采取自定义事件进行埋点,用户只需要通过关联特定的自定义事件即可自动产生 T+1 的实验统计效果数据。以每个用户为独立的实验个体,这里面我们认为两个用户之间的行为是独立的,而用户在实验期间的每次行为是有相关性的,通过实验期间所有的用户行为进行统计分析。 对于除 sum 和 count 类指标我们都会进行区间估计( 计算指标统计的置信区间,实验方案间对比的绝对差置信区间和相对差置信区间 ),以及基于检验假设计算 p-value 给出显著性统计结论。


全局指标 实验期间进入各个方案的人数( 累计 UV)和次数( 累计 PV)作为基础的实验分流指标;另外一部分全局指标为留存类指标,以用户第一次进入实验开始,在第二天活跃则记为次日留存,依次类推,我们可以计算 2,3,...7 日留存等。


简单型指标 简单型指标由单个自定义事件构成,在用户配置一个自定义事件之后,会自动生成对应的实验指标: 包括 p 总数( 事 件触发次数 ),UV 总数( 事件触发总用户数 ),UV 转化率( 实验用户中触发了该自定义事件的用户占比 ),均值( 触发总次数/进入实验方案的用户数 )。
复合型指标
复合型指标是为了计算多个自定义事件组成的相关统计效果,在基础的集合运算中包含 交并差除,那么我们在复合型指标中也支持这四种运算。这里面我们以两个自定义事件 E1,E2 为例: 并: E1+E2,表示用户只要发生了E1或者E2即认为该用户触发了(E1+E2)事件,那么事件总触发次数即为触发E1总次数+触发E2总次数,其余相关指标计算就可以看做是一个简单型指标来进行处理。 交: E1*E2,表示用户既触发了E1,也触发了E2,这个里面我们可以基于单个session来看,这样事件触发总次数就是同时触发了E1和E2的总会话数也可以默认为1(目前mPass直接认为1,即相交的计算我们主要查看uv的转化),其他相关指标计算就可以看做是一个简单性指标来进行处理。 差: E1-E2,表示用户触发了E1没有触发E2,事件总触发次数则是满足该条件的用户触发E1的总次数,其余相关指标计算就可以看做是一个简单型指标来处理。 除: E1/E2,这个我们成为转化类事件,最简单的例子就是E1事件表示某个按钮的点击,E2事件表示某个按钮的曝光,那么pv转化率就是sum(E1)/sum(E2)即pv-ctr,同样的uv转化率均值等口径也就清晰了。同样以曝光点击为例,在实际pv-ctr的方差计算时我们发现一个用户多次曝光之间其实是有相关性的,那么在计算实际方差的时候我们利用泰勒展开和E1,E2的协相关系数,对方差公式进行了优化: 假设 x1,x2,...xn 为每个用户点击次数,y1,y2,...,yn 为每个用户曝光次数, 640?wx_fmt=jpeg


以上,是移动端 ABTest 的具体技术架构解析以及在支付宝内如何落地实践的总结。如果对 ABTest 感兴趣,大家可以进一步关注 mPaaS 后续文章及产品迭代更新。

---END---

选择”开发者技术前线 “星标?,内容一触即达。点击原文更多惊喜!

开发者技术前线 汇集技术前线快讯和关注行业趋势,大厂干货,是开发者经历和成长的优秀指南。


历史推荐


Google 出品 Java 编码规范,强烈推荐!

腾讯教育 App Flutter 跨端点播组件实践

看,官方出品了 Vue 编码风格指南!

640?

点个在看,解锁更多惊喜!

探讨AB实验中的分层实验原理与实施方法 AB 实验是的主要应用场景之一。随着业务功能、实验数量的增加,特别是对实验流量的管理需求,需要建立统一的组织和规划。在本文中,我们将简要介绍通用实验流量的管理办法,并介绍如何实现这种流量管理。 阅读详情

相关推荐

Growth Hacking:移动端 ABTest 在支付宝 App 内的落地与应用

| 导语 (想自学习编程的小伙伴请搜索圈T社区,更多行业相关资讯更有行业相关免费视频教程。完全免费哦!) 近年来,随着互联网的快速发展,Growth-Hacking 已经是一个很普遍的概念。Growth-Hacking 的目的就是使用更小更灵活的成本通过数据驱动来挖掘产品增长的奥秘。同时在 AARRR 这个模型中,打造成一个不断优良循环的流程,需要从数据分析中发现产品功能、运营策略与转化之间的相关...

wanghao112956的博客 1055

AB 系统OTA升级介绍

A/B System 概述Android从7.0开始,引入了新的OTA升级方式 A/B System UpdatesA/B系统是指设备上有A和B两套可以工作的系统(用户数据只有一份,为两套系统共用),我们可以理解为一套系统分区,另外一套为备份分区.其系统版本可能一样,也可能不一样;通过升级,可以将旧版本也更新为新版本.当然,设备出厂时这两套系统肯定是一样的.Android 7.0上传统OTA方式和...

你只是看起很努力 1万+

AB实验知识备份

1、什么是:测试多个方案后选择一个最佳方案进行全面推广。 2、为什么:通过实验方式提升核心指标,进而撬动留存、扩大用户群体、增加收入。 3、如何做:保证足够的样本量、选取无偏差的样本、遵循互斥或正交原则。 4、实验架构:流量分配管理、埋点设计开发、数据收集处理、实验效果评估。 5、实验流程:需求评审、实验创建、埋点圈层、官方放量、渠道放量、实验结论、代码下线。 6、统计应用:假设检验依据小概率事件不太可能发生的思想,通过证明假设出现的概率(P值)很小来反证假设的对立面可能成立。

ISIS7Protessional的博客 3215

【干货】AB test 在业务中的落地应用

ABtest做的好,产品优化效果差不了!可见ABtest在评估优化策略的效果方面地位还是很高的,那么如何在业务中应用ABtest?结合企业实际场景,给大家整理一套详细的应用流程。

CDA数据分析师 1247

ab-test-example:使用微服务简化 AB 测试

简化的 AB 测试示例 “编写只做一件事并把它做好的程序。” — Doug McIlroy,Unix 哲学 使用简化的 A/B 测试系统做出用户驱动的决策。 客户端是自包含的,没有外部依赖。 客户端使用加密随机 A/B 测试变体并将结果跟踪到微服务后端。 ##设置示例 ###客户 open app/index.html ###服务 cd services subkit update abtest subkit start abtest ##How-To 在浏览器中测试不同版本的文本、后端呈现的 HTML 模板、不同的后端 API、布局、图像或颜色从未如此简单。 添加变体 注册 a/b 测试变体。 例如 AB.test(['red','green','blue'], 1); 你经常想运行 a/b 测试 1 将始终运行 a/b 测试 0.5 将在 50% 的时间内运行测试 0.2 将运行

推荐ABTest的实现策略总结

推荐ABTest的实现策略总结

app 里的 A_B 测试简介

你可以通过估计有多少用户能够在所需的时间段内进行测试,从而在合理的时间内完成此操作,然后选择估计用户数量的百分比,以便让你的测试在这个时间段内达到统计显著性。在更复杂的情况下,如果需要进行大量的远程 app 配置,app 会将参数发送到 A/B 测试平台,测试平台会跟据这些参数来选出更精细的测试配置。如果已知观察到的行为会因为假设外的某个因素发生变化 —— 例如,当假设仅考虑全球收入的影响时,已知行为会因居住国而异 —— 需要让该因素(单一国家)的值唯一,或者使用全体人口(所有国家)的代表性样本。

asdakdnfh的博客 961

基于AMD AU15P FPGA的SLVS-EC桥PCIe设计方案分享

各位FPGAer周末愉快,今天熊猫君分享一个基于AMD AU15P FPGA的SLVS-EC桥PCIe设计方案。

haoxingheng的专栏 1447

蚂蚁金服技术专家:mPaaS是如何打造“最懂用户”的App的?

摘要: 蚂蚁金服产品服务化技术专家付海涛,在阿里云峰会金融专场做了主题为《新一代移动研发平台mPaaS智能化之路》的精彩分享。7月6-7日,蚂蚁金服mPaaS 团队付海涛、罗其平、吕丹将作为讲师,参与第43届MPD工作坊北京站,想了解更多详情,可戳此处。付海涛 蚂蚁金服技术专家提纲:移动开发平台 mPaaS 发展历程移动开发平台 mPaaS 3.0 的产品体系阿里巴巴金融业务的进化mPaaS 一体...

weixin_34362991的博客 400

⭐⭐⭐全网最详细YOLOv8教程,从环境配置到自己训练,再到数据集的制作,包的各位⭐⭐⭐

问题原因:当你“pip install ultralytics” 时,torch和torchvision会作为它的依赖一起安装了,当执行“pip install torch torchvision torchaudio --index-url。”时,会卸载torch,然后再安装torch+cuda版本,但是不会自动卸载torchvision已有版本,然后再安装torchvision+cuda版本。🎉🎉🎉恭喜各位道友,已经可以训练模型了,现在就是制作自己的数据集,所谓申神通秘境,随心所欲,万物皆可识别也

weixin_74840239的博客 7492

MATLAB安装

Matlab 2016a 安装包及破解教程百度云分享链接: 链接:https://pan.baidu.com/s/1i6BgD8p       密码:17gg   Matlab安装教程: 1、下载文件,得到R2016a_win64.part1.rar、R2016a_win64.part2.rar两部分安装文件和Matlab 2016a Win64 Crack破解文件。 2、解压安装文件(解...

qq_36734094的博客 17万+

AI加持的mPaaS如何打造“最懂用户”的App

摘要: 阿里云峰会于2019年3月21日北京如期举办,蚂蚁金服产品服务化技术专家付海涛在《金融专场》分会场做了主题为《新一代移动研发平台mPaaS智能化之路》的精彩分享。付海涛 蚂蚁金服产品服务化技术专家本次的分享主要围绕以下内容展开:移动开发平台 mPaaS 发展历程移动开发平台 mPaaS 3.0 的产品体系阿里巴巴金融业务的进化mPaaS 一体化移动智能场景一、移动开发平台 mPaaS 的发...

weixin_33806509的博客 323

三、分区配置

rk3566/rk3568 修改分区

暮云星影的博客 514

AB Testing

A/B Testing 说到决策,必然就是一道选择题。是A还是B,this is a question!如何使用风险、代价最小的方法,找到最适合生存的方案,在企业应用中,就显得及其重要。而物竞天择,优胜劣汰,使得A/B Testing尤为重要,并在互联网的世界,大行其道。 一、A/B Testing 在企业中的应用。 在实际应用当中,提出问题的假设是解决问题的第一步。当发生运营疑问和决策的时候,...

c_air_c的博客 1364

《UDS协议从入门到精通(UDS速查手册)》(完结撒花版)

专栏总目录,文中介绍了UDS协议相关的基础知识和一些术语,给出了详细介绍6大类26种服务的跳转目录。

车载系统攻城狮 9万+

【Arduino 动手做】六舵机自平衡 Rotary Stewart 平台

《Arduino六舵机自平衡Rotary Stewart平台项目》 该项目展示了一个基于Arduino的六自由度Rotary Stewart平台,通过六个舵机实现动态平衡控制。设计采用激光切割框架和TAMIYA 70171套件,提供详细组装指南和开源固件(GitHub可获取)。开发者丹·罗耶分享了3D打印文件、视频演示及运动学优化需求,强调该平台可扩展应用于游戏控制(如Kerbal Space Program)或教育领域。项目链接包含完整资源包,鼓励用户参与改进并分享创作成果。该案例体现了Arduino在机

雕爷学编程 1092

不应被神化的AB测试

2018 年,中国移动互联网用户增长放缓,上半年仅增长 2 千万。但是头条系却异军突起,超过百度系、阿里系稳居总使用时长第 2 名。 头条系的崛起有许多的原因,强大的数据监控系统,成熟的增长引擎,上百组同时进行的AB测试等等都在帮助产品经理和运营们找到最优的方案。 36Kr曾在一篇报道中写道: “头条发布一个新APP,其名字都必须打N个包放到各大应用市场进行多次A/B测试而决定,张一鸣...

u010193938的博客 597

杰理接入第三方升级协议OTA教程

本教程介绍了使用dual_bank_updata_api.h接口接入第三方协议进行固件升级的方法。主要内容包括:INI配置要求(需启用双备份并强制4K对齐)、7个核心API接口功能说明及参数详解(初始化、空间检查、数据写入、校验等)、标准升级流程步骤(初始化→检查→写入→校验→引导→清理)。特别强调了4K对齐配置的重要性以避免数据丢失,并提供了被动升级流程图。该方案支持用户自定义协议接入,需严格按照流程调用接口完成升级。

qq_42014563的博客 1430

iOS A/B Test 方案探索

引子 公元2016年末,2017年初,某做旅行产品的互联网公司内,产品经理疯狂的提 A/BTest 需求,以至于该司程序猿谈AB色变,邪恶的产品经理令程序猿们闻风丧胆,苦不堪言...咳咳,扯远了。 近期团队做了很多 AB Test 的业务需求,在这种需求日益见多的情况下,我们不得不提升我们的代码组织方式,以适应或更好的在此类需求上维护我们的代码。所以有了本文,本文主要阐述了业务团队在做

努力,可能成功!放弃,注定失败! 1249

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

可用性测试:A/B测试的实现方法

  网站设计中,我们经常会面临多个设计方案的选择,比如某个按钮是用红色还是用蓝色,是放左边还是放右边。传统的解决方法通常是集体讨论表决,或者由某位专家或领导来拍板,实在决定不了时也有随机选一个上线的。虽然传统解决办法多数情况下也是有效的,但A/B 测试(A/B Testing)可能是解决这类问题的一个更好的方法。   所谓 A/B 测试,简单来说,就是为同一个目标制定两...

weixin_33849942的博客 1326

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

ABtest实验细节整理

目录1.基本概念2.ABtest流程3.注意事项3.1 注意点4.参考资料 1.基本概念 ABtest是一种在线评估方法,为了实现同一个目标而制定的两个方案,一部分用户使用A方案,一部分用户使用B方案,记录下两部分用户的反馈情况,然后根据相应的评估指标确认哪种方案更好。 2.ABtest流程    3.注意事项 3.1 注意点 4.参考资料 1.《推荐系统开发实战》 ...

盏茶AI 6818

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

ABTEST平台建设思路与方案

可将实验分为互斥流量实验和正交流量实验,分别对应下图中的实验1和实验2。实验类型一句话特点介绍优点缺点互斥流量实验(随机实验)将流量随机的分配到某个组上进行实验1.请求只会获得到一个组的结果 2. 可认为是只有一层的正交流量实验1. 实验简单,在做数据分析时,只需要对比所有互斥实验即可1.由于组之间流量互斥,100的流量所分的组是有限的。2. 若所有运行中实验把流量占满后, 将无法在同一个流量入口下再新增实验,将影响业务的AB推进正交流量实验。

BigBug_500的博客 2246

数分必备技能 | AB测试就该这么分析!

|作者:无眠| 来源:知乎大家好,我是小z~后台收到一些旁友的留言,想学习AB测试相关知识,但市面上的教程要么太“正式”,要么知识点比较零散。今天给大家分享的这篇文章,可谓既干货又生...

SeizeeveryDay的博客 1287
上一篇: 创始人计划 PHP 方言,暂命名为P++!
下一篇: 如何用 Python 写一个安卓 APP ?
DevolperFront
博客等级 码龄8年 465粉丝 81原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值