MixFormerV2: Efficient Fully Transformer Tracking

news2024/11/24 15:36:29

摘要

基于变压器的跟踪器在标准基准测试上取得了很强的精度。然而,它们的效率仍然是在GPU和CPU平台上实际部署的一个障碍。在本文中,为了克服这一问题,我们提出了一个完全变压器跟踪框架,称为MixFormerV2,没有任何密集的卷积操作和复杂的分数预测模块。我们的关键设计是引入四种特殊的预测标记,并将它们与来自目标模板和搜索区域的标记连接起来。然后,我们对这些混合标记序列应用统一的变压器主干。这些预测标记能够通过混合注意捕获目标模板和搜索区域之间的复杂相关性。在此基础上,我们可以很容易地预测跟踪盒,并通过简单的MLP头估计其置信度得分。为了进一步提高MixFormerV2的效率,我们提出了一种新的基于蒸馏的模型简化范式,包括密-稀疏蒸馏和深到浅层蒸馏。前者的目的是将知识从基于致密头的MixViT转移到我们的完全变压器跟踪器上,而后者则用于修剪主干网的一些层。我们实例化了两种类型的MixForemrV2,其中MixFormerV2-B在LaSOT上达到70.6%的AUC,GPU速度为165FPS,MixFormerV2-S在LaSOT上以实时CPU速度超过FEAR-LAUC2.7%的AUC。

介绍

视觉物体跟踪一直是计算机视觉中一项基本而长期的任务,目的是在其初始边界框的视频序列中定位物体。它有广泛的实际应用,通常需要较低的计算延迟。因此,在保持高精度的同时,设计一个更高效的跟踪架构是很重要的。最近,基于变压器的单流跟踪器[7,14,54]获得了良好的跟踪精度,由于变压器块内的特征提取和目标集成的统一建模,这允许两个组件受益于变压器的开发(例如,维特[17],自我监督预训练[23]或对比预训练[42])。然而,对于这些跟踪器来说,推理效率,特别是在CPU上,仍然是实际部署的主要障碍。以最先进的跟踪器MixViT [15]为实例,其管道包含i)目标模板和搜索区域标记序列上的变压器主干,ii)二维搜索区域的密集角头和iii)额外复杂的分数预测模块进行分类(即估计可靠的在线样本选择的盒子质量)。为了实现高效跟踪器,MixViT的设计仍存在几个问题。首先,密集的卷积角头仍然显示出一个耗时的设计,如表1所示。这是因为它在高分辨率的二维特征图上,通过总共10个卷积层密集地估计了盒角的概率分布。其次,为了处理在线模板的更新,需要一个由精确的RoI池化层、两个注意块和一个三层MLP组成的额外复杂的分数预测模块来提高在线样本的质量,这在很大程度上阻碍了其MixViT的效率和简单性。

在这里插入图片描述

为了避免密集的角头和复杂的分数预测模块,我们提出了一种新的全变压器跟踪框架——不需要任何密集卷积操作的MixFormerV2。我们的MixFormerV2产生了一个非常简单和高效的架构,它由混合令牌序列上的一个变压器主干和可学习预测令牌上的两个简单的MLP头组成。具体地说,我们引入了四种特殊的可学习预测标记,并将它们与来自目标模板和搜索区域的原始标记连接起来。与标准ViT中的CLS标记一样,这些预测标记能够捕获目标模板和搜索区域之间的复杂关系,作为后续回归和分类的紧凑表示。在此基础上,我们可以通过简单的MLP头很容易地预测目标盒和置信度得分,从而得到一个高效的全变压器跟踪器。我们的MLP头直接回归了四个盒坐标的概率分布,在不增加开销的情况下提高了回归精度。

为了进一步提高MixFormerV2的效率,我们提出了一种新的基于蒸馏的模型简化范式,包括密稀疏蒸馏和深浅蒸馏。密度稀疏蒸馏的目的是将知识从基于稠密头的MixViT转移到我们的全变压器跟踪器。由于我们的MLP头部中基于分布的回归设计,我们可以很容易地采用对数模拟策略,将MixViT跟踪器提取到我们的MixFormerV2中。根据表2中的观察结果。,我们还利用从深到浅的蒸馏来修剪我们的MixFormerV2。我们设计了一种新的渐进深度修剪策略,遵循一个关键原则,限制学生和教师跟踪器的初始分布尽可能相似,从而增强知识的转移能力。具体来说,在冻结的教师模型的指导下,一些复制的教师模型的某些层逐渐被丢弃,我们使用修剪后的模型作为我们的学生初始化。在cpu实时跟踪方面,我们进一步引入了一个中间教师模型来弥补大教师和小学生之间的差距,并基于所提出的蒸馏范式对MLP的隐藏层维度进行了修剪。

