Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >目标检测算法之 Yolo 系列

目标检测算法之 Yolo 系列

作者头像
SIGAI学习与实践平台
发布于 2019-07-30 07:02:12
发布于 2019-07-30 07:02:12
1.2K0
举报

SIGAI特约作者

TankZhou 复旦大学

研究方向:深度学习计算机视觉

引入 R-CNN 基本结构和原理 R-CNN 的不足与改进 SPP 和 ROI Fast R-CNN Faster R-CNN YOLO V1 主要贡献和优势 基本原理 Anchor box 的设计

Ground truth 的生成

confidence score 坐标值换算 类别概率 映射到 bounding box 推理过程 计算 loss 实用过程 网络结构 Yolo V2 主要贡献 关键改进 重新定义 Anchor box 坐标变换方式 多尺度融合 Darknet-19 Yolo V3

引入

目标检测算法是计算机视觉三大基础任务之一,其包括目标定位和目标分类两部分。

在 yolo 系列出来之前,主流的做法是分段式的 R-CNN 系列,主要包括 R-CNN、Fast R-CNN、Faster R-CNN、Mask R-CNN 等。

R-CNN 基本结构和原理

R-CNN 的基本结构如下图所示:

R-CNN 主要分为候选区提取和候选区分类两个阶段,并且两阶段分开训练。其主要思想如下。

首先通过选择性搜索(Selective Search)对输入进行超像素合并,产生基础的子区域。然后将小的子区域不断合并成大区域,并从中找出可能存在物体的区域,这个过程即候选区提取(Region Proposal)。

提取出包含目标的候选区之后,需要对其进行分类,判定目标属于哪一类。可以通过 SVM 或 CNN 等算法进行分类。

R-CNN 的不足与改进

SPP 和 ROI

