tokenpocket官网下载地址|dino

作者: tokenpocket官网下载地址
2024-03-07 18:13:27

谷歌小恐龙在线 — 免费玩谷歌小恐龙

谷歌小恐龙在线 — 免费玩谷歌小恐龙

zonedino

单人纸牌麻将接龙贪食蛇扫雷2048

拼图

超级马里奥兄弟

珍珠

数墙

数间

二进制

划斜线

不等式

国际象棋

接水管

海苔

LITS

留方

黑猫

信号旗

围棋

蜘蛛纸牌

空当接龙

数织

西洋双陆棋

数方

帐篷和树木

红心大战

数独

搭桥

泡泡射手

俄罗斯方块

数和

数回

简体中文Azərbaycan diliBahasa IndonesiaBahasa MelayuCatalàDanskDeutschEestiEnglishEspañolΕλληνικάFilipinoFrançaisHrvatskiItalianoLatviešuLietuviųMagyarNederlandsNorskPolskiPortuguêsRomânăShqipSlovenčinaSlovenščinaSrpskiSuomiSvenskaTiếng ViệtTürkçeČeštinaБългарскиМакедонскиРусскийУкраїнськаالعربيةفارسیবাংলাעבריתاردوहिन्दीภาษาไทยქართული简体中文繁體中文日本語한국어新游戏

选项

选项

深色主题背景显示计时器音效全屏模式

{$ 'Score' | translate $}: {$ $parent.$ctrl.score $}

{$ 'Best score' | translate $}: {$ $parent.$ctrl.highScore $}

时间:

{$ $parent.$ctrl.timeRemaining $}

关于游戏

谷歌小恐龙游戏