在这里插入图片描述

基于所提出的模型简化范式,我们实例化了两种类型的MixFormerV2跟踪器,MixFormerV2-B和MixFormerV2-S。如图1所示,MixFormerV2在跟踪精度和推理速度之间比之前的跟踪器取得了更好的权衡。我们的贡献有两方面: 1)我们提出了第一个没有任何卷积操作的完全变压器跟踪框架,称为MixFormerV2,产生了一个更统一和高效的跟踪器。2)我们提出了一种新的基于蒸馏的模型简化范式,使MixFormerV2更高效,可以在具有gpu或cpu的平台上实现高性能跟踪。

在这里插入图片描述

相关工作

Efficient Visual Object Tracking

近几十年来,由于新的基准数据集和更好的跟踪器的出现,视觉对象跟踪任务得到了快速的发展。研究人员已经试图为实际应用探索高效和有效的跟踪架构,如基于暹罗的跟踪器,在线跟踪器和基于变压器的跟踪器。得益于变压器的结构和注意机制,最近的视觉跟踪工作已经逐渐放弃了传统的三阶段模型范式,即特征提取、信息交互和位置头。他们采用了更统一的单流模型结构,共同进行特征提取和交互,这对可视化对象跟踪任务的建模非常有效。然而,一些现代跟踪体系结构太重,计算成本太高,因此很难在实际应用中部署。LightTrack使用NAS来搜索一个轻的暹罗网络,但它的速度在强大的gpu上并不是非常快。FEAR ,HCAT ,E.T.Track 设计了更高效的框架,但并不适合单流跟踪器。我们是第一个设计高效的单流跟踪器,以实现良好的精度和速度的权衡。

Knowledge Distillation

知识蒸馏[26]是为了在教师模型的监督下学习更有效的学生模型。首先,将KD应用于分类问题中,其中KL散度被用来度量教师和学生的预测概率分布的相似性。对于目标检测等回归问题,经常采用特征模拟。LD 通过将狄拉克分布表示转换为边界盒的概率分布表示,对边界盒位置进行对数蒸馏,很好地统一了对数蒸馏和位置蒸馏。在这项工作中,我们利用了一些定制的策略,使知识蒸馏更适合我们的跟踪框架。

Vision Transformer Compression

有许多加速模型推理的通用技术,包括模型量化、知识蒸馏、剪枝]和神经结构搜索。最近,许多工作也集中在压缩视觉变压器模型上。例如,动态ViT ,Evo-ViT试图在注意机制中修剪令牌。AutoFormer,NASViT ,SlimmingViT采用NAS技术来探索精致的ViT架构。ViTKD提供了几个ViT特征蒸馏指南,但它专注于压缩特征维度,而不是模型深度。MiniViT [55]应用权重共享和多路复用来减少模型参数。由于单流跟踪器高度依赖于消耗训练资源的预训练器,因此我们求助于直接修剪跟踪器的图层。

方法

在本节中,我们首先介绍MixFormerV2,它是一个更高效和统一的全变压器跟踪框架。然后描述了提出的基于蒸馏的模型简化,包括密集到稀疏蒸馏和深到浅蒸馏。

Fully Transformer Tracking: MixFormerV2

所提出的MixFormerV2是一个完全的变压器跟踪框架,没有任何卷积操作和复杂的分数预测模块。它的主干是在三种类型的混合令牌序列上的一个普通转换器:目标模板令牌、搜索区域令牌和可学习的预测令牌。然后,将简单的MLP头放在顶部,预测框坐标的概率分布和相应的目标质量得分。与其他基于变压器的跟踪器(如TransT 、STARK 、MixFormer、OSTrack和SimTrack)相比,我们的MixFormerV2通过首次有效地删除定制的卷积分类和回归头,简化了跟踪管道,从而产生了一个更统一、高效和灵活的跟踪器。整体架构如图2所示。通过输入模板令牌、搜索区域令牌和可学习预测令牌,MixFormerV2以端到端方式预测目标边界框和质量得分。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mwkQXovi-1690385708577)(E:\CodeFile\note\MixFormerV2\MixFormerV2.assets\image-20230726211322823.png)]