要实现较为实用的 R-CNN 网络,往往需要对输入样张提取上千个候选区,并对每个候选区进行一次分类运算。于是,后续出现空间金字塔池化(SPP) 和 region of interest(`ROI)等方式进行改进。

其基本思想是,输入图片中的目标区域,经过 CNN 后,得到的特征图中,往往也存在着对应的目标区域,此即 ROI。后续对该特征图(多种尺度)上的 ROI 进行分类,此即 SPP。

通过这种方式,可以共用特征提取部分,只对最后的特征图进行候选区提取和分类。这样就可以极大地减少总的计算量,并提升性能。

Fast R-CNN

但是,SPP 和 ROI 方式,仍旧需要分段训练。其不仅麻烦,同时还分割了 bounding box 回归训练与分类网络的训练。这使得整个函数的优化过程不一致,从而限制了更高精度的可能。

于是,再次对其进行改进:

1.进行 ROI 特征提取之后,将两种损失进行合并,统一训练。这样相对易于训练,且效率更高

2.将 SPP 换做 ROI Pooling

3.对于 bounding box 部分的 loss,使用 Smooth l1 函数,可以提升稳定性

Faster R-CNN

在 Fast R-CNN 中,对 ROI 而非原图的候选区进行分类,提升速度。因此,下一步可以对候选区提取部分进行优化,提升性能。

因此,在 Faster R-CNN 中,不再对原图进行候选区提取,而是直接对经过 CNN 后的特征图进行候选区提取,这部分网络,即 Region Proposal Networks(RPN)。

之后,将候选区分别送入两个子网络,分别用与计算 bounding box 的坐标和候选区的类别。如图 1 所示。

通过这种方式,可以进一步减少计算量,合并两个阶段,并提升精度。

YOLO V1

主要贡献和优势

虽然 Fast R-CNN 已经相当优秀,但是其仍旧不是真正意义上的一体式目标检测网络,其性能仍有提升的空间。

针对 R-CNN 系列的分段式设计的问题,YOLO 提出一种全新的 loss 计算方式,重新定义了目标检测问题,将其定义为回归问题进行训练,同时进行定位和分类的学习。

YOLO 的核心,在于其损失函数的设计。其一体式架构设计,计算量更少,速度更快,易于优化,且满足实时检测的需求。

YOLO V1 具有以下优势:

1.速度极快,易于优化:只需读取一次图像,就可进行端对端优化,可满足实时需求

2.背景误识别率低:对全图进行卷积学习,综合考虑了全图的上下文信息

3.泛化性能好:也是由于综合考虑了图片全局,因此能够更好地学习数据集的本质表达,泛化性能更好

4.识别精度高

当然,相较于 Faster R-CNN ,YOLO v1 存在明显不足:

1.定位精度不够,尤其是小目标

2.对密集目标的识别存在不足

3.异常宽长比的目标识别不佳

基本原理

深度学习任务中,合理的目标设定,是成功的关键因素之一。

Anchor box 的设计

在 R-CNN 系列中,需要先提取候选区,然后再将候选区进行回归微调,使之更接近 groung truth。而 YOLO 直接将其合并为一步,即:回归。但是,YOLO 保留了候选区的思想,只是将其演变为了 anchor box。

在 YOLO V1 中,首先设定 B 个不同尺寸,宽长比的 anchor box。然后将每张图片划分成S×S的格点,每个格点对应有 B 个 anchor box,共S×S×B个 anchor box,其粗略的覆盖了整张图片。

对于每张图片,均存在初始的S×S×B 个 anchor box,作为初始 bounding box。现在需要做的是,通过学习,不断判定哪些 bounding box 内存在目标,存在什么样的目标,同时不断调整可能存在目标的 bounding box 的宽长比和尺寸,使之与 ground truth 更接近。

那么,ground truth 又是如何定义的呢?

Ground truth 的生成

目标检测任务,首先需要做的是判定是否包含目标,然后才是判定目标的位置以及类别。

以下图为例,详细讲解从一张图片,生成 ground truth 的过程。

confidence score

如上图所示,首先要做的,就是判定哪些 bounding box 内包含目标。我们可以通过一个置信度得分 confidence score,来判定某个 bounding box 内是否包含目标。

对于上图,我们设定目标中心所在的格点,包含目标。显然,对于图片中目标的 ground truth,该值为 1。

坐标值换算

对于不包含目标的 anchor box,不用计算其坐标。对于包含目标的 anchor box,需要获取其坐标。

在 yolo 中,通过中心位置和尺寸表示坐标,即:(x,y,w,h)

图片的 label 与 groung truth 之间,通过如下方式换算。

如上图所示,狗狗的原始坐标(label)为

。现在需要将其变换为 ground truth。

x,y表示目标中心距离对应格点边界(左上角)的位置,数值相对于格点单元尺寸进行过归一化。w,h为目标边框的尺寸,相对于整图尺寸进行过归一化。

因此,上图狗狗的坐标对应的 ground truth 计算方式为(每个格点尺寸为 1):

类别概率

目标位置定义完毕后,需要定义目标的类别对应的 ground truth。在 YOLO V1 中,存在如下设定:

每个格点最多只能预测一个目标,即使是共有 B 个 anchor box,因此最多只能包含一个类别。

这一设定,将会导致,对于密集的目标,YOLO 的表现较差。

对于每个目标(每个格点内只允许存在一个),其对应的类别 ground truth 为 one-hot 编码。

映射到 bounding box

由于每张图片初始对应S×S×B个 bounding box,因此需要将上面的 ground truth 进行映射,使之与 bounding box 尺寸对应一致,才能进行比较,计算误差,进行优化。步骤如下:

1.初始化每个格点上的 bounding box 为 0

2.对于存在目标的格点,将于 ground truth 之间 IOU 最大的 bounding box 对应的 confidence score 填充为 1,表示包含目标

3.将包含目标的 bounding box ,填充对应的的 ground box 的坐标和类别值

到这里,就从 label ,得到了用于比较的 target。

推理过程

推理过程较为简单,输入图片,得到一个尺寸为 S×S的特征图,通道数为B×(1+4)+C,其中,B 为每个格点的 bounding box 数目,C 为到预测的目标类别数,1 和 4 分别表示包含目标的置信度和对应的坐标。

由于每个格点只负责预测一个目标,因此只需要包含一个类别向量即可。

在原论文中,S=7,B=2,C=20,因此最后输出尺寸为7×7×30 。

计算 loss

对于每张图片,大多数格点单元不包含目标,其对应的置信度得分为 0。这种目标存在与否的失衡,将会影响最后 loss 的计算,从而影响包含目标的格点单元的梯度,导致模型不稳定,训练容易过早收敛。

因此,我们增加 bounding box 坐标对应的 loss,同时对于不包含目标的 box,降低其置信度对应的 loss。我们用

来实现这一功能,且:

同时,sum-squared error 还会同等看待 large boxes 和 small boxes 的 loss 。而同等的 loss 对于 large boxes 和 small boxes 的影响是不同的。

为了减缓这种空间上的不均衡,我们选择预测 w 和 h 的平方根,可以降低这种敏感度的差异,使得较大的对象和较小的对象在尺寸误差上有相似的权重。

综上所述,完整的 loss 计算方式如下所示:

其中(以 ground truth 为判定依据):

表示是否格点单元i中包含目标;

表示格点单元i中,第j个预测的 bounding box 包含目标

意思是网格 i 的第 j 个 bounding box 中不存在对象

因此,上面的 loss 中:

• 第一行表示:当第 i 个格点中第 j 个 box 中存在目标 (IOU 比较大的 bounding box) 时,其坐标误差

• 公示的第二行表示:第 i 个格点中第 j 个 box 中存在目标时,其尺寸误差

• 公示的第三行表示:第 i 个格点中第 j 个 box 中存在目标时,其置信度误差

• 公示的第四行表示:第 i 个格点中第 j 个 box 中不存在目标时,其置信度误差

• 公示的第五行表示:第 i 个格点中存在目标时,其类别判定误差

实用过程

在实际使用中,需要预测实际的边框和类别。通常,可能存在多个 bounding box 预测一个目标,存在冗余,需要使用非极大抑制(MNS)来剔除冗余 bounding box。其核心思想是:选择置信度得分最高的作为输出,去掉与该输出重叠较高的预测框,不断重复这一过程直到处理完所有备选框(共 S×S×B个)。

具体步骤如下所示:

1. 过滤掉 confidence score 低于阈值的 bounding box

2. 遍历每一个类别

1. 找到置信度最高的 bounding box,将其移动到输出列表

2. 对每个 Score 不为 0 的候选对象,计算其与上面输出对象的 bounding box 的 IOU

3. 根据预先设置的 IOU 阈值,所有高于该阈值(重叠度较高)的候选对象排除掉

4. 当剩余列表为 Null 时, 则表示该类别删选完毕,继续下一个类别的 NMS

3. 输出列表即为预测的对象

网络结构

Yolo V2

主要贡献

Yolo V2 的主要贡献在于:

1. 利用 wordTree 设计,充分利用分类数据集,弥补目标识别类别数目的不足

2. 重新设计基础网络 darknet-19,输入尺寸可变,从而在同一套模型上,提供速度和精度之间的切换

3. 重新设计 anchor box 和坐标变换格式,使的瘦脸更快,精度更高

关键改进

这篇论文进行了较多的改进优化,主要分为新设计的基础网络 darknet-19,以及新设计 anchor box 等。至于其他改进,详见论文。

重新定义 Anchor box

在 Yolo V2 中,输入尺寸变为416×416,网络整体缩放倍数为 13,最后得到尺寸为13×13的特征图,并在改尺寸上进行推理预测。

此外,较为重要的是,v2 中,每个 bounding box 负责预测一个目标,因此一个格点内可以预测多个目标,解决了密集目标的预测问题。

此外,不再通过手工选择 anchor box,而是针对特定数据集,通过 k-means 算法进行选择,详见论文。

坐标变换方式

在 yolo v1 中,使用全连接层来直接预测目标的 bounding box 的坐标。训练过程不够稳定,主要来自(x,y)的预测。

而在 Faster R-CNN 中,使用全卷积网络 RPN 来预测 bounding box 相对于 anchor box 的坐标的偏移量。由于预测网络是卷积网络,因此 PRN 在 feature map 网络的每个位置预测这些 offset。

相比于直接预测坐标,预测 offset 更简单,误差更小,可以简化问题,使得网络更容易学习。

原始方案中,预测值

和(x,y)之间,计算方式如下:

该方式下,对坐标

没有限制,因此预测的 bounding box 可能出现在任意位置,导致训练不稳定。因此,在 V2 内改为预测偏移量,其计算方式如下所示:

其中,

表示格点单元相对于图像左上角的坐标;

表示先验框的尺寸 (bounding box prior),预测值为

• 对于预测的 bbox 的中心,需要压缩到 0-1 之间,再加上 anchor 相对于grid 在 x 和 y 方向上的偏移。这一点,和 yolo v1 是一致的

• 对于预测的 bbox 的宽高,这个和 faster RCNN 一样,是相对于 anchor 宽高的一个放缩。exp(w) 和 exp(h) 分别对应了宽高的放缩因子

• 对于预测的 bbox 的置信度,则需要用 sigmoid 压缩到 0-1 之间。这个很合理,因为置信度就是要0-1之间。

• 对于预测的每个类别,也是用你 sigmoid 压缩到0-1之间。这是因为类别概率是在0-1之间

最后通过换算得到的为在当前特征图尺寸上的坐标和尺寸,需要乘以整体缩放因子(32),方可得到在原图中的坐标和尺寸。

这种参数化的方式,使得神经网络更加稳定。

多尺度融合

13×13的输出特征图,可以很好的预测较大尺寸的目标,但是对于小尺寸的目标,可能并不太好。

因此,在 YOLO v2 中,除了使用13×13的特征图,还使用其之前层尺寸为26×26和52×52的特征图,并进行多尺度融合。不同尺寸之间,通过如下形式,进行特征融合。

例如,26×26×256通过这种方式,将变为13×13×1024的 tensor。

具体融合形式,详见图 9。

Darknet-19

大多数 detection 系统以 VGG-16 作为基础的特征提取器 (base feature extractor)。但是 vgg-16 较为复杂,计算量较大。

Yolo V2 使用一个定制的神经网络作为特征提取网络,它基于 Googlenet 架构,运算量更小,速度更快,然而其精度相较于 VGG-16 略微下降,称之为 darknet-19。

与 VGG 模型类似,大多数使用3×3的卷积层,并在每一次 pooling 后,通道数加倍。此外,使用全局池化 ( GAP,global average pooling ) 来进行预测。同时,在3×3的卷积层之间,使用1×1的卷积层来压缩特征表达。此外,使用 batch normalization 来稳定训练,加速收敛以及正则化模型。

完整的网络层如下所示:

Yolo V3

Yolo V3 只是对 Yolo v2 进行了一次较小的优化,主要体现在网络结构上,提出了 darknet-53 结构,作为特征提取网络。最后,Yolo V3 在小目标的识别上改善较大,但是中等目标和大目标的识别方面,表现略微下降。

网络结构如下所示:

最后附上一张性能表现图:

参考

- https://arxiv.org/abs/1506.02640

- https://arxiv.org/pdf/1612.08242.pdf

- https://pjreddie.com/media/files/papers/YOLOv3.pdf

- https://pjreddie.com/darknet/yolo/

- https://github.com/BobLiu20/YOLOv3_PyTorch

- https://www.jianshu.com/p/d535a3825905

本文为SIGAI原创

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-07-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 SIGAI 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
基于电商业务中台最佳实践:总体架构介绍与交易业务中台核心设计
业务中台采用领域驱动设计(DDD),在其上构建业务能力SAAS,持续不断进行迭代演进。
架构之家
2022/09/01
2.2K0
基于电商业务中台最佳实践:总体架构介绍与交易业务中台核心设计
【愚公系列】软考高级-架构设计师 101-系统架构评估
系统架构评估(System Architecture Evaluation)是一种系统化的方法,用于分析和评估软件系统的架构设计,确保其满足预期的质量属性和需求。
愚公搬代码
2024/08/11
5660
技术揭秘12306改造(二):探讨12306两地三中心混合云架构
在年前的「技术揭秘12306改造」专题中,一位对12306改造非常关注的技术架构师,他从技术的角度,用科学论证的方式说明12306是如何实现高流量高并发的关键技术。(http://www.csdn.net/article/2015-02-10/2823900)今天,他继续为大家带来第二章:解析12306两地三中心混合云架构。 前言 2015年春节最大的特色就是“摇一摇”,微信红包在春晚摇一摇互动总量超过110亿次,峰值达8.1亿次/分钟,有185个国家传递微信祝福。支付宝钱包在除夕晚上8点达峰值,首页被点
CSDN技术头条
2018/02/09
3.2K0
技术揭秘12306改造(二):探讨12306两地三中心混合云架构
算法交易系统架构,此篇足矣!
算法交易是使用计算机算法自动做出交易决策,提交指令并在提交后管理那些指令。算法交易系统最好使用由三个组件组成的简单概念架构来理解,这些组件处理算法交易系统的不同方面,即数据处理程序、策略处理程序和交易执行处理程序。这些组件与上述算法交易的定义一一映射。在今天的推文中,我们扩展这个架构来描述如何构建更智能化的算法交易系统。
量化投资与机器学习微信公众号
2019/07/23
4.3K0
算法交易系统架构,此篇足矣!
转型求通——微服务架构的最佳实践和发展趋势 | Techo大会精彩回顾第二期
全文共7399字,阅读需要14分钟 导读 刘冠军《万象伊始——集中式架构为何演进到微服务架构》 秦金卫《转型求通——微服务架构的最佳实践和发展趋势》 曹国梁《深度剖析—— 传统架构的云原生改造之路》 万俊峰《转型之后——面对流量洪峰,微服务架构如何进行弹性设计?》 陆绪之《落地实践——Service Mesh下的微服务落地实践》 注:发言仅代表讲师个人观点 讲师介绍 秦金卫 Apache Dubbo/ShardingSphere PMC 前某集团高级技术总监/某商业银行北京研发中心负责人
腾讯云中间件团队
2021/03/24
9500
技术人上云的七个重要姿势
现在,业务上云已经成为一个潮流。尤其是对于公司内部的技术人员而言,经常会有很强的技术冲动去让业务上云。同时,云供应商们的大力宣传让公司决策层及业务人员对于上云也有非常高的期待。但是,不管怎么说,公司业务系统上云还是一个技术活。作为公司内技术人员,仍然要从技术的角度充分考虑上云的路径、节奏以及具体技术方案。所以,很多时候技术人员的上云姿势比上云自身还重要。选择一个正确的上云姿势会让你的上云过程更加顺利,并能够为未来充分释放云生产力奠定基础,最终达成公司上云的初心:促进业务创新。 姿势一:掌握正确的上云节奏
静一
2018/03/23
6530
2018-06-08 从单一架构到分布式交易架构,网易严选的成功实践
https://mp.weixin.qq.com/s/syM4ReAWpZ5d4KI87ogpiQ 作者|马超编辑|薛梁过去两年严选提出并设计了统一售后模型、最大可退金额、和多级退款引擎等概念,抽象出了销退支持、上门取件、极速退款、售后风控等通用能力,经过几次架构演变,有效的降低了业务逻辑耦合和复杂度,可以做到上层业务的快速搭建和服务接入。 作为电商产品,交易在严选的业务中承担着重要的角色。随着业务的不断发展,交易场景的定制化和差异化开始凸显,同时第三方支付合作方的接入也越来越多,如何在保证交易服务安全稳定
Albert陈凯
2018/06/12
9820
解决方案架构师修炼之道
推荐序二 在IT领域里,解决方案架构师的培养成本也是极高的,架构的优劣决定着企业IT的建设和运营成本,架构设计上的漏洞可能会给企业带来巨大的损失。一名优秀的解决方案架构师在成长的道路上,要学习各类IT知识,在项目中摸爬滚打,总结经验教训,从实践中提炼方法论 ---- 推荐序四 我们介入后,围绕发布目标,反向梳理了三大模块工作细节及其配合关系,包括功能性开发与测试、非功能性开发与验证、产品运营与推广等,帮助产品相关的几十人的业务与技术团队就目标形成共识,包括帮助团队明确和调整优先级,舍弃一些不太重要的功能,提
yeedomliu
2021/12/01
2.7K0
解决方案架构师修炼之道
分布式架构那些事儿
首先我们要了解什么叫分布式架构。简单来说,就是把一个系统拆成多个子系统,在不同地理位置部署,相互协作完成任务。现在云计算、5G这些大热的技术都离不开它。其实生活中也有很多类似的例子,比如外卖小哥手里的送餐工具:订单被拆分到各个区域的小哥,他们快速找到顾客送到手里。这样我们才能足不出户吃遍美食!
35岁程序员那些事
2023/08/18
4020
分布式架构那些事儿
从 Oracle 迁移到 TiDB 的方案设计与用户实践
当前,全球数字化浪潮推动数字经济与实体经济融合,更多的企业意识到数据平台对业务增长和创新的重要性。通过国产化迁移和替换数据库,中国数据库市场蓬勃发展,为企业自主创新奠定了基础。本文以中国人寿财险公司为例,详述其从 Oracle 到 TiDB 分布式数据库的四个阶段的迁移,展示了金融行业对数据库的高要求和国产数据库的价值应用。
PingCAP
2023/05/25
4570
从 Oracle 迁移到 TiDB 的方案设计与用户实践
微服务架构深度解析微服务定义是什么?微服务与云原生有何关联?
微服务的概念来源于Martin Fowler 的一篇知名博文 :MicroServices。在博文中,“微服务架构”这个术语用来描述一种将软件应用程序设计为可独立部署的服务套件的特定方式。
愿天堂没有BUG
2022/10/28
7570
微服务架构深度解析微服务定义是什么?微服务与云原生有何关联?
蚂蚁金服11.11:支付宝和蚂蚁花呗的技术架构及实践
每年“双11”都是一场电商盛会,消费者狂欢日。今年双11的意义尤为重大,它已经发展成为全世界电商和消费者都参与进来的盛宴。而对技术人员来说,双十一无疑已经成为一场大考,考量的角度是整体架构、基础中间件、运维工具、人员等。
Java高级架构
2018/08/16
4.4K0
蚂蚁金服11.11:支付宝和蚂蚁花呗的技术架构及实践
事件驱动的基于微服务的系统的架构注意事项
今天的 IT 系统正在生成、收集和处理比以往更多的数据。而且,他们正在处理高度复杂的流程(正在自动化)以及跨越典型组织边界的系统和设备之间的集成。同时,预计 IT 系统的开发速度更快、成本更低,同时还具有高可用性、可扩展性和弹性。 为了实现这些目标,开发人员正在采用架构风格和编程范式,例如微服务、事件驱动架构、DevOps 等。正在构建新的工具和框架来帮助开发人员实现这些期望。 开发人员正在结合事件驱动架构 (EDA) 和微服务架构风格来构建具有极强可扩展性、可用、容错、并发且易于开发和维护的系统。 在本文
IT大咖说
2022/03/04
1.5K0
汽车之家电商系统架构演进与平台化架构实践
作者 | 方利 编辑 | 贾亚宁   本文由大厂案例转载自汽车之家主机厂事业部 - 技术部高级研发工程师方利首发于之家技术公众号的文章。 汽车之家电商系统诞生在 2014 年,成长于 2016~2019 年,并经历多年双 11、818 晚会的洪峰考验,沉淀了稳定可靠、性能卓越的在线交易能力。随着业务中台的建设浪潮兴起,2019 年进入中台化建设阶段,输出其在汽车电商领域五年沉淀的能力,助力汽车电商行业发展,加速企业数字化转型!   一、架构演进 这个部分主要讲一下汽车之家电商系统的架构发展历程,每
深度学习与Python
2023/03/29
1.4K0
汽车之家电商系统架构演进与平台化架构实践
搭建业务中台系统框架:大中台+小前台电商系统架构思路
近年来的数据中台、业务中台等系统架构兴起,大多数企业在不清楚的中台背景的情况下就盲目追求,最后只会导致自身平台丢失原有的优势框架。在这里,我们来总结下业务架构总原则:大中台+小前台框架思维:
数商云网络科技
2020/04/28
3.7K0
搭建业务中台系统框架:大中台+小前台电商系统架构思路
将成为数据库主流的HTAP,它能替代Oracle吗?
11 月 17 日,金山办公登陆科创版,圆了小米集团创始人、金山软件董事长雷军和金山所有员工的“英雄梦”。算下来,从 1999 年以金山办公为业务主体准备上市算起到今天,雷军足足等了 20 年。
AI科技大本营
2019/12/10
1.3K0
将成为数据库主流的HTAP,它能替代Oracle吗?
40页PPT分享万亿级交易量下的支付平台设计
苏宁金融交易量3年内从1000亿增长到万亿+,服务用户3亿+,服务场景从服务于苏宁易购内部生态,扩展到服务全渠道,全场景,多业态的线上线下智慧零售的开放生态圈,一方面要满足公司业务发展要求,快速研发新产品,另一方面要满足818大促,双11等大促设计要求;
数据和云
2019/05/20
2.6K0
40页PPT分享万亿级交易量下的支付平台设计
性能测试与故障测试:求同存异与协同价值
在数字化转型加速的今天,软件系统的复杂度和用户规模呈指数级增长。无论是电商平台的“秒杀”活动,还是金融系统的实时交易,系统稳定性已成为用户体验和企业生存的基石。然而,仅依靠功能测试已无法满足需求——性能测试与故障测试逐渐成为保障系统可靠性的两大支柱。两者看似侧重不同,实则共同构建了系统的“稳定性防线”。本文将从定义、差异、共同点及协同应用等方面展开分析,揭示其内在逻辑与实践价值。
FunTester
2025/04/01
600
性能测试与故障测试:求同存异与协同价值
无例可循,双十一倒逼出中国互联网「三高架构」
对大多数人而言,今年的双十一可谓是无感而过。然而,这个「无感」正是今年支付宝技术团队的一个重要目标。
机器之心
2022/12/16
3.2K0
无例可循,双十一倒逼出中国互联网「三高架构」
高可用这个问题,加机器就能解决?
互联网服务的可用性问题是困扰企业 IT 人员的达摩克利斯之剑:防于未然,体现不出价值。已然发生,又面临 P0 危机。就更别提稳定性建设背后显性的 IT 预算问题与隐性的人员成本问题。
腾讯云开发者
2024/11/21
970
高可用这个问题,加机器就能解决?
推荐阅读
相关推荐
基于电商业务中台最佳实践:总体架构介绍与交易业务中台核心设计
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档