Google开发人员经常以复活节彩蛋的形式为用户带来惊喜。 Chrome Dino(孤独的霸王龙)就是其中之一。互联网出现问题时,浏览器中会出现一个“流浪者”类型的迷你游戏,因此开发人员可以帮助用户使等待信号变亮。您可以从移动设备和计算机(甚至离线)上播放Google Chrome Dino。基本要求是Chrome浏览器。游戏历史Google恐龙游戏于2014年首次出现在Google Chrome浏览器的Canary版本中。开发人员花了几个月的时间来实现这个想法。该游戏是由Google Chrome浏览器传播者Francois Beaufort报道的,该用户引起了用户的注意,称浏览器中存在暴龙,并且正在等待。根据Chrome设计师Sebastien Gabriel的说法,该恐龙被选为主要角色来指代“史前时代”。为了纪念70年代英国摇滚乐队T. Rex的歌手马克·勃兰(Marc Bolan),暴龙收到了代号“勃兰计划”。根据Google的说法,每月Android和Chrome用户启动该游戏2.7亿次。您可能会猜到,该游戏在互联网状况不佳的国家/地区很受欢迎。随着时间的流逝,Chrome恐龙游戏变得如此流行,以至于它从开发人员那里获得了一个永久地址(chrome://dino),使您可以在不断开互联网连接的情况下进行游戏。为了回答这个问题,“跑步者”要花多长时间,他们在Google开玩笑说:“我们设定了一个极限,大约需要一千七百万年。这与地球上的暴龙差不多。”帮助

如何玩谷歌小恐龙

几乎每个Chrome用户都曾经遇到过霸王龙,这就是唯一的霸王龙类型-霸王龙。 T-Rex连同题字“没有Internet连接”出现在页面上。许多人把图片当成玩笑,却没有意识到现在该是在恐龙,翼手龙和仙人掌的陪伴下玩乐的时候了。游戏规则要开始播放,请按空格键。要在移动设备上开始,只需点击屏幕。游戏具有三个键:要使霸王龙蹲伏,请按向下箭头-↓。如果按向上箭头-↑,恐龙将跳跃。您可以使用空格键或↑箭头跳过障碍物。游戏的目标是跳过仙人掌,躲避翼龙并获得更多积分。 400点之后,翼手龙将出现,并且在游戏中大约700时,夜幕降临。另外,速度逐渐增加,并且克服障碍变得更加困难。如果恐龙失败,您将不得不重新开始。规则很简单,但是赢不​​了游戏-没完没了。Chrome Dino作弊代码如果您真的不喜欢与障碍的永恒斗争,那么有个好消息-作弊游戏。在浏览器中打开开发者控制台,并编写代码:Runner.instance_.playingIntro = true。恐龙将能够无障碍运行并获得积分。Runner.instance_.gameOver = function(){}。障碍依然存在,但他们不再害怕霸王龙-他冲向前方。Runner.instance_.setSpeed(100)。如果您认为恐龙运行缓慢,则可以加快速度并获得更多分。Runner.instance_.playingIntro =假。要返回普通模式,请输入此作弊项。您可以依次输入命令或将它们组合以尽可能多地得分。您可能会对结识的成就感到惊讶,但是您知道诚实地比赛会更好。联系我们

隐私

zonepla

Just a moment...

a moment...Enable JavaScript and cookies to conti

DINO: 让目标检测拥抱Transformer - 知乎

DINO: 让目标检测拥抱Transformer - 知乎首发于计算机视觉论文速递切换模式写文章登录/注册DINO: 让目标检测拥抱Transformer李峰在读PhDPR一下我们 @hzhang @隆啊隆 最近刷榜COCO的目标检测模型,DINO(DETR withImproved deNoising anchOr boxes),从三月初霸榜至今(7月),该模型第一次让DETR (DEtection TRansformer)类型的检测器取得了目标检测的SOTA性能,在COCO上取得了63.3 AP的性能,相比之前的SOTA检测器将模型参数和训练数据减少了十倍以上!论文:https://arxiv.org/abs/2203.03605代码:https://github.com/IDEACVR/DINO ,现已开源!主要特性:SOTA性能:在大模型上以相对较小的数据和模型(~1/10相比之前SwinV2)取得了最好的检测结果。在ResNet-50的标准setting下取得了51.3 AP。End2end(端到端可学习):DINO属于DETR类型的检测器,是端到端可学习的,避免了传统检测器许多需要手工设计的模块(如NMS)。Fast converging(收敛快): 在标准的ResNet-50 setting下,使用 5 个尺度特征(5-scale)的 DINO 在 12 个 epoch 中达到 49.4 AP,在 24 个 epoch 中达到 51.3 AP。使用4个尺度特征(4-scale)的DINO达到了了类似的性能并可以以 23 FPS 运行。效果展示La La Land, trained on COCO007, trained on COCOMotivation 出发点Transformer如今被广泛应用于自然语言处理和计算机视觉,并在很多主流的任务上都取得了最好的性能。然而,在目标检测领域,DETR这种基于Transformer的检测器虽然作为一种很有新意的检测器,但却没有作为一种主流的检测器得到广泛运用。例如,几乎所有的模型在PaperWithCode的榜单上都是使用传统的CNN检测头 (如HTC[1])。因此,我们很感兴趣的事就是,DETR这种简洁、端到端可学习的目标检测器,同时还有更强的模型Transformer的加持,能否无法取得更好的表现?答案是肯定的。Background 背景简介在做DINO之前,我们实验室的几个同学完成了DAB-DETR[2] 和DN-DETR[3] ,DINO也是我们几个同学一起接着这两篇工作的一个延续,沿用了这些设计。DAB-DETR是在思考DETR query理解的问题。它直接把DETR的positional query显示地建模为四维的框(x,y,w,h),同时每一层decoder中都会去预测相对偏移量(\Delta x,\Delta y,\Delta w,\Delta h)并去更新检测框,得到一个更加精确的检测框预测(x',y',w',h')=(x,y,w,h)+(\Delta x,\Delta y,\Delta w,\Delta h),动态更新这个检测框并用它来帮助decoder cross-attention来抽取feature。DN-DETR是在思考DETR中的二分图匹配问题,或者说标签分配问题。我们发现DETR中的二分匹配在早期十分不稳定,这会导致优化目标不一致引起收敛缓慢的问题。因此,我们使用一个denoising task直接把带有噪声的真实框输入到decoder中,作为一个shortcut来学习相对偏移,它跳过了匹配过程直接进行学习 (详细理解在我之前的文章)。这两篇文章让我们对DETR的理解加深了很多,同时也把DETR类型模型的效果做到了和传统CNN模型在收敛速度和结果上comparable。如何进一步提高检测器性能和收敛速度?我们可以沿着DAB和DN去进一步思考:DAB让我们意识到query的重要性,那么如何学到更好的或者初始化更好的query?DN引入了去噪训练来稳定标签分配,如何进一步优化标签分配?Method 方法简介Framework为了解决上面提到的问题,DINO进一步提出了3个改进来进行优化,模型架构如上图所示。1.Contrastive denoising(DN)DN的去噪训练里面引入的噪声样本都是正样本来进行学习,然而模型不仅需要学习到如何回归出正样本,还需要意识到如何区分负样本。例如,DINO的decoder中用了900个query,而一张图中一般只会有几个物体,因此绝大部分都负样本。因此,我们设计了训练模型识别负样本的方法,如上图所示,我们对DN进行了改进,不仅要回归真实框,还需要辨别负样本。对于DN的输入当对真实框加入了较大噪声时,我们就认为其为负样本,在去噪训练中会被监督不预测物体。同时,这些负样本恰好是在真实框附近的,因此是相对很难区分难的负样本,让模型得以学习的正负样本的区分问题。2. Mix query selection在大部分detr模型中,query是从数据集中学习出来的,并不和输入图片相关。为了更好得初始化decoder query,deformable detr[4]提出用encoder的dense feature中预测出类别和框,并从这些密集预测中选出一些有意义的来初始化decoder feature。然而,这种方式并没有在后来的工作中得到广泛运用,我们对这种方式进行了一些改进并重新强调其重要性。在query中,我们实际更关心position query,也就是框。同时,从encoder feature中选取的feature作为content query对于检测来说并不是最好的,因为这些feature都是很粗糙的没有经过优化,可能有歧义性。例如对“人”这个类别,选出的feature可能只包含人的一部分或者人周围的物体,并不准确,因为它是grid feature。因此,我们对此进行了改进,让query selection只选择position query,而利用可学习的content query。3. Look forward twice这个方法对decoder的梯度传播进行了一些优化,这里就不展开讲了,可以到我们的paper进一步阅读。总结我们希望DINO能给大家带来一些启示,它具有SOTA的性能,端到端优化的简洁,以及快速收敛、训练和 inference快等多个优点。同时也希望DETR类型的检测器得到更多人的运用,让大家意识到DETR类型的检测器不仅是一种novel的方法,同时也具拥有强健的性能。参考^HTC https://arxiv.org/abs/1901.07518^DAB-DETR https://arxiv.org/abs/2201.12329^DN-DETR https://arxiv.org/pdf/2203.01305.pdf^https://arxiv.org/abs/2010.04159编辑于 2022-07-14 09:18Transformer目标检测计算机视觉​赞同 412​​55 条评论​分享​喜欢​收藏​申请转载​文章被以下专栏收录计算机视觉论文速递欢迎关注微信公众号:CVer人工智能研究欢迎大家关注“人工智能与算法学习”微信公

Self-Supervised Learning 超详细解读 (十三):DINO:视觉 Transformer 的自监督学习 - 知乎

Self-Supervised Learning 超详细解读 (十三):DINO:视觉 Transformer 的自监督学习 - 知乎首发于自监督学习日积月累切换模式写文章登录/注册Self-Supervised Learning 超详细解读 (十三):DINO:视觉 Transformer 的自监督学习科技猛兽​​清华大学 自动化系硕士本系列已授权极市平台,未经允许不得二次转载,如有需要请私信作者,文章持续更新。专栏目录本文目录1 DINO:视觉 Transformer 的自监督学习(来自 Facebook AI Research)1 DINO 论文解读1.1 背景和动机1.2 DINO 算法介绍1.3 DINO 网络架构1.4 DINO 训练策略1.5 ImageNet 实验结果1.6 消融实验结果太长不看版DINO 是视觉 Transformer 做自监督学习的非常经典的工作。DINO 所要探究的问题是:自监督学习算法是否能够为视觉 Transformer 带来新的特性。本文给出了以下的观察:首先,自监督训练得到的 ViT 包含关于图像语义分割的显式信息,这在以往的有监督训练和卷积网络里面都是不具备的。其次,这些特征也是优秀的 k-NN 分类器,ViT-Small 在 ImageNet 上达到了 78.3% 的 top-1 精度。DINO 还研究了自监督训练中的 momentum encoder,multi-crop training 以及在 ViT 中使用小 Patch 的技巧。1 DINO:视觉 Transformer 的自监督学习论文名称:Emerging Properties in Self-Supervised Vision Transformers (ICCV 2021)论文地址:代码地址:1 DINO 论文解读:1.1 背景和动机在 DINO 诞生的时期,视觉 Transformer 与 ConvNet 相比才刚刚具备竞争力,但是那是还没有明显的优势。而且,当时视觉 Transformer 对于计算量要求更高,需要更多的训练数据,且特征没有表现出独特的属性。因此,本文想要探索一下 Transformer 成功的关键是不是来自 Self-supervised Learning。其主要的动机是 Transformer 在 NLP 中成功的主要原因就是 Self-supervised Learning,比如 BERT 的 Masked Language Modeling 或者 GPT 的 Language Modeling。自监督训练会根据上下文创建一个任务,这些任务相比于有监督训练的预测标签来讲,可以提供更加丰富的学习信号。同样的道理,图像的有监督训练是把图像中包含的丰富的视觉信息压缩到只有类别的标签信息。因此,本文研究自监督预训练对 ViT 特征的影响。本文给出了几个有趣的观察,这些观察在以往的有监督训练以及卷积网络里面都没有:自监督训练 ViT 得到的特征显式地包含场景布局,尤其是对象的边界。这个信息一般在自监督训练的视觉 Transformer 的最后一个 Block 得到,如图1所示。这个发现作者认为几乎是所有的自监督学习方法的共同特性。自监督训练的视觉 Transformer 的特征可以在不经过任何微调,线性分类器,以及数据增强的前提下,仅仅使用最简单的 k-NN 分类器,就能实现 78.3% 的 top-1 ImageNet 精度。这个发现作者认为并不是所有自监督方法的共性,而是仅仅当包含一些特殊的组件比如 momentum encoder,或者使用了特殊的数据增强比如 multi-crop augmentation 的时候才会出现。图1: 8×8 Patch 自监督训练的视觉 Transformer 的最后一层的 [CLS] token 的注意力图。本文提出了一种简单的自监督方法,可以理解为一种没有标签的知识蒸馏方法。得到的结果称为 DINO,它通过使用标准 Cross-Entropy Loss 直接预测教师网络的输出来简化自监督训练。1.2 DINO 算法介绍DINO 算法如下图2所示。知识蒸馏是一种学生网络 g_{\theta_s} 匹配给定教师网络 g_{\theta_t} 的学习范式,其参数分别是 \theta_s 和 \theta_t 。给定输入图片 x ,两个网络都输出 K 维上的概率分布,用 P_s 和 P_s 表示。概率 P 是通过使用 Softmax 函数对网络 g 的输出进行归一化来获得的:\begin{equation} P_s(x)^{(i)} = \frac{\exp(g_{\theta_s}(x)^{(i)} / \tau_s)}{\sum_{k=1}^K \exp(g_{\theta_s}(x)^{(k)} / \tau_s)}, \end{equation} \tag{1}给定一个固定的教师网络 g_{\theta_t} ,通过最小化学生网络 \theta_s 和教师网络 \theta_t 的参数的交叉熵损失来学习匹配这些分布:\begin{equation} \min_{\theta_s} H(P_t(x), P_s(x)), \end{equation} \tag{2}式中, H(a, b) = - a \log b 。首先,作者使用了多种数据增强策略得到不同的试图,从给定的图像中生成一组不同视图 V 。 V 这个集合包含两个全局视图 x^g_1 和 x^g_2 以及几个分辨率较小的局部视图。所有局部视图输入给学生模型,全局视图输入给教师模型。然后使用下面的损失函数优化:\begin{equation} \min_{\theta_s} \sum_{x \in \{x^{g}_1, x^{g}_2\}} \quad \sum_{\substack{x' \in V\\x'\neq \, x}} \quad H(P_t(x), P_s(x')). \end{equation} \tag{2}这种损失是通用的,可以用于任意数量的视图 (公式中是 2)。分辨率为 224×224 的2个全局视图覆盖原始图像的大 (比如大于 50%) 部分区域,分辨率为 96×96 的局部视图仅仅可以覆盖原始图像的小区域 (比如小于 50%)。教师网络和学生网络共享相同的架构 g ,其参数分别是 \theta_s 和 \theta_t 。作者通过使用随机梯度下降最小化方程来学习参数 \theta_s :如图2所示是 DINO 的算法流程,一张图片 x 的两个 View x_1,x_2 分别输入给学生模型 g_{\theta_s} 和教师模型 g_{\theta_t}。两个网络具有相同的架构但参数不同。教师网络的输出通过一个 Batch 的平均值进行 centering 操作,每个网络输出一个 K 维的特征,并使用 Softmax 进行归一化。然后使用交叉熵损失作为目标函数计算学生模型和教师模型之间的相似度。在教师模型上使用停止梯度 (stop-gradient, sg) 算子来阻断梯度的传播,只把梯度传给学生模型使其更新参数。教师模型使用学生模型的 EMA 进行更新。图2:DINO 算法流程DINO 算法伪代码如下。# gs, gt: student and teacher networks

# C: center (K)

# tps, tpt: student and teacher temperatures

# l, m: network and center momentum rates

gt.params = gs.params

for x in loader: # load a minibatch x with n samples

x1, x2 = augment(x), augment(x) # random views

s1, s2 = gs(x1), gs(x2) # student output n-by-K

t1, t2 = gt(x1), gt(x2) # teacher output n-by-K

loss = H(t1, s2)/2 + H(t2, s1)/2

loss.backward() # back-propagate

# student, teacher and center updates

update(gs) # SGD

gt.params = l*gt.params + (1-l)*gs.params

C = m*C + (1-m)*cat([t1, t2]).mean(dim=0)

def H(t, s):

t = t.detach() # stop gradient

s = softmax(s / tps, dim=1)

t = softmax((t - C) / tpt, dim=1) # center + sharpen

return - (t * log(s)).sum(dim=1).mean()DINO 对于教师模型,不像知识蒸馏方法那样直接给定参数,而是从学生网络中进行迭代构建。而且作者观察到,在整个训练过程中,教师模型比学生模型有更好的表现,因此,通过提供更高质量的目标特征来指导学生的训练。1.3 DINO 网络架构DINO 的模型 g 是由一个 Backbone f (ResNet 或者 ViT) 和一个 Projection head h 组成。Projection head h 就是一个3层的 MLP。DINO 不使用 BYOL 中的 predictor,使得教师和学生的架构完全一致。而且,作者注意到与标准 ConvNet 不同,ViT 架构默认不使用批量归一化 (BN)。因此,当将 DINO 应用于 ViT 时,我们也在投影头中不使用任何 BN,使系统完全达到 BN-free 的架构。通过下面这行代码:t = softmax((t - C) / tpt, dim=1) # center + sharpen可以发现,对于教师模型的操作只有 center + sharpen。center 可以稳定 momentum 带来的影响,但是会使得教师模型的输出趋近于均匀分布,而 sharpen 正好可以解决这个问题。center 的超参数 c 可以通过下式来计算:\begin{equation} c \leftarrow m c + (1-m) \frac{1}{B} \sum_{i=1}^B g_{\theta_t}(x_i), \end{equation} \tag{3}其中, m 是比例参数。sharpen 是通过把知识蒸馏中的温度系数 \tau_t 设置得比较低来实现。1.4 DINO 训练策略DINO 中的 ViT 架构使用 DeiT 的实现,Patch Size 使用8或者16。DINO 也像 ViT 那样给模型加了一个 [CLS] token,即使它没有附加到任何标签或监督信息。 Self-attention 机制更新这个 token。在评估时,除了 linear evaluation 和 finetuning evaluation 之外,作者还额外尝试了 k-NN evaluation。作者冻结了预训练模型,然后存储下游任务训练数据的特征。1.5 ImageNet 实验结果如下图3所示是跨方法层面和跨架构层面的 ImageNet 实验结果对比。ViT-S 的选择的动机是它与 ResNet-50 沿几个轴的相似性:参数数量 (21M vs 23M),吞吐量 (1237imgs/sec VS 1007 imgs/sec) 和 ImageNet 上的有监督训练的性能 (79.3% VS 79.8%)。首先,作者观察到 DINO 在 ResNet-50 上的表现与最先进的几个方法相当,验证了 DINO 作为标准自监督学习方法的性能。当切换到 ViT 架构时,DINO 在线性分类方面优于 BYOL、MoCov2 和 SwAV +3.5%,在 k-NN 评估中优于 +7.9%。更令人惊讶的是,使用简单的 k-NN 分类器的性能几乎与 Linear Classifier 相当 (74.5% 和 77.0%)。值得一提的是这个属性仅在使用带有 ViT 架构的 DINO 时出现,并且不会出现在其他现有的自监督方法和 ResNet-50 中。图3:ImageNet 实验结果1.6 消融实验结果不同组件的作用作者在下图4中报告了当添加或删除组件时的不同模型的性能。首先可以观察到,在没有 Momentum 的情况下,DINO 框架不起作用。SK 操作也可以避免坍塌的现象。此外,有了 Momentum 的情况下,使用 SK 几乎没有影响。比较第 3 行和 9 行:突出了 Momentum 对性能提升的重要性。比较第 4 行和 5 行:DINO 中的 Multi-crop 训练和 CE Loss 是获得良好特征的重要组成部分。比较第 6 行:向学生网络添加 Predictor 几乎没有影响。图4:不同组件的作用Patch Size 的作用在下图5中,作者比较了不同 Patch size (16×16, 8×8 和 5×5) 的 ViT 模型的 k-NN 分类性能。所有模型都训练了 300 个 Epoch。可以观察到,当减小 Patch size 的大小时,性能会大大提高。有趣的是,在不增加额外参数的情况下可以大大提高性能。然而,使用较小 Patch size 的性能增益是以牺牲吞吐量为代价的。比如,当使用 5×5 的 Patch size 时,吞吐量下降到 44 im/s,而 8×8 Patch size 的吞吐量下降到 180 im/s。教师模型训练策略的作用如下图5所示作者比较了不同的教师模型训练策略,比如:Previous epoch:使用来自前一个 Epoch 的学生模型作为教师模型。Previous iter:使用来自前一个 Iteration 的学生模型作为教师模型。Student copy:使用学生模型作为教师模型。图5:教师模型训练策略的作用可以观察到使用来自前一个 Epoch 的教师模型得到的性能并不会崩溃,且与 MoCo-v2 或 BYOL 等现有框架提供有竞争力的 k-NN 评估性能。避免坍塌作者从交叉熵分解的角度来验证实验现象:交叉熵 H(P_t,P_s) 可以被分解为熵 h(P_t) 和 KL 散度 D_{KL}(P_t|P_s) ,如下是所示:\begin{align} H(P_t,P_s)&=-\sum_{i}{P_t\log P_s}\\&=-\sum_{i}{P_t\log P_t}-\sum_{i}{P_t\log \frac{P_s}{P_t}}\\ &=-\sum_{i}{P_t\log P_t}+\sum_{i}{P_t\log \frac{P_t}{P_s}}\\ &=h(P_t)+D_{KL}(P_t|P_s) \end{align} \tag{4}KL 散度 D_{KL}(P_t|P_s) 为0意味着 constant output,如下图6所示是教师输出的熵 h(P_t) 和 KL 散度 D_{KL}(P_t|P_s) 在训练过程中的演变。可以发现,当只使用 sharpening 或者 centering 策略时,KL 散度都直接为0,代表崩溃。当只使用 sharpening 时,教师输出的熵为0;当只使用 centering 时,教师输出的熵为 -\log 1/K 。表明这两种操作都会导致不同形式的崩溃。图6:坍塌现象研究编辑于 2023-12-19 11:21・IP 属地中国香港计算机视觉深度学习(Deep Learning)Transformer​赞同 56​​1 条评论​分享​喜欢​收藏​申请转载​文章被以下专栏收录自监督学习日积月累自监督学习工

恐龙游戏 T-Rex - Chrome 在线恐龙游戏

恐龙游戏 T-Rex - Chrome 在线恐龙游戏

霸王龙 Chrome 恐龙游戏

您完全可以在任何浏览器和任何移动设备上玩 google dino。 要开始在浏览器中播放,请按空格键或向上箭头。 按下向下箭头,霸王龙就会坐下。 要开始在您的移动设备上玩游戏,只需触摸屏幕即可。

谢谢 (3882)

在移动设备上播放

添加到书签

打开移动设备上的摄像头并将其对准二维码。 单击二维码上的框架,链接将在您的移动设备上打开。

按键盘上的“CTRL+D”将页面添加到书签。

恐龙游戏是一款有趣的离线游戏,在 Chrome 浏览器中有卡通霸王龙,它想在跨栏比赛中创造最大的记录。 帮助恐龙实现他的梦想,因为没有你他无法应付。 在沙漠中开始一场比赛,跳过仙人掌,创造令人难以置信的记录并享受乐趣。

跳跃的恐龙小游戏首次出现在名为 Canary 的流行浏览器 Google Chrome 版本中。 当您的 PC 或其他设备上没有互联网时,打开带有此离线娱乐的页面。 在页面上,流行的恐龙 T-Rex 只是站着不动。 这将一直持续到您单击“空格”按钮之前。 之后恐龙将开始奔跑和跳跃。 因此,并非所有用户都知道这款迷人的游戏。 这是霸王龙的唯一物种——霸王龙的名字。 其名字的拉丁文翻译为王。

要与我们的英雄一起跳跃,请按空格键或单击屏幕(如果您没有 PC,而是其他设备,例如手机或平板电脑)。

比赛开始后,霸王龙会开始奔跑。 要跳过仙人掌,您需要再次点击“空格”。

恐龙游戏的速度会逐渐加快,仙人掌会更难跳过。 当您获得 400 分时,会飞的恐龙 - 翼手龙 - 将出现在游戏中。

您也可以跳过它们,或者如果您在电脑上玩游戏,您可以点击“向下”按钮弯下腰。

游戏是无止境的。 不要试图坚持到底。

关于 Chrome Dino 的热门问题

如何访问 Chrome 恐龙?

访问 Chrome Dino 游戏是一个简单的过程。 方法如下: 在您的计算机或移动设备上打开 Google Chrome 浏览器。 断开互联网连接或尝试在离线时加载网站。 您可以手动关闭设备上的互联网连接以触发此操作。 将出现一个离线错误页面,其中显示消息“没有互联网连接”。 您会在顶部看到一个小恐龙图标。 要开始游戏,如果您使用的是计算机,只需按键盘上的空格键即可。 如果您使用的是移动设备,只需点击恐龙即可。 游戏将开始,恐龙将开始奔跑。 你的任务是通过跳跃(按空格键或点击屏幕)和躲避(计算机用户按键盘上的向下箭头键)来避开仙人掌和鸟类。 如果你想玩 在线恐龙游戏,您可以通过在 Chrome 地址栏中输入 chrome://dino 并按 Enter 直接访问它。

Chrome Dino 游戏中的 99999 之后会发生什么?

Google Chrome Dino 游戏是一款无尽的跑酷游戏,但得分并不是完全无穷无尽的。 当您的分数达到 99999 时,分数计数器就会达到最大值。 这意味着游戏不会停止,但你的分数不会再增加。这个分数有一个有趣的小错误:如果你设法达到 99999 分,翼手龙(飞行的敌人 游戏)可能会由于错误而从游戏中消失,让游戏变得更容易,因为你只需要躲开仙人掌。请记住,达到 99999 的分数是一项非常具有挑战性的壮举, 随着游戏速度的加快,您玩的时间越长,难度就会越大。 获得如此高的分数需要大量的练习和耐心。

没有互联网时,Chrome 游戏是什么?

在没有互联网时出现的 Chrome 游戏是一种简单而有趣的无尽跑酷游戏,称为“Chrome Dino Game”或“T-Rex Runner”。游戏开始,恐龙 开始穿越沙漠景观。游戏的目的是尽可能长时间地避开障碍物,特别是仙人掌和翼手龙。 您可以通过按空格键(或点击您的移动设备)让恐龙跳过这些障碍物,500 分后,恐龙还可以通过按向下箭头键躲到翼手龙下面。游戏 没有终点——你玩的时间越长,它就会变得越快,越难,它会一直持续到恐龙最终遇到障碍。 然后游戏结束并显示您的分数,准备好在您下次等待互联网连接恢复时尝试并击败它。

如何在 Chrome 上玩霸王龙?

在 Google Chrome 中玩 T-Rex 游戏(或 Chrome Dino 游戏)非常简单。 使用空格键让恐龙跳过障碍物(仙人掌),使用向下箭头键让恐龙躲过障碍物(翼手龙)。游戏一直持续到您遇到障碍物为止。 之后,您可以再次按空格键重新开始。如果您想在仍然连接到互联网的情况下访问游戏,您可以通过在地址栏中输入 chrome-dino.com 来实现,然后 按回车。 游戏将出现,您可以按空格键开始游戏。

©2023 Chrome-Dino.com.

Languages

DINO GAME - 免费在线玩! | Poki

DINO GAME - 免费在线玩! | Poki

你今天要玩什么呢?

Dino Game制作方: Chrome UX767.9K喜欢199.3K不喜欢报告错误全屏短暂休息后,我们就会回来准备中……We Become What We BeholdLevel DevilStickman HookZooplopRainbow ObbyMonkey MartMaze: Path of LightSushi PartyMurderHypersnakeTemple Run 2Crazy CarsUp TogetherCrossy RoadStickman Climb 2Stickman EscapeGobbleVectaria.ioSword MastersWar of SticksApple Knight: Mini DungeonsCombat ReloadedMicroWarsLurkers.ioFootball LegendsCat Coffee ShopLa Petite AvrilSupernovaMoto X3MParkour RaceStickman Dragon FightFish Eat FishShovel PirateCats DropBrain Test 4: Tricky FriendsFish SquadCircus ContestJumping ShellDriftwaveSky MadMechabotsPixel PuzzlesMummy's Path DeluxeSides of GravitySamsaraDreadhead ParkourRodeo StampedeHills of SteelOoze OdysseyZombie Dying: Survival DaysStickman Fight: RagdollFriday Night Funkin'Cozy Room DesignTwo Button BounceSnake SolverLongcatRio Rex女生小游戏恐龙游戏键盘游戏手机游戏跑步游戏超酷游戏技巧游戏经典游戏广告广告广告游戏技巧游戏Dino GameChrome UX4.2967,234 次投票在这里你可以玩Dino Game. Dino Game是我们的精选技巧游戏之一。技巧游戏恐龙游戏经典游戏跑步游戏超酷游戏键盘游戏手机游戏Let the world play⚙️ Cookies关于我们开发者职位Poki Kids隐私声明Cookie声明使用条款常见问题解答联系Poki v5.12.0+416208584dfff765f41e3dc0e4d3837559219e18 - SDK v2

论文导读:DINO -自监督视觉Transformers - 知乎

论文导读:DINO -自监督视觉Transformers - 知乎首发于deephub深度学习切换模式写文章登录/注册论文导读:DINO -自监督视觉TransformersdeephubAI方向文章,看头像就知道,这里都是"干"货在本篇文章中我们将探讨DINO 论文的工作原理以及分析它是如何工作的。 我试图让文章保持简单,这样即使是先验知识很少的读者也能够看懂。一般来说ViT 并不像某些人预期的那样有吸引力:因为它们需要很多的计算资源,并且需要更多的训练数据,最主要的是它们也没有表现出独特的特点。 Caron 等人在 2020 年发表的论文“Emerging Properties in Self-Supervised Vision Transformers”中。 旨在研究为什么有监督的 ViT 还没有起飞,以及是否可以通过对它们应用自监督学习方法来改变这种情况。传统上的计算机视觉模型,例如:卷积神经网络,总是在人工监督下进行训练。 这意味着人类必须为训练数据创建标签,例如告诉模型图像中有一只狗。自监督学习允许它在没有任何标签的情况下训练模型。 因此,在计算机视觉任务的情况下,只有图像被提供给模型,网络本身学会理解周围的视觉世界,这是自监督学习的终极目标。事实证明,将自监督应用于 Vision Transformers 会得到一下我们期望的特性:该模型学习从语义上分割对象并创建边界。 并且该信息可在自注意力模块中访问。 我们将在后面讨论什么是自注意力。来自DINO的注意力热图显示了该模型如何令人印象深刻地聚焦于图像最相关的部分。这也作为场景[1]的无监督语义分割学习到的特征表示,即模型的输出向量,对于执行聚类非常有用。 此外,应用 k-最近邻分类器会产生一些令人印象深刻的分类结果DINO以自监督的方式学习的簇。这在训练过程中没有使用任何标签。[2]DINO是如何工作的DINO 采用一种称为自蒸馏的方法。 这也是名字的由来:没有标签的自蒸馏自蒸馏创造了一个教师和一个学生网络。 这两个网络都具有完全相同的模型架构。 DINO 的一大优势在于在这一点上完全灵活:可以使用 新兴的ViT 或 传统的卷积都是可以的,例如流行的 ResNet-50。DINO 训练过程的简化概述: 一张图片被裁剪成两种尺寸,然后输入学生和教师网络。 对教师的输出应用居中操作,并且两个输出都通过 softmax 层归一化整理。 [2]为了交叉熵作为损失函数为模型反向传播提供更新参数的策略。两个 softmax 输出都传递到损失函数中,使用随机梯度下降 (SGD) 执行反向传播。在这里的反向传播是通过学生网络执行的,这时教师的权重尚未更新的原因。 为了更新教师模型,DINO 对学生权重使用指数移动平均 (EMA),将学生网络的模型参数传输到教师网络。 [2]这就是训练过程的一个概述。 在我们看一些结果之前,让我们快速看看这篇论文使用了哪些模型。正如我们将在结果中看到的,DINO 与 ViT 一起使用时效果最佳,特别是 ViT-B/8 效果最佳。 但是如前所述,DINO 也可以与传统的卷积一起使用。结果为了应用该模型,作者以 3 层多层感知器 (MLP) 的形式在transformer 顶部添加了一个投影头。 虽然它们呈现了一系列不同的结果,但本篇文章专注于我认为最相关的结果。ImageNet 上的线性和KNN分类在我看来,最相关的是将 KNN分类器应用于训练特征表示时的分类性能。 如本文的介绍所示,DINO 对不同类别的聚类效果非常好。 又是这张图:这种巨大的分离是清晰可见的,代表相似物体的簇彼此更近。这意味着在没有标签监督的情况下,只通过自监督的预训练,就可以实现高准确率的分类。此外,DINO似乎可以很好地进行线性分类。要了解更多细节,请参阅这个表,作者将DINO与其他最先进的自监督前训练方法进行了比较:与其他自监督的训练方法的表现比较。对于ImageNet[1]上的线性和k-NN分类任务,DINO优于所有这些方法高准确率的注意力和完全无监督的语义分割在视觉上最令人印象深刻的当然是由自注意机制产生的分割结果。就像人类一样,模型关注场景中的相关对象,即使遮挡了部分图像结果还是一样的。虽然在本文中没有进行定量评估,但这种可视化提供了对模型工作过程的更透明解释,并增加了对其能力的可解释性。总结在本文中简单介绍了 DINO的工作原理,这是一篇利用 Vision Transformers 中自监督学习的论文。 虽然我希望这个文章能让你对这篇论文有一个很好的初步了解,但还有很多东西要发现。 因此,建议自己阅读这篇论文。引用[1] https://ai.facebook.com/blog/dino-paws-computer-vision-with-self-supervised-transformers-and-10x-more-efficient-training/[2] https://arxiv.org/pdf/2104.14294.pdf本文作者:Leon Sick发布于 2021-12-02 09:49Transformer自监督学习计算机视觉​赞同 32​​2 条评论​分享​喜欢​收藏​申请转载​文章被以下专栏收录deephub深度学习提供专业的CV NLP和数据挖

DINO 论文精度,并解析其模型结构 & DETR 的变体_dino模型-CSDN博客

>

DINO 论文精度,并解析其模型结构 & DETR 的变体_dino模型-CSDN博客

DINO 论文精度,并解析其模型结构 & DETR 的变体

Flying Bulldog

已于 2022-07-25 23:31:56 修改

阅读量1.6w

收藏

165

点赞数

41

分类专栏:

论文精读_解析模型结构

变形金刚 Transformer

文章标签:

深度学习

人工智能

计算机视觉

transformer

目标检测

于 2022-07-25 23:30:16 首次发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/qq_54185421/article/details/125949343

版权

论文精读_解析模型结构

同时被 2 个专栏收录

32 篇文章

30 订阅

订阅专栏

变形金刚 Transformer

16 篇文章

16 订阅

订阅专栏

截止2022年7月25日,DINO是目标检测的SOTA。

本人根据源码的复现感受和DINO论文的精读心得,撰写本篇博客,希望对你有所帮助。

目录

一、摘要

二、结论

三、解析DINO模型

(1)概述DINO模型借鉴了前人的那些工作

(2)概述DINO模型

四、创新方法

(1)什么是 Contrastive DeNoising Training ?

(2)什么是 Mixed Query Selection ?

(3)什么是 Look Forward Twice ?

五、实验方面

(1)数据集和网络骨干

(2)实现细节

六、熠熠生辉的数据可视化

一、摘要

我们推出DINO (DETR with Improved deNoising anchOr boxes),一款最先进的端到端对象检测器。DINO通过使用:

对比的去噪训练方式;用于锚点初始化的混合查询选择方法;用于框预测的向前两次方案;本文章会对以上三种创新方法逐点击破。

在性能和效率上改进了以前的DETR模型。使用ResNet - 50主干和多尺度特征,DINO在12个epoch获得49.4 AP,在24个epoch获得51.3 AP( 收敛极快!),与之前的DN-DETR模型( 最好的DETR-like模型 )相比,分别获得+ 6.0 AP和+ 2.7 AP的显著提升。DINO在模型规模和数据规模上均表现良好。在没有铃铛和口哨的情况下,经过在带有SwinL主干的Objects365数据集上的预训练,DINO在COCO val2017 ( 63.2AP )和test - dev ( 63.3AP )上都获得了最好的结果。与排行榜上的其他模型相比,DINO显著减少了模型大小和预训练数据大小,同时取得了更好的效果。

Keywords: Object Detection; Detection Transformer; End-to-End Detector

论文链接:https://arxiv.org/abs/2203.03605

源码链接:https://github.com/IDEACVR/DINO

补充: 名词 + ‘-like’ >>> 形容词,意思是“似…的,像...样的,喜欢...的” 

 二、结论

在本文中,我们提出了一种具有对比去噪训练、混合查询选择和两次前瞻的强端到端Transformer检测器DINO,显著提高了训练效率和最终检测性能。因此,在COCO val2017上,在使用多尺度特征的12阶和36阶场景中,DINO都优于之前所有基于ResNet - 50的模型。受改进的启发,我们进一步探索在更大的数据集上训练具有更强骨干的DINO,并在COCO 2017 test-dev上实现了最新技术63.3 AP。这个结果建立了类似DETR的模型作为一个主流的检测框架,不仅因为它新颖的端到端检测优化,而且因为它优越的性能。

作者在开篇处便炫耀了SOTA结果,如图1 所示:

图1 DINO在COCO数据集上与其他检测模型的比较

图1 (a) 与ResNet - 50主干w . r . t .训练历元模型的比较。其中,DC5标记的模型使用的是扩展的更大分辨率的特征图,其他模型使用多尺度特征。图1 (b)预训练数据规模和模型规模与SOTA模型的比较。SOTA型号来自COCO test-dev排行榜。在图例中,我们列出了骨干预训练数据大小(第一个数字)和检测预训练数据大小(第二个数字)。

总结:DINO模型经过很少的epoch便达到了其他模型无法企及的精度,并且预训练数据规模和模型规模也比其他的模型精简。

三、解析DINO模型

(1)概述DINO模型借鉴了前人的那些工作

正如在Conditional DETR [ 25 ]和DAB - DETR [ 21 ]中所研究的那样,DETR [ 3 ]中的查询由两部分组成:位置部分和内容部分,在本文中称为位置查询和内容查询。DAB - DETR [ 21 ]将DETR中的每个位置查询显式地表示为一个4D锚点框( x , y , w , h),其中x和y是框的中心坐标,w和h对应其宽度和高度。这种显式的锚框格式使得在解码器中动态地逐层细化锚框变得很容易。

怎样解决DETR收敛慢的问题?

DN-DETR [ 17 ]引入一种去噪( DN )训练方法来加速DETR - like模型的训练收敛。这表明DETR中的慢收敛问题是由二分匹配的不稳定性引起的。为了缓解这个问题,DN - DETR建议在Transformer解码器中添加带噪的 ground-truth (GT) 标签和框,并训练模型来重建地面实况。添加的噪声   受约束于 ,其中 ( x , y , w , h) 表示 GT 框,λ 是一个超参数,用于控制噪声的大小。由于DN - DETR遵循DAB - DETR将解码器查询视为锚点,因此由于 λ 通常较小,一个带噪声的GT框可以视为一个特殊的锚点,其附近有一个GT框。除了原始的DETR查询外,DN - DETR在解码器中添加了一个DN部分,该部分将有噪声的GT标签和框输入到解码器中,以提供一个辅助的DN损失。DN损失有效地稳定和加快了DETR的训练,并且可以插入到任何DETR模型中。

注释:λ :虽然 DN - DETR 模型使用 λ1 和 λ2 表示中心偏移和 box 缩放的噪声尺度,但设置了 λ1 = λ2。为了简单起见,本文用 λ 代替λ1和λ2。

Deformable DETR [ 41 ]是另一个早期加快DETR收敛速度的工作。为了计算可变形注意力,它引入了参考点的概念,使得可变形注意力能够关注到参考点周围的一个小的关键采样点集。参考点的概念使得开发几种技术来进一步提高DETR性能成为可能。第一种技术是“two-stage”,它直接从编码器中选择特征和参考框作为解码器的输入。第二种技术是迭代绑定框精化,在两个解码器层之间进行仔细的梯度分离设计。在我们的论文中,我们把“two-stage”和梯度分离技术分别称为 “query selection” 和 "look forward once"。

在DAB - DETR和DN - DETR之后,DINO将位置查询表示为动态锚框,并使用额外的DN损失进行训练。值得注意的是,DN - DETR还采用了Deformable DETR的一些技术来实现更好的性能,包括它的可变形注意力机制和层参数更新中的 "向前看一次" 实现。DINO进一步采用了Deformable DETR中的查询选择思想来更好地初始化位置查询。基于这个强大的基线,DINO引入了三种新方法来进一步提高检测性能,这将在Sec中描述。3.3,Sec。3 . 4和Sec .分别为3.5。

(2)概述DINO模型

如图2 所示,我们的改进主要体现在Transformer编码器和解码器上。最后一层中的 top-K 编码器特性被选中来初始化Transformer解码器的位置查询( positional queries ),而内容查询( content queries )则作为可学习的参数保留。我们的解码器还包含一个具有正负样本的对比去噪( Contrastive DeNoising: CDN )部分。

关键词解释:

Flatten:平铺

Matching:匹配

Pos Neg:正负样本

Init Anchors:初始化锚框

CDN:Contrastive DeNoising

Position Embeddings:位置嵌入

Multi-Scale Feature:多尺度特征

Encodor Layers × N:N个编码层的编码器

Decodor Layers × N:N个解码层的解码器

GT + Noise:带有噪声的 Ground Truth标签框

Learning Content Queries:可学习的内容查询

Transformer 中的 K、V、Q:Key、Value、Query

图2 DINO模型的框架

作为一个类似DETR的模型,DINO是一个端到端的架构,包含一个骨干、一个多层Transformer 编码器、一个多层Transformer解码器和多个预测头。整体 pipeline 如图2 所示。

DINO模型的传播过程,以及部分模块的改进:

给定一幅图像,我们用ResNet或Swin Transformer等主干提取多尺度特征。然后用相应的位置嵌入输入到 Transformer 编码器中,进行特征增强。在使用编码器层进行特征增强之后,我们提出了一种新的混合查询选择策略( mixed query selection strategy )来初始化锚点作为解码器的位置查询。注意,这种策略并不初始化内容查询,而是让它们具有可学习性。利用初始化的 anchors 和可学习的内容查询,我们使用可变形注意力[ 41 ]来组合编码器输出的特征,并逐层更新查询。最终的输出由精炼的锚框和精炼的内容特征预测的分类结果形成。与DN - DETR一样,我们有一个额外的DN分支来进行去噪训练。除了标准的DN方法,我们提出了一种新的对比去噪训练方法( contrastive denoising training approach ),这种训练方法通过考虑硬负样本实现。为了充分利用后面层的精化盒子信息来帮助优化其相邻的早期层的参数,提出了一种新的向前两次的方法( look forward twice method )来传递相邻层之间的梯度。

四、创新方法

(1)什么是 Contrastive DeNoising Training ?

DN - DETR在稳定训练和加速收敛方面非常有效。在DN查询的帮助下,它学习基于附近有GT框的锚进行预测。然而,它缺乏对附近没有对象的锚预测" no object "的能力。为了解决这个问题,我们提出了一种对比去噪( Contrastive DeNoising:CDN )方法来拒绝无用的锚。

图3 CDN组的结构和正反例的演示

如上图所示,虽然正例和反例都是4D锚点,可以表示为4D空间中的点,但为了简单起见,我们在同心方格上将它们表示为2D空间中的点。假设正方形中心是一个GT盒子,则:

内方形内的点被视为正例。内方形和外方形之间的点被视为负例。 

a) CDN 实现:DN - DETR有一个超参数 λ 来控制噪声尺度。生成的噪声不大于 λ,因为DN - DETR希望模型从中等噪声的查询中重构出真实数据( GT )。在我们的方法中,我们有两个超参数 λ1 和 λ2,其中 λ1 < λ2 。如图3 中的同心方框所示,我们生成两种类型的CDN查询:正查询和负查询。内部正方形内的正查询具有小于 λ1 的噪声规模,预计将重构正查询对应的背景真值框。内部和外部方块之间的负查询具有大于 λ1 和小于 λ2 的噪声尺度,负查询被期待预言 'no object'。我们通常采用较小的 λ2,因为更接近GT盒的硬负样本更有助于提高性能 。(注意  的选取)

如图3 所示,每个CDN组都有一组正查询和负查询。如果一幅图像有n个GT框,一个CDN组将有2 × n个查询,每个GT框产生一个正查询和一个负查询。与DN - DETR类似,我们也使用多个CDN组来提高我们方法的有效性。

b) 损失函数的选取:

BOX 回归的重构损失( reconstruction loss )为  和 GIOU 损失,用于分类的焦点损失《Focal loss for dense object detection》。将负样本归类为背景的损失也是Focal loss。注:Focal loss 是由何凯明提出的解决样本不均衡问题的损失函数 。

c) 分析CDN方法为什么有效:因为它可以抑制混淆,并选择高质量的锚(查询)来预测边界框。当多个锚点靠近一个物体时,会产生混淆。在这种情况下,模型很难决定选择哪个锚。这种混乱可能导致两个问题。