Prediction-Token-Involved Mixed Attention

与MixViT中最初的混合注意力相比,关键的区别在于引入了特殊的可学习预测令牌,用于捕获目标模板和搜索区域之间的相关性。这些预测标记可以逐步压缩目标信息,并用作后续回归和分类的紧凑表示。具体来说,给定多个模板、搜索和四个可学习的预测标记的连接标记,我们将它们传递到N个涉及预测标记的混合注意模块(P-MAM)层中。我们使用qt、kt和vt来表示注意力的模板元素(即query, key and value),qs、ks和vs来表示搜索区域、qe、ke和ve来表示可学习的预测标记。P-MAM可以定义为:

在这里插入图片描述

其中,d表示每个元素的维度, A t t e n t , A t t e n t s , A t t e n e Atten_t,Attent_s,Atten_e Attent,Attents,Attene分别是模板、搜索和可学习的预测令牌的注意输出。与原来的混合注意方案相似,我们使用非对称混合注意方案来进行有效的在线推理。与标准ViT中的CLS令牌一样,可学习的预测令牌会自动在跟踪数据集上学习,以压缩模板和搜索信息。

Direct Prediction Based on Tokens

在变压器主干之后,我们直接使用预测标记来回归目标位置,并估计其可靠的得分。具体地说,我们利用了基于四种特殊的可学习预测标记的基于分布的回归。在这个意义上,我们回归了四个边界框坐标的概率分布,而不是它们的绝对位置。第4.2节的实验结果也验证了该设计的有效性。由于预测标记可以通过涉及预测标记的混合注意模块压缩目标感知信息,我们可以简单地预测具有相同MLP头的四个框坐标如下:

​ $\hat{P_X(x)}=MLP(token_X),X\in \left { T,L,B,R\right } $

在实现过程中,我们在四个预测令牌之间共享MLP的权重。对于预测的目标质量评估,我们表示输出预测令牌,然后使用它来估计用MLP头的目标置信度得分。这些基于令牌的头在很大程度上降低了盒子估计和质量分数估计的复杂性,从而导致了一个更简单和统一的跟踪架构。

Distillation-Based Model Reduction

为了进一步提高MixFormerV2的效率和有效性,我们提出了一个基于蒸馏的模型缩减范式,如图3所示,该范式首先执行密集到稀疏蒸馏以更好地基于标记的预测,然后进行深到浅的蒸馏进行模型剪枝。

在这里插入图片描述

Dense-to-Sparse Distillation

在MixFormerV2中,我们基于预测令牌将目标边界框直接回归到四个随机变量T、L、B、R∈R的分布,分别代表该框的上、左、下、右坐标。

详细地,我们预测了每个坐标的概率密度函数:X ∼ PˆX(x), where X ∈ {T ,L,B,R}. 最终的边界框坐标B可以从回归概率分布上的期望中推导出:

在这里插入图片描述

由于原始MixViT的致密卷积角头预测了二维概率图,即左上角和右下角的联合分布 P T L ( x , y ) P_{TL}(x,y) PTLxy P B R ( x , y ) P_{BR}(x,y) PBRxy,因此通过边缘分布可以很容易地推导出盒坐标分布的一维版本:
在这里插入图片描述

在此,该建模方法可以弥补密角预测与基于稀疏标记的预测之间的差距,即原始MixViT的回归输出可以视为密到稀疏蒸馏的软标签。具体来说,我们使用MixViT的输出 P X P_X PX来监督MixFormerV2的四个坐标估计PˆX,应用kl-散度损失如下:

在这里插入图片描述

通过这种方式,将定位知识从MixViT的致密角头转移到MixFormerV2的基于稀疏标记的角头。

Deep-to-Shallow Distillation

为了进一步提高效率,我们的重点是修剪变压器的主干网。然而,设计一种新的轻量级骨干并不适合快速的单流跟踪。一个新的在线跟踪器的主干通常高度依赖于大规模的预训练来实现良好的性能,这需要大量的计算。因此,我们基于特征模拟和对数蒸馏,直接切割MixFormerV2主干的一些层,如图3:阶段2所示。设 F i S , F j T ∈ R h × w × c F_i^S,F_j^T∈R^{h×w×c} FiSFjTRh×w×c表示学生和教师的特征图,下标表示层的索引。对于对数蒸馏,我们使用kl-散度损失。对于特征模仿,我们应用L2损失:

在这里插入图片描述

其中,M是需要监督的匹配层对的集合。具体地说,我们设计了一个渐进的模型深度剪枝策略。

Progressive Model Depth Pruning

渐进式模型深度修剪的目的是通过减少变压器层数来压缩MixFormerV2主干。由于直接去除一些层可能会导致不一致和不连续,我们探索了一种基于特征和对数蒸馏的模型深度剪枝的渐进方法。具体来说,我们不是让教师从头开始监督一个较小的学生模型,而是让原始的学生模型成为教师模型的完整副本。然后,我们将逐步消除一定层次的学生层,并使剩余的层在教师的监督下模仿教师的表现。这种设计允许学生和教师的初始表示尽可能保持一致,提供了一个平滑的过渡方案,并减少了特征模拟的难度。

形式上,让 x i x_i xi表示MixFormerV2主干的第i层输出,注意块的计算可以表示如下(式中省略层归一化操作)

在这里插入图片描述

设$\xi $是在我们的学生网络中要消除的层集,我们对这些层的权值应用一个衰减率γ:
在这里插入图片描述

在学生网络训练的前m个阶段,γ会以余弦函数的方式从1逐渐减少到0:

在这里插入图片描述

这意味着学生网络中的这些层逐渐被消除,最终转化为身份转换,如图4所示。修剪后的学生模型可以通过简单地去除$\xi $中的层并保留剩余的块来获得.。

Intermediate Teacher

为了蒸馏一个极浅的模型(4层混合MixFormerV2),我们引入了一个中间教师(8层混合FormerV2),用于连接深层教师(12层混合FormerV2)和浅层教师。通常,教师的知识可能太复杂,一个小学生的模式无法学习。因此,我们引入了一个作为助教的中间角色,以缓解极端知识提炼的难度。在这个意义上,我们将教师和学生的知识精馏问题分为几个精馏子问题。

MLP Reduction

如表2所示,影响CPU设备上跟踪器推理延迟的一个关键因素是变压器块中MLP的隐藏特性dim。换句话说,它成为了限制CPU设备实时速度的瓶颈。为了利用这一问题,我们根据所提出的蒸馏范式,进一步修剪了MLP的隐藏模糊度,即特征模拟和日志蒸馏。具体来说,让线性权重的形状在原始模型是 w ∈ R d 1 × d 2 w∈R^{d1×d2} wRd1×d2,和相应的形状修剪学生模型 w ′ ∈ R d 1 ′ × d 2 ′ , d ’ 1 ≤ d 1 , d 2 ′ ≤ d 2 w'∈R^{d'_1×d'_2},d’_1≤d_1,d'_2≤d_2 wRd1×d2d1d1,d2d2,我们将初始化权重学生模型: w ’ = w [ : d 1 ′ : d 2 ′ ] w’=w[:d'_1:d'_2] w=w[d1d2]。然后应用蒸馏监督进行训练,让剪枝后的MLP模拟原始的重MLP。

Training of MixFormerV2

整个训练管道如图3所示,执行密集到稀疏蒸馏,然后深到浅蒸馏,得到最终高效的MixFormerV2跟踪器。然后,我们训练基于MLP的分数头为50个阶段。特别是,对于CPU的实时跟踪,我们使用中间教师基于所提出的蒸馏生成一个较浅的模型(4层MixFormerV2)。此外,我们还使用了所设计的MLP缩减策略来进一步修剪CPU实时跟踪器。对学生S和教师T进行的蒸馏培训的总损失计算为:

在这里插入图片描述

其中,前两项与由地面真实边界盒标签监督的原始混合物前混合物的位置损失完全相同,其余项用于上述蒸馏。

实验

作者做了很多实验,大家有需要看原文吧。

在这里插入图片描述

消融

在这里插入图片描述

可视化

为了探究引入的可学习预测令牌是如何在P-MAM中工作的,我们将图5和图6中的预测-标记到搜索和预测-标记到模板的注意图可视化,其中预测令牌作为查询,其他的作为注意操作的关键/val。从可视化结果中,我们可以得出这四个预测标记对目标的相应部分很敏感,从而产生一个紧凑的对象边界框。我们怀疑,基于致密角头的MixViT-B和我们的完全变压器MixFormerV2-B之间的性能差距在于缺乏整体的目标建模能力。此外,预测标记倾向于在模板和搜索中提取部分目标信息,从而将两者联系起来。

在这里插入图片描述

结论