第一个问题是重复的预测。虽然DETR - like模型可以借助基于集合的损失和自注意力来抑制重复框《DETR:End-to-end object detection with transformers》,但是这种能力是有限的。如图8 左图所示,当用DN查询替换我们的CDN查询时,箭头所指的男孩有3个重复预测。通过CDN查询,我们的模型可以区分锚点之间的细微差别,避免重复预测,如图8右图所示。第二个问题是,可能会选择离 GT box 更远的不需要的锚。尽管去噪训练改进了模型选择邻近锚点的能力,但CDN通过教导模型拒绝更远的锚点,进一步提升了这种能力。

图8 左图是使用 DN 查询训练的模型的检测结果,右图是 CDN 的结果。在左图像中,箭头指向的男孩有3个重复的边界框。为了清晰起见,我们只展示了类 "person" 的 box。

d) 验证CDN的有效性:为了证明CDN的有效性,我们定义了平均Top - K距离( Average Top-K Distance,ATD ( k ) ),并在匹配部分使用它来评估锚点离目标GT框的距离。与DETR一样,每个锚对应一个预测,该预测可能与一个GT框或背景匹配。在这里我们只考虑那些与GT box匹配。假设在一个验证集中有N个GT绑定框( b0,b2,..,bN-1 ),其中 。对于每个 ,我们可以找到它对应的锚并将其表示为 。 是解码器的初始锚框,其在匹配期间将最后一个解码器层分配给  之后的精化框。 Then we have:

其中是bi和ai之间的距离,是一个返回 x 中 k 个最大元素的集合的函数。我们选择 top - K 元素的原因是,当GT框与更远的锚匹配时,混淆问题更有可能发生。如图4 ( a )和( b )所示,DN足以选择一个好的锚整体。然而,CDN为小对象找到更好的锚。图4 ( c )展示了CDN查询在12个epoch上对小对象的DN查询在ResNet - 50和多尺度特征上 +1.3 AP 的性能提升。

图4 ( a )及( b ):分别在所有物体及小型物体上 ATD( 100 );( c ):小物体上的AP。 

(2)什么是 Mixed Query Selection ?

图5 三种不同查询初始化方法的比较(注意图中的英文名词)

术语 "static" 是指在推理中,对于不同的图像,它们将保持相同。对于这些静态( static )查询,一种常见的实现方式是使其具有可学习性。 

Static Queries:在DETR 和DN - DETR 中,解码器查询是静态嵌入,不需要从单个图像中提取任何编码器特征,如图5 ( a )所示。他们直接从训练数据中学习 anchors (在DN - DETR和DAB - DETR中)或位置查询( in DETR ),并将所有内容查询设置为0向量。

Pure Query Selection:Deformable DETR 同时学习位置查询和内容查询,是静态查询初始化的另一种实现。为了进一步提高性能,Deformable DETR 提出了一个查询选择变体( "两阶段" ),它从最后一个编码器层选择前 K 个编码器特征作为先验来增强解码器查询。如图5 ( b )所示,位置和内容查询都是由所选特征的线性变换生成的。此外,这些选择的特征被馈送到一个辅助检测头以得到预测框,这些预测框用于初始化参考框。类似地,Efficient DETR 也是根据每个编码器特征的客观(类)评分选择前K个特征。 