在本文中,我们提出了一个完全变压器跟踪框架MixFormerV2,由混合标记序列上的标准ViT骨干和简单的MLP头组成,用于盒回归和质量分数估计。我们的MixFormerV2通过去除密集的卷积头和复杂的分数预测模块,简化了跟踪管道。我们还提出了一个基于蒸馏的模型简化的MixFormerV2范式,以进一步提高其效率。我们的MixFormerV2在GPU和CPU平台上的跟踪精度和速度之间获得了很好的权衡。我们希望我们的MixFormerV2能够促进未来高效变压器跟踪器的发展。MixFormerV2通过去除密集的卷积头和复杂的分数预测模块,简化了跟踪管道。我们还提出了一个基于蒸馏的模型简化的MixFormerV2范式,以进一步提高其效率。我们的MixFormerV2在GPU和CPU平台上的跟踪精度和速度之间获得了很好的权衡。我们希望我们的MixFormerV2能够促进未来高效变压器跟踪器的发展。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/795024.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot 配置⽂件

1.配置文件作用 整个项⽬中所有重要的数据都是在配置⽂件中配置的,⽐如: 数据库的连接信息(包含⽤户名和密码的设置);项⽬的启动端⼝;第三⽅系统的调⽤秘钥等信息;⽤于发现和定位问题的普通⽇…

mac 安装 php 与 hyperf 框架依赖的扩展并启动 gptlink 项目

m系列 mac 安装 php 与 hyperf 框架依赖的扩展并启动 gptlink 项目 gptlink 项目是一个前后端一体化的 chatgpt 开源项目 gptlink 项目地址:https://github.com/gptlink/gptlink 安装 php 8.0 版本: brew install php8.0安装完成后提示如下&#xff…

面向对象之_多态_1

目录 一. 多态 多态是什么 二. 多态的构成条件 1. 虚函数 2. 虚函数重写(隐藏) 3. 父类型的引用或者指针调用 4. 多态的特殊情况 1) 子类可以不加 virtual 关键字 2) 协变 三. 关键字 1. virtual 2. final 3. override 四. 多态的原理 1. 虚…

【MST+离线】CF1851 G

Problem - G - Codeforces 题意&#xff1a; Code&#xff1a; #include <bits/stdc.h>#define int long longusing namespace std;const int N2e510; const int mod1e97;int a[N]; struct node {int x, y, val;bool operator < (const node &k) const {return …

疾风计划-程序设计基础-期末考试-05

擀面皮 有一块1x1的方形面团&#xff08;不考虑面团的厚度&#xff09;&#xff0c;其口感值为0。擀面师傅要将其擀成一个N x M&#xff08;纵向长N&#xff0c;横向宽M&#xff09;的面皮。师傅的擀面手法娴熟&#xff0c;每次下手&#xff0c;要么横向擀一下&#xff08;使得…

Ubuntu 20.04下的录屏与视频剪辑软件

ubuntu20.04下的录屏与视频剪辑 一、录屏软件SimpleScreenRecorder安装与使用 1、安装 2、设置录制窗口参数 3、开始录制 二、视频剪辑软件kdenlive的安装 1、安装 2、启动 一、录屏软件SimpleScreenRecorder安装与使用 1、安装 &#xff08;1&#xff09;直接在终端输入以下命…

嵌入式系统中的GPIO控制:从理论到实践与高级应用

本文将探讨嵌入式系统中的GPIO(通用输入输出)控制,着重介绍GPIO的原理和基本用法。我们将使用一个实际的示例项目来演示如何通过编程配置和控制GPIO引脚。将基于ARM Cortex-M微控制器,并使用C语言进行编写。 GPIO是嵌入式系统中最常见且功能最强大的接口之一。它允许硬件工…

【JVM】详解对象的创建过程

文章目录 1、创建对像的几种方式1、new关键字2、反射3、clone4、反序列化 2、创建过程步骤 1、检查类是否已经被加载步骤 2、 为对象分配内存空间1、指针碰撞针对指针碰撞线程不安全&#xff0c;有两种方案&#xff1a; 2、空闲列表选择哪种分配方式 步骤3、将内存空间初始化为…

C语言中的数组(详解)

C语言中的数组&#xff08;详解&#xff09; 一、一维数组1.一维数组的创建2.数组的初始化3.一维数组的使用4.一维数组在内存中的存储二、二维数组1.二维数组的创建2.二维数组的初始化3.二维数组的使用4.二维数组在内存中的存储三、数组越界四、数组作为函数参数1.冒泡排序2.数…

MySQL基础扎实——MySQL中有那些不同的表格

表格类型 在MySQL中&#xff0c;常见的表格类型有以下几种&#xff1a; MyISAM&#xff1a;是MySQL默认的表格类型&#xff0c;具有较高的性能和较小的存储空间占用。但是&#xff0c;MyISAM不支持事务、崩溃恢复和数据行级锁定。 InnoDB&#xff1a;是MySQL提供的一个更强大…

理解基本的Android编程 (1/2)

1、Android概述 Android 是一个开源的&#xff0c;基于 Linux 的移动设备操作系统。 Android开发优势 开放源代码 众多开发者及强大的社区 不断增长的市场 国际化的App集成 低廉的开发成本 更高的成功几率 丰富的开发环境 Android应用程序 Android 应用程序一般使用…

EtherNet/IP转Modbus网关以连接AB PLC

本案例为西门子S7-1200 PLC通过捷米特Modbus转EtherNet/IP网关捷米特JM-EIP-RTU连接AB PLC的配置案例。 网关分别从ETHERNET/IP一侧和MODBUS一侧读写数据&#xff0c;存入各自的缓冲区&#xff0c;网关内部将缓冲区的数据进行交换&#xff0c;从而实现两边数据的传输。 网关做为…

VMware NSX Advanced Load Balancer (NSX ALB) 22.1.4 - 负载均衡平台

VMware NSX Advanced Load Balancer (NSX ALB) 22.1.4 - 负载均衡平台 请访问原文链接&#xff1a;https://sysin.org/blog/vmware-nsx-alb-22/&#xff0c;查看最新版。原创作品&#xff0c;转载请保留出处。 作者主页&#xff1a;sysin.org 负载均衡平台 NSX Advanced Load…

SpringBoot-6

Spring Boot 中的 MVC 支持 Spring Boot 的 MVC 支持主要来最常用的几个注解&#xff0c;包括RestController 用于声明控制器、RequestMapping用于实现方法映射地址、PathVariable 用于接受路径中的参数、RequestParam 用于接受 request 请求中的参数以及RequestBody 用于接受…

echarts 饼图中间添加文字

需求&#xff1a;饼图中间展示总量数据 方法一、设置series对应饼图的label属性 series: [{type: "pie",radius: [55%, 62%],center: ["67%", "50%"],itemStyle: {borderRadius: 10,borderColor: #fff,borderWidth: 2},// 主要代码在这里label: …

docker 的compose安装

1. Docker Compose 环境安装 Docker Compose 是 Docker 的独立产品&#xff0c;因此需要安装 Docker 之后在单独安装 Docker Compose 下载 curl -L https://github.com/docker/compose/releases/download/1.21.1/docker-compose-uname -s-uname -m -o /usr/local/bin/docker…

HBase有写入数据,页面端显示无数据量

写了一个测试类&#xff0c;插入几条数据&#xff0c;测试HBase的数据量。很简单的功能&#xff0c;这就出现问题了。。网页端可以看到&#xff0c;能够看到读写请求&#xff0c;但是不管是内存、还是磁盘&#xff0c;都没有数据。 于是就想到去HDFS查看&#xff0c;也是有数据…

VU3-02

1.一些小点 1.1 npm i -D less (安装less) -D 安装依赖到开发环境中 只在开发中生效 正式打包的时候没有它&#xff0c;只在开发时有效 1.2 父子组件传参 &#xff08;1&#xff09;子组件中定义自己的参数和事件 父传子&#xff1a;const props defineProps(["item&quo…

利用读时建模等数据分析能力,实现网络安全态势感知的落地

摘要&#xff1a;本文提出一种基于鸿鹄数据平台的网络安全态势感知系统&#xff0c;系统借助鸿鹄数据平台读时建模、时序处理、数据搜索等高效灵活的超大数据存储和分析处理能力&#xff0c;支持海量大数据存储、分类、统计到数据分析、关联、预测、判断的网络安全态势感知能力…

MySQL索引优化分析和锁详解

MySQL 1. 索引 1.1 索引的概述 索引&#xff08;index&#xff09;是帮助MySQL高效获取数据的数据结构&#xff08;有序&#xff09; 1.2 索引的优缺点 优点 提高数据检索效率,降低磁盘IO的成本通过索引列对数据进行排序, 降低数据排序的成本,降低CPU的消耗 缺点 索引是需要…