Mixed Query Selection:在我们的模型中,查询的动态4D锚框格式使其与解码器位置查询密切相关,可以通过查询选择来改进。我们遵循上述实践并提出了一种混合查询选择方法。如图5 ( c )所示,我们只使用与所选top - K特性相关联的位置信息初始化锚框,但与前面一样保持内容查询是静态的。请注意,Deformable DETR利用top - K特性不仅增强了位置查询,还增强了内容查询。由于选取的特征是初步的内容特征,没有进一步细化,可能会对解码器产生歧义和误导。例如,一个选定的特征可能包含多个对象或者只是一个对象的一部分。相比之下,我们的混合查询选择方法只增强了具有top - K选择特征的位置查询,并保持了内容查询的可学习性。这有助于模型利用更好的位置信息从编码器中汇集更全面的内容特征。

(3)什么是 Look Forward Twice ?

图6 Deformable DETR 中 box update 与本文方法的比较

Look Forward Once:我们在这一部分提出了一种新的 box 预测方法。Deformable DETR 中的 iterative box refinement 可以阻止梯度反向传播来稳定训练。我们将方法命名为向前一次( Look Forward Once ),因为第 i 层的参数是仅仅根据 box 的辅助损失  更新的,如图6 ( a )所示。

Look Forward Twice:然而,我们猜想,来自后一层的改进的 box 信息可能更有助于修正其相邻的早期层的盒子预测。因此,我们提出了另一种叫做两次向前看( Look Forward Twice )的方法来执行box更新,其中第 i 层的参数受到第 i 层和( i + 1)层的损失的影响,如图6 ( b )所示。对于每个预测的偏移量 ,它将被用来更新框两次,一次用于,另一次用于,因此我们将我们的方法命名为向前两次。

Look Forward Twice 的具体实现过程如下:

预测框的最终精度由两个因素决定:初始框  和预测框的偏移量 的质量。

向前一次方案只优化后者,因为梯度信息从第 i 层分离到第( i-1 )层。相反,我们同时改进了初始盒子  和预测盒子偏移量。改善质量的一个简单方法是用下一层  的输出来监督第 i 层的最终框。因此,我们使用和  的和作为层( i + 1 )的预测框。(类似循环神经网络时间序列的思想)

更具体地说,给定第 i 层的一个输入框 ,我们得到最终的预测框: 

为 的非独立版本。Gradient Detach: 由 进行梯度分离得到。术语Update(·,·)是一个函数:通过预测的框偏移量  框 进行细化操作。 

我们采用与 Deformable DETR 中相同的 box update 方法:Deformable DETR 在模型中使用了 box 的标准化形式,因此 box 的每个值都是0到1之间的浮点数。给定两个 box,在逆sigmoid之后对它们求和,然后通过sigmoid变换求和。

五、实验方面

(1)数据集和网络骨干

数据集:我们在COCO 2017目标检测数据集[ 20 ]上进行评估,该数据集分为train2017和val2017 (也称为minival )。

网络骨干:我们使用两种不同的主干报告结果:

在 ImageNet - 1k 上预训练的ResNet - 50。 《Deep residual learningfor image recognition》在 ImageNet - 22k 上预训练的 SwinL。 《Swin transformer:Hierarchical vision transformer using shifted windows》

使用ResNet - 50的DINO在没有额外数据的情况下在train2017上训练,而使用SwinL的DINO首先在Object365《Objects365: A large-scale,high-quality dataset for objectdetection》上预训练,然后在train2017上微调。我们报告了val2017在不同IoU阈值和对象尺度下的标准平均精度( AP )结果。我们还报告了DINO与SwinL的测试结果。

(2)实现细节

DINO由一个主干、一个Transformer编码器、一个Transformer解码器和多个预测头组成。在附录D中,我们提供了更多的实现细节,包括在我们的模型中使用的所有超参数和工程技术,供那些希望再现我们的结果的人使用。我们将在盲审之后发布代码(已经发布,本人已经跑通,稍后更新)。

附录D:一些训练优化技巧、超参数的选取、和使用的GPU信息,阅读源码时,可以参考附录;部分超参数如表8 所示:

 表8 DINO模型使用的超参数

六、熠熠生辉的数据可视化

表1 在COCO val2017上使用ResNet50网络主干的DINO和其他检测模型的结果使用12 epoch(所谓的1 ×设置)进行训练。对于没有多尺度特征的模型,我们测试它们的GFLOPS和FPS,以获得最佳模型ResNet-50-DC5。

DINO 使用900个查询。标识指出使用3种模式的900个查询或300个查询的模型,这些模式具有与900个查询相似的效果。其他 DETR - like 模型除 DETR ( 100个查询 )使用300个查询外。*表示使用 mmdetection 框架进行测试。 4scale and 5scale:多尺度特征图(multi-scale features)。

补充:

GFLOPS:Giga Floating-point Operations Per Second, 即每秒10亿次的浮点运算数,常作为GPU性能参数但不一定代表GPU的实际表现。它是一个衡量计算机计算能力的量,这个量经常使用在那些需要大量浮点运算的科学运算中。

MMDetection 是商汤和港中文大学针对目标检测任务推出的一个开源项目,它基于Pytorch实现了大量的目标检测算法,把数据集构建、模型搭建、训练策略等过程都封装成了一个个模块,通过模块调用的方式,我们能够以很少的代码量实现一个新算法,大大提高了代码复用率。DINO源码用到了mmcv中的config.py文件。

表2 DINO等检测模型在COCO val2017上以ResNet - 50为主干,使用更多epoch训练的结果

图7 使用多尺度特征在COCO val2017上评估DINO和两个先前最先进的ResNet-50模型的训练收敛曲线。充分体现了DINO在保证提升精度的同时,收敛速度有羚羊的速度提升到了猎豹的速度。本人在DETR上面用一快GPU训练30个小时达到的效果和在DINO上训练三个多小时的效果差不多。

表3 在MS - COCO上,DINO与以往最佳检测模型的比较

 表4 对于提出的创新模块的消融实验结果

>>> 如有疑问,欢迎评论区一起探讨。

计算机视觉论文精度大纲_Flying Bulldog的博客-CSDN博客https://blog.csdn.net/qq_54185421/article/details/125571690

优惠劵

Flying Bulldog

关注

关注

41

点赞

165

收藏

觉得还不错?

一键收藏

打赏

知道了

10

评论

DINO 论文精度,并解析其模型结构 & DETR 的变体

截止2022年7月25日,DINO是目标检测的SOTA。本人根据源码的复现感受和DINO论文的精读心得,撰写本篇博客,希望对你有所帮助。DINO(DETR with Improved deNoising anchOr boxes),一款最先进的端到端对象检测器。对比的去噪训练方式;用于锚点初始化的混合查询选择方法;用于框预测的向前两次方案;本文章会对以上三种创新方法逐点击破。使用ResNet-50主干和多尺度特征,DINO在12个epoch获得49.4AP,在24个epoch获得51.3AP(收敛极快!).

复制链接

扫一扫

专栏目录

深度目标检测进阶:RT-DETR算法优化之新境界

一直在水些技术小文

11-20

81

通过本文的深度解析,我们详细讨论了RT-DETR算法的优化改进——Loss改进、Inner-MPDIoU和Inner-IoU的引入。这一系列改进不仅在理论上拓展了目标检测算法的可能性,更通过实例演示展示了在实际应用中取得的显著性能提升。希望这次技术分享能够激发更多研究者和开发者对目标检测领域的关注和创新。欢迎在评论区分享您的看法和经验,让我们共同见证深度目标检测技术的不断进步。

dino:使用自学式学习方法DINO进行视觉变形金刚训练的PyTorch代码

05-11

带DINO的自监控视觉变压器

PyTorch实施和DINO的预训练模型。 有关详细信息,请参阅自监督视觉变压器中的新兴属性。 [ ] [ ] [ ]

预训练模型

您可以选择仅下载用于下游任务的预训练骨干的权重,或下载包含学生和教师网络的骨干和投影头权重的完整检查点。 我们还提供培训和评估日志。

参数

-

线性的

下载

DeiT-S / 16

21M

74.5%

77.0%

DeiT-S / 8

21M

78.3%

79.7%

ViT-B / 16

85百万

76.1%

78.2%

仅骨干

完整的检查点

args

日志

评估日志

ViT-B / 8

85百万

77.4%

80.1%

仅骨干

完整的检查点

args

日志

评估日志

ResNet-50

23M

67.5%

75.3%

仅骨干

完整的检查点

args

日志

评估日志

预训练模型可

10 条评论

您还未登录,请先

登录

后发表或查看评论

DINO: 让目标检测拥抱Transformer!霸榜COCO!

idol24的博客

07-26

1851

©作者 | 李峰 单位 | 香港科技大学博士生研究方向 | 目标检测、多模态学习PR 一下我们最近刷榜 COCO 的目标检测模型,DINO(DETR withImproved deNoising anchOr boxes),从三月初霸榜至今(7 月),该模型第一次让 DETR (DEtection TRansformer)类型的检测器取得了目标检测的 SOTA 性能,...

【23年新文】多模态图像识别和定位—— Grounding DINO 模型的解析和使用

weixin_44483403的博客

01-19

1000

作者文中说到训练了两种backbone的版本,一个叫Grounding-DINO-T,用的是 Swin-T 作为主干,另一个是 Groungind-DINO-L, 用的是 Swin-L 主干。之后下载他们训练好的模型,这里下载的是 SwinT 作为骨干网络的版本,你也可以不在 terminal 里面下载,自己下载到本地(或者是自己上传到服务器)。模型示意图是从下到上看的,具体pipeline参考下文“训练细节”一段(注意左边到右边有淡淡的一个用来映射的色块,可以看到结构放大的细节)

【计算机视觉】DINOv2(视觉大模型)代码使用和测试(完整的源代码)

wzk4869的博客

07-19

3976

【计算机视觉】DINOv2(视觉大模型)代码使用和测试(完整的源代码)

DINO-DETR论文学习记录

pengxiang1998的博客

03-23

1280

我们介绍了DINO(带有改进的去噪器box的DETR),一种最先进的端到端对象检测器。DINO 通过使用对比方式进行去噪训练、混合查询选择方法进行锚点初始化以及用于框预测的ook forward twice方案,在性能和效率方面比以前的类似 DETR 模型有所改进。DINO在COCO上实现了12个时期的49.4AP,在24个时期内实现了51.3AP,具有ResNet-50骨干和多尺度特征,与之前最好的类似DETR的模型DN-DETR相比,分别产生了+6.0AP和+2.7AP的显着改善。

自监督学习经典之作:DINO

m0_63642362的博客

09-04

5300

Emerging Properties in Self-Supervised Vision Transformers论文复现

DINO 论文笔记

xunull的博客

03-15

1362

DINO通过使用对比方法,混合查询选择方法的anchor初始化的和盒子预测的look forward twice方案在性能和效率方面有了改进DINO使用ResNet-50 backbone以及多尺度特征,在COCO上,12个epoch达到49.4AP,24个epoch达到51.3AP 与之前最好的DN-DETR模型相比,分别显著提高了+6.0AP和+2.7APDAB和DN的结合使得类detr的模型在训练效率和推理性能方面都能与经典检测器竞争以往的类detr模型不如改进的经典检测器。

视觉大模型DINOv2:自我监督学习的新领域

十年以上架构设计经验,专注于软件架构和人工智能领域,对机器视觉、NLP、音视频等领域都有涉猎

11-12

1235

DINOv2的开源,无疑将进一步推动人工智能领域的发展。借助这个工具,科研人员可以更深入地研究图像和视频的理解机理,开发出更为先进的AI应用。同时,广大开发者和企业也将从这项技术中获益,加速各类智能化应用的落地。DINOv2 作为一种无需 fine-tuning 的自监督方法,在提取图像特征方面表现出色,适用于许多不同的视觉任务。它的开源也为广大研究者和工程师提供了一种新的选择,有望为计算机视觉领域带来更多的突破,可以期待更多基于 DINOv2 的研究工作出现。

手把手带你跑通目标检测中的DINO-main模型

m0_62621167的博客

02-28

1342

手把手带你跑通DINO模型

用 DINOv2 模型进行深度估计

重剑无锋博客

05-25

1750

DINOv2 是一种基于自监督学习的深度学习模型,主要用于图像分类和目标检测等任务。在深度估计中,可以使用DINOv2进行预训练,并将其应用于推理过程中。这段代码首先加载了DINOv2的预训练模型,并将其设置为评估模式。然后,它加载了一个测试图像,并执行了推理。最后,它从推理输出中提取了深度估计值。请注意,此代码示例仅适用于单个图像的深度估计。如果需要对多个图像进行深度估计,则应该调整代码以批量处理图像。

基于DETR with YOLO改进的新型物体检测器DEYOv2

06-16

本文介绍了一种名为 DEYOv2 的新型物体检测器,它是第一代 DEYO(DETR with YOLO)模型的改进版本。 DEYOv2 与其前身类似,DEYOv2 采用渐进式推理方法来加速模型训练并提高性能。该研究深入研究了一对一匹配在优化中的局限性,并提出了有效解决该问题的解决方案,例如Rank Feature和Greedy Matching。这种方法使 DEYOv2 的第三阶段能够在不需要 NMS 的情况下最大限度地从第一阶段和第二阶段获取信息,从而实现端到端优化。通过结合密集查询、稀疏查询、一对多匹配和一对一匹配,DEYOv2 充分利用了每种方法的优势。在相同设置下,它优于所有现有的基于查询的端到端检测器。当在 COCO 数据集上使用 ResNet-50 作为主干和多尺度特征时,DEYOv2 在 12 和 24 个 epoch 中分别达到 51.1 AP 和 51.8 AP。与端到端模型 DINO 相比,DEYOv2 在两个 epoch 设置中提供了 2.1 AP 和 1.4 AP 的显着性能提升。据我们所知,DEYOv2 是第一个完全端到端的目标检测器,它结合了经典检测器和基于

毕设&课设&项目&竞赛-基于STM32的Dino Run.zip

01-23

单片机设计,工具源码,适合毕业设计、课程设计作业,所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

软件开发设计:PHP、QT、应用软件开发、系统软件开发、移动应用开发、网站开发C++、Java、python、web、C#等语言的项目开发与学习资料

硬件与设备:单片机、EDA、proteus、RTOS、包括计算机硬件、服务器、网络设备、存储设备、移动设备等

操作系统:LInux、IOS、树莓派、安卓开发、微机操作系统、网络操作系统、分布式操作系统等。此外,还有嵌入式操作系统、智能操作系统等。

云计算与大数据:数据集、包括云计算平台、大数据分析、人工智能、机器学习等,云计算是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需提供给计算机和其他设备。

Toolset COCOM & scripting language DINO-开源

04-26

COCOM是一个工具集,可帮助创建编译器和解释器。 COCOM的一部分是高级脚本语言DINO的解释器,该语言的面向领域与著名的语言perl,tcl和python相同。

of-reconfig-notifier-error-inject.rar_dino

09-20

Serial Device Initialisation for Lasi Asp Wax Dino.

dino

03-20

dino

LSTM长短期记忆网

Jochen12345的博客

03-03

1077

RNN是递归神经网络(Recurrent Neural Network)的缩写。它是一种神经网络结构,专门用于处理序列数据,具有记忆和顺序处理的能力。在传统的前馈神经网络中,每个输入与输出之间都是独立的,而RNN通过引入循环连接,允许信息在网络中传递并保持状态。循环连接(Recurrent Connections):RNN中的每个时间步都有一个循环连接,使得网络可以在处理当前输入时考虑之前的信息。这种连接使得RNN能够处理任意长度的序列输入。隐藏状态(Hidden State)

李沐动手学习深度学习——4.3练习

weixin_45496725的博客

03-02

359

多层感知机的简洁实现

精读《深度学习 - 函数式之美》

最新发布

qzmlyshao的博客

03-05

792

深度学习是机器学习中基于人工神经网络模型的一个分支,通过模拟多层神经元的自编码神经网络,将特征逐步抽象化,这需要多维度、大数据量的输入。TensorFlow和PyTorch是比较著名的 Python 深度学习框架,同样Keras在 R 语言中也很著名。然而在生产环境中,基于性能和安全性的考虑,一般会使用函数式语言Clojure或Haskell。在生产环境中,可能要并发出里几百万个参数,因此面临的挑战是:如何高效、安全的执行这些运算。所以为什么函数式编程语言可以胜任深度学习的计算要求呢?

DINO v2 对比学习方法

06-01

DINO v2采用了对比学习方法来训练模型,其核心思想是通过学习图像间的差异来训练模型,使得模型能够学习到更加丰富的特征。具体来说,DINO v2使用了以下两种不同的对比学习方法:

1. 异质对比学习:DINO v2使用了异质对比学习方法,将一个视觉样本与多个其他视觉样本进行对比。这种方法可以使得模型更加关注视觉样本之间的差异,从而学习到更加丰富的特征。

2. 自适应对比学习:DINO v2使用了自适应对比学习方法,通过动态调整温度参数来自适应地学习对比损失函数。这种方法可以使得模型更加关注局部特征,从而提高模型的准确性。

DINO v2的对比学习方法与传统的监督学习方法不同,不需要人工标注数据,从而避免了标注数据的成本和错误。相比于传统的自监督学习方法,DINO v2的对比学习方法能够学习到更加丰富、更具有代表性的特征,从而提高模型的准确性和泛化能力。

“相关推荐”对你有帮助么?

非常没帮助

没帮助

一般

有帮助

非常有帮助

提交

Flying Bulldog

CSDN认证博客专家

CSDN认证企业博客

码龄3年

暂无认证

90

原创

1万+

周排名

3万+

总排名

25万+

访问

等级

1443

积分

4024

粉丝

429

获赞

167

评论

1587

收藏

私信

关注

热门文章

报错解决:pandas的依赖项openpyxl

25051

DINO 论文精度,并解析其模型结构 & DETR 的变体

16029

计算模型的GFLOPs和参数量 & 举例VGG16和DETR

11949

海康网络摄像机与电脑交互,有网络和无网络两种方式读取URL视频流,以及无网络情况下配置IP地址

10570

深度剖析问题:Could not run ‘torchvision::nms‘ with arguments from the ‘CUDA‘ backend.

8578

分类专栏

论文精读_解析模型结构

32篇

变形金刚 Transformer

16篇

MySQL

5篇

面试准备

1篇

关于C++

1篇

Leetcode笔记

1篇

报错解决

10篇

项目涉及知识点

4篇

GitHub

4篇

Pytorch_python

18篇

opencv_python

11篇

opencv_c++

2篇

搭建神经网络

5篇

python_skills

8篇

Matlab

1篇

最新评论

基于Transformer的DETR的注意力权重可视化,非CAM可视化技术

abc73215724:

你训练的时候batch size设置为了3吗

MediaPipe之人体关键点检测>>>BlazePose论文精度

Chordrain:

大佬,问一下,这是不是就是mediapipe的pose landmark model使用的架构?

2022泰迪杯自动提取csv表格文件中的数据,保存到符合YOLOv5格式的txt文件中,并修改标签值的代码实现

SF199853:

没说请Exce是哪来的啊???

基于Transformer的DETR的注意力权重可视化,非CAM可视化技术

qq_36129131:

attn_output_weights向量在这条语句执行前后size不一致,你在这条语句前print一下size,然后把那个950改成对应的试一下

DINO 论文精度,并解析其模型结构 & DETR 的变体

浮白ovo:

readme里有写detect的文件

您愿意向朋友推荐“博客详情页”吗?

强烈不推荐

不推荐

一般般

推荐

强烈推荐

提交

最新文章

论文精读 && MOG2 && 阴影检测

论文精读 && MOG && 埃里克·格里姆森

论文精读 && Co-DETR(Co-DINO、Co-Deformable-DETR)

2023年16篇

2022年74篇

目录

目录

分类专栏

论文精读_解析模型结构

32篇

变形金刚 Transformer

16篇

MySQL

5篇

面试准备

1篇

关于C++

1篇

Leetcode笔记

1篇

报错解决

10篇

项目涉及知识点

4篇

GitHub

4篇

Pytorch_python

18篇

opencv_python

11篇

opencv_c++

2篇

搭建神经网络

5篇

python_skills

8篇

Matlab

1篇

目录

评论 10

被折叠的  条评论

为什么被折叠?

到【灌水乐园】发言

查看更多评论

添加红包

祝福语

请填写红包祝福语或标题

红包数量

红包个数最小为10个

红包总金额

红包金额最低5元

余额支付

当前余额3.43元

前往充值 >

需支付:10.00元

取消

确定

下一步

知道了

成就一亿技术人!

领取后你会自动成为博主和红包主的粉丝

规则

hope_wisdom 发出的红包

打赏作者

Flying Bulldog

你的鼓励将是我创作的最大动力

¥1

¥2

¥4

¥6

¥10

¥20

扫码支付:¥1

获取中

扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元

使用余额支付

点击重新获取

扫码支付

钱包余额

0

抵扣说明:

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

余额充值

如何评价Meta最新发布的DINOv2:无需监督学习稳健的视觉特征? - 知乎

如何评价Meta最新发布的DINOv2:无需监督学习稳健的视觉特征? - 知乎首页知乎知学堂发现等你来答​切换模式登录/注册机器学习计算机视觉自监督学习如何评价Meta最新发布的DINOv2:无需监督学习稳健的视觉特征?https://ai.facebook.com/blog/dino-v2-computer-vision-self-supervised-learni…显示全部 ​关注者27被浏览43,947关注问题​写回答​邀请回答​好问题​添加评论​分享​4 个回答默认排序知乎用户​阿里巴巴 算法工程师1. 概述前些天 Meta 公司发布了 DINOv2 视觉预训练模型。DINOv2 能够高效地提出图像中的特征,提取的特征可以直接用于像分类等任务,而且只需要一个简单的线性层就能去的比较好的结果。为了展示 DINOv2 强大的特征提取能力, Meta 提供了一个在线 Demo,上传一张图片,就能从一些艺术画作中检索出最相似的作品。拿随手拍的照片体验后,DINOv2 特征提取能力确实强大,能够准确地理解图片中的语义信息。由于 DINOv2 预训练模型是开源的,因此基于它来编写一些有实际应用价值的AI应用是可行的。比如,我想找到相册中跟某张照片最相似的图片,就可以用 DINOv2 来测试照片和相册中所有照片的特征,然后计算相册中照片特征与测试照片最相近的那一张,就是我想要的。整体思路是很简单直接的,经过一天的开发,终于完成了一个相对完善的Python工具 dinov2_retrieval,能够检索若干张图片在测试数据集中最相似的图。写完后跑了一些测试结果,还是挺不错的。 下面是一些例子,最左边是测试图片,右边的5张图是在Caltech 256数据集中检索得到的top5相似的图像:通过和ResNet50预训练模型提取的特征做检索对比,发现 DINOv2 提取的特征还是更准确一些,检索结果也更好。下一部分详细说说这个工具 dinov2_retrieval 的使用。2. 安装和使用dinov2_retrieval 已经发布到 PyPI,因此可以使用pip来直接安装:pip install dinov2_retrieval安装后在命令行执行dinov2_retrieval -h 来检查安装是否成功:dinov2_retrieval -h

usage: dinov2_retrieval [-h] [-s {small,base,large,largest}] [-p MODEL_PATH] [-o OUTPUT_ROOT] -q QUERY -d DATABASE [-n NUM] [--size SIZE]

[-m {0,5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100}] [--disable-cache] [-v]

optional arguments:

-h, --help show this help message and exit

-s {small,base,large,largest}, --model-size {small,base,large,largest}

DinoV2 model type

-p MODEL_PATH, --model-path MODEL_PATH

path to dinov2 model, useful when github is unavailable

-o OUTPUT_ROOT, --output-root OUTPUT_ROOT

root folder to save output results

-q QUERY, --query QUERY

path to a query image file or image folder

-d DATABASE, --database DATABASE

path to the database image file or image folder

-n NUM, --num NUM How many images to show in retrieval results

--size SIZE image output size

-m {0,5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100}, --margin {0,5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100}

margin size (in pixel) between concatenated images

--disable-cache don't cache database features, will extract features each time, quite time-consuming for large database

-v, --verbose show detailed logs如果有上面的输出说明就安装成功了,否则就有问题,解决不了的情况下可以在这里提交issue。运行时一般来说只需要设置一下--query 和--database 参数,分别代表测试图像和数据集的地址。两者都可以是单张图片或者目录:dinov2_retrieval -q /path/to/query/image -d /path/to/database/images检索得到的结果会保存在output目录下。另外的选项含义如下: -s/--model-size: 模型大小,可以设置small,base,large或者largest-p/--model_path: 模型缓存路径,一般是$HOME/.cache/torch/hub/facebookresearch_dinov2_main,对于GitHub连接不太稳定的情况使用此选项可以从本地读取模型-o/--output-root: 输出结果的保存目录,默认是output-n/--num: 显示多少张最相似的图片,默认是1张 --size: 图像缩放到多大来显示,默认是224-m/--margin: 不同图像拼接时的间距,默认10像素--disable-cache: 禁用database特征的cache,开启后每次运行都会对database所有图像提取一遍特征,耗时大大增加,不建议启用 -v/--verbose: 开启debug log,会显示更多有用信息,比如图像的相似度等3. 思考写完这个工具后,有一点体会,检索这个任务要做出有意思的东西,还是要有足够丰富有趣的数据库。这也是一个通用的问题,现在的AI有强大的能力,但对于普通开发者来说,AI的能力用到哪里,怎么产生出有意思有意义的实际应用场景,是个值得思考的问题。发布于 2023-07-02 01:03​赞同 10​​5 条评论​分享​收藏​喜欢收起​知乎用户​​中国地质大学 工程硕士前端时间看了一些半监督和无监督目标检测和分割的算法,其中STEGO就是一个无监督的分割算法,其backbone是基于dino的,训练时是用dino的vit作为backbone提取了feature,直接将feature作为输入。facebook还有一个目标检测的无监督算法,也是基于dino的,将其作为backbone。个人验证对比,用一个训练较好的backbone对于下游任务的性能上会有所提高。dinov2是在dino上进行了优化,基于其LVD-142M数据集,通过在大型数据集上预训练图像编码器,获得具有语义的通用视觉特征,这些特征可用于广泛的视觉任务,不用微调,就可以获得与有监督模型相当的性能。dinov2是一种自监督方法,因此不再需要大量的标签数据,效果也不错,算是对最近比较火的sam的一个补充,dinov2结合一个简单的线型分类器,就能在分割任务达到很好的效果。具体效果可以参加dinov2 demo,官方提供了3个demo:(1)深度估计(2)语义分割(3) 实例检索dinov2的核心部分:1.LVD-142M数据集dinov2创建了LVD-142M数据集,包括1.42亿张图像,这个数据集的处理流程还是很有借鉴的。数据集分为Curated Data(整理过的数据集)和Uncurated Data(未整理的数据集),Curated Data包括ImageNet-22k, ADE20K等公开数据集,Uncurated Data是从网络爬取下来的,共12亿张图像。数据处理流程先编码数据集,然后将未整理的数据集进行去重,再与整理的数据进行匹配,将匹配的数据添加到整理的数据集中。2.提出一种可鉴别的自监督方法该方法结合了dino和iBOT,主要包含以下几个方法:(1)Image-level objective(图像级目标):考虑从学生网络和教师网络中提取的特征之间的交叉熵损失,这些特征来自对同一图像进行不同的crop操作得到的vit token,训练学生网络,然后指数移动平均方法构建一个教师网络。(2) Patch-level objective(块级目标)随机mask掉一些image patch送到学生网络,但是不给教师网络,然后计算masked的patch在2个网络上的交叉熵。(3) Untying head weights between both objectives(解绑2个级别的权重)经实验发现,(1)和(2)两个级别的损失函数共享参数时,模型在Patch级别会欠拟合,在图像级别会过拟合。因此,将这些参数解绑,使得模型在两个级别都能具有很好的结果。(4)Sinkhorn-Knopp centering用SwAV的 Sinkhorn-Knopp(SK)batch norm方法取代dino教师网络的softmax-centering步骤。用该方法进行了3次迭代。对于学生模型,使用softmax标准化。(5)KoLeo regularizer(正则化)继承于Kozachenko-Leonenko 微分熵估计,它计算一个batch内的任意xi与其他xj之间的最小距离,它的作用是让一个批次内的特征分布均匀。(6)Adapting the resolution(提高分辨率)提高图像分辨率是下游任务的关键,如分割或检测,其中小物体在低分辨率下消失。然而,高分辨率的训练需要时间和内存,这里只在预训练结束前的最后阶段将图像分辨率提高到518×518。编辑于 2023-05-13 00:14​赞同 9​​添加评论​分享​收藏​喜欢收起​​

谷歌恐龙游戏。在Chrome浏览器中运行Dino T-Rex

龙游戏。在Chrome浏览器中运行Dino T-Rex

主页恐龙跳恐龙游戏恐龙里奥雷克斯游戏恐龙图片联系我们

按电脑键盘上的 "up "键,启动谷歌恐龙游戏。如果你用手机或平板电脑访问该网站,只需点击游戏屏幕或点击恐龙。要让恐龙跳起来,使用向上的方向键(↑)或向下的方向键(↓),让它躲开。

谷歌恐龙游戏你有没有觉得自己像个穴居人,突然断网了?准备充分的人可以不用下载就打开游戏,享受他们的深谋远虑。 但是,我们大多数人在没有 wifi 的情况下没有游戏可玩。如果您知道有关 Chrome 的小秘密,这根本不是障碍。此浏览器可以让用户离线娱乐。 无论您的 Google 系统是在手机上还是在 PC 上。 此外,我们发现了一个有趣的隐藏游戏,每个人都可以随时玩。游戏详情由于多种原因,您的连接可能会失败。无论如何,Chrome 都能满足您的需求。每当 Internet 出现故障时,您都会在浏览器中看到一个众所周知的图像。它是屏幕中间的一只可爱的小恐龙。事实上,这是您进入 Dino 游戏的入口。您只需单击一下即可启动它。虽然它是一款简单的单色跑酷游戏,但它的开发者仍然值得称赞。 整体的简洁性和不苛求的游戏设计使其更具吸引力。你可以从这个像素娱乐在全球范围内的粉丝数量看出这一点。基本上,你玩霸王龙在一些荒凉的地区漫游并避开出现的障碍物。霸王龙是恐龙电影中经常出现在银幕上的角色。在这个游戏中,古老的食肉动物应该跳过它遇到的每一个仙人掌。另外,避开在天空翱翔的翼龙。最终目标是击败高分。然而,跑步者并不是要创造记录。这个过程是游戏中最重要和最令人愉快的部分。随着您的演奏,速度逐渐增加。这就是为什么对于初学者来说,游戏会造成一些困难。不断地操作你的恐龙并成功地跳过每个障碍而不失败并不是那么容易。现在您可能对这款浏览器 Tirex 游戏的开发方式感兴趣。因此,让我们及时退后一步。恐龙游戏的发明史Chrome 浏览器运行器的开发可追溯至 2014 年。 该游戏于 9 月首次发布,与旧版本的 Android 系统不兼容。最终调整仅由 Google 程序员在 12 月推出。游戏创作者Sebastien Gabriel 解释说霸王龙象征着史前时期。那时,互联网还没有发明,所以人们可以接触到这种氛围。至于逐像素和单色设计,这也不是随机的。它是对 Google 浏览器错误图像的引用。Dino runner 游戏的另一个昵称是“Project Bolan”。它是为了纪念乐队“霸王龙”。它的主唱名字是马克·博兰。在制作游戏的过程中,设计师对恐龙产生了有趣的想法。例如,他们想为 Dino 分配一些很酷的功能,例如踢腿和咆哮。但是,最终,这些都没有实施。游戏应该是原始而简单的。程序员设法传达了史前恐龙的原始性质。如何在不在线下载的情况下让它工作和玩耍那么在没有网络的情况下如何启动游戏呢? 很简单!打开你的 Chrome 浏览器,你会自动看到 Dino。在屏幕上点击它或按空格键。您也可以使用向上箭头,T-Rex 将开始运行。如果您的 Internet 工作正常,则无需将其关闭即可播放。您可以在浏览器中使用以下命令打开游戏:chrome://dino/。只需复制链接并将其插入地址栏中即可。即使您的互联网已打开,T-Rex 跑步者也会启动。您已准备好打破游戏记录!运行 T-Rex Google 恐龙游戏现在您可以玩了,准备绕过恐龙遇到的每一个障碍。为了执行跳跃,请使用空格键。向上的另一个选项是按键盘上的向上箭头。每次看到 TRex 前面出现仙人掌时使用它。对于那些在智能手机上玩 Dino 游戏的人来说,游戏方式略有不同。 跳跃是通过点击屏幕来完成的。这样每个仙人掌都会被霸王龙成功通过。这个谷歌浏览器游戏还有另一种障碍。是翼手龙。它们比我们的恐龙飞得更高,所以简单的跳跃几乎没有帮助。那怎么玩?向下箭头按钮使您的 dinsour 鸭子,让您轻松绕过障碍物。并且游戏可以继续。现在您知道 up 并不是赢得这个 Chrome 街机游戏的唯一方法。这里不仅仅是按空格键。界面看起来比您对简单的单色浏览器游戏所期望的更加多样化。如果你没有按时按箭头或点击屏幕,你就输了。 T-Rex 撞到他面前的任何障碍物,游戏结束。因此,谷歌跑者的重点是保持你的专注。高速时可能会很困难,随着时间的推移会增加。但是,您玩 Dino 游戏的次数越多,您适应它的速度就越快。只是不要等到你的互联网消失了,然后每天训练小霸王龙!此 Google 浏览器活动的另一个有趣功能是更改背景颜色。当你的恐龙沿着关卡移动时,它会从黑色变为白色并返回。这代表了白天和黑夜的到来,这对于单色游戏来说是罕见的。这一特征与您的恐龙获得速度这一事实完美结合。如果您在 Google 的集成浏览器中使用该产品,会有一个令人不快的惊喜。 没有跳过仙人掌或其他障碍并不是唯一的失败方式。一旦 Internet 连接恢复,T-Rex Dino 游戏就会停止。你如何保持动力继续带领恐龙创造世界纪录?观察你的分数!根据游戏版本,您可以在不同的地方看到它们。移动浏览器可让您在此过程中直接查看要点。所以你会注意到每次成功的跳跃都是额外的分数。同时,桌面版 Google Dino 仅在您结束回合后才会显示结果。对于那些想完成游戏的人来说,源代码创建者已经有了答案。即使恢复的互联网不会分散注意力,也需要 1700 万年才能完成。就在过去的那个时候,霸王龙恐龙物种居住在地球上。此外,创造最终记录还有另一个障碍。您还记得,游戏的速度会随着时间的推移而提高。因此,会有一段时间身体无法跟上。你不可能那么快地跳过每一个仙人掌。无论您单击、使用箭头还是空格键,速度都会变得无法播放。即使是那些在这款 Chrome 游戏中创造了一些记录的人,甚至还没有接近完成。两个专门教授的神经网络都无法保持这种速度。这就是谷歌恐龙的移动速度。如何破解 Chrome 的秘密游戏如果您在 Chrome 中打开标准版,您可以使用作弊。代码可以对分数产生积极影响并有助于创造本地记录。例如,此外,我们还提供了一个作弊器,可让您以您喜欢的任何速度进行游戏。另一个关闭了每当 Dino 遇到障碍物时结束游戏的功能。但是,有一种竞争的气氛会更有趣。这就是为什么我们不建议过于频繁地使用任何代码。某些网站提供此 Google 游戏的版本,其中不适用作弊码。创造个人记录似乎更能参与公平的挑战。尽管如此,Chrome 的内置变体允许玩家使用代码破解 gameTRex。复制以下其中之一,为您的 Google 恐龙竞赛增添一些乐趣。Runner.prototype.gameOver = function(){} 禁用游戏结束功能。复制代码并将其插入 Chrome 控制台。你如何在浏览器中到达那里?首先,您应该在 Google 的 No Internet 页面上。然后单击右键并选择“检查”。现在你可以去谷歌控制台并在那里输入一个命令。实际上,不需要 Internet 页面。使用我们之前写的地址解释如何离线进入Chrome游戏。它会立即将您发送到 Google 恐龙,就好像互联网已关闭一样。您可以从此处复制的另一个代码是 Runner.instance_.setSpeed (300)。 它允许用户调整速度。随意插入任何数字来代替 300。但不要把它放得太高。用空格键及时跳转可能会成为一个问题。另一方面,这种作弊可以帮助您打破自己的记录。您所需要的只是互联网在足够长的时间内出现故障。还有很多其他方法可以破解这个 Google 街机。可以调整你的重力和高度或激活永生。无论您找到并复制什么,都会使您成为更强大的玩家。 但如果你知道自己被骗了,这会是一个令人满意的记录吗?优势这是在没有由 Chrome 创建的互联网时享受您的时间的好方法。但是,有许多类似的活动部分复制了这一活动。你可以自己查! 只需用“OK Google 游戏”调用“gugl”,就会出现各种各样的替代方案。 例如畅通无阻的 Doodle Jump 和许多其他选项。其中一些使用带有漂亮精灵的机器人或 3D 播放图形。但他们都有一个共同点:需要互联网。同时,我们的 Dino 在任何情况下都可以使用。它在互联网粉丝中变得非常流行。您甚至可以购买以他的名义制作的龙玩具。结论现在您知道每个人的设备中都有一个小秘密。每当 Internet 出现故障时,用它来缓解无聊。游戏中的障碍物类型:单仙人掌为了克服障碍,跳起来。障碍难度双仙人掌为了克服障碍,跳起来。障碍难度三重仙人掌为了克服障碍,跳起来。障碍难度翼手龙为了克服障碍,根据翼手龙飞行的高度,躲避或跳起来。障碍难度关于谷歌恐龙T-REX游戏的常见问题1我如何在谷歌上打开一个恐龙游戏?如果你的互联网连接是关闭的,它会自动打开。只要点击恐龙,就会开始进行。如果你想保持在线,插入chrome://dino/。它将直接把你重新引导到需要的页面。2如何在离线时开始玩恐龙游戏?打开Chrome浏览器。只要你真的不在线,恐龙就会出现。然后你需要点击它或按下空格键。对于智能手机用户来说,点击一下屏幕就可以激活游戏。3如何玩Dino T-Rex谷歌浏览器游戏?桌面版使用空格键/向上箭头作为跳跃。向下的箭头使T-Rex躲避飞来的障碍物。如果你有一个敏感的屏幕,那就更容易了。只需点击它,迪诺就会做出反应。4如何破解T-Rex恐龙游戏?这里有大量的黑客行为的可能性。例如,你可以通过插入Runner.instance_.tRex.setJumpVelocity(10)来调整跳跃高度。这个作弊代码应该被输入到谷歌控制台。为此,在无连接页面的任何地方点击鼠标右键。然后选择 "检查"。5在 Dino T-Rex Game Chrome 中得分 99999 后会发生什么,记录是什么?可获得的最高分数为 99 999 分。 完成后,游戏将重置为零。 然而,没有人在不作弊的情况下接近它。 开发人员无法完成 Dino runner。 所以你可以玩很长时间。

简体中文

English (英语)

Deutsch (德语)

Français (法语)

Español (西班牙语)

Italiano (意大利语)

Українська (乌克兰语)

Русский (俄语)

Albanian (阿尔巴尼亚语)

العربية (阿拉伯语)

Հայերեն (亚美尼亚语)

Azərbaycan (阿塞拜疆语)

Euskara (巴斯克语)

বাংলাদেশ (Bengali)

Bosnian (波斯尼亚语)

Български (保加利亚语)

Català (加泰罗尼亚语)

繁體中文 (繁体中文)

Hrvatski (克罗地亚语)

Čeština (捷克语)

Dansk (丹麦语)

Nederlands (荷兰语)

Esperanta (世界语)

Eesti (爱沙尼亚语)

Suomi (芬兰语)

Galego (Galician)

Ελληνικά (希腊语)

עברית (希伯来语)

हिन्दी (印地语)

Magyar (匈牙利语)

Íslenska (冰岛语)

Indonesia (印度尼西亚语)

Gaeilge (爱尔兰语)

日本語 (日语)

한국어 (韩语)

Kurdish (库尔德语)

Latviešu (拉脱维亚语)

Lietuvių (立陶宛语)

македонски (马其顿语)

Melayu (Malay)

Malti (马耳他语)

Mongolian (蒙古语)

Nepali (尼泊尔语)

Norsk bokmål (挪威布克莫尔语)

فارسی (波斯语)

Polski (波兰语)

Português (葡萄牙语(巴西))

Português (葡萄牙语(葡萄牙))

Punjabi (旁遮普语)

Quechua (盖丘亚语)

Română (罗马尼亚语)

српски (赛尔维亚语)

Slovenčina (斯拉夫语)

Slovenščina (斯洛文尼亚语)

Somali (索马里语)

Svenska (瑞典语)

Tamil (泰米尔语)

ไทย (泰语)

Türkçe (土耳其语)

اردو (乌尔都语)

Uzbek (乌兹别克语)

Tiếng Việt (越南语)

Cymraeg (威尔士语)

Yiddish (依地语)

Zulu (祖鲁语)

2024 @ chrome-dino.co - All Rights Reserved