首页 > 其他分享 >deformable attention中生成初始采样点位置(init_weights或者_reset_parameters函数)

deformable attention中生成初始采样点位置(init_weights或者_reset_parameters函数)

时间:2025-01-23 14:53:39浏览次数:1  
标签:reset parameters deformable self torch init grid pi

def _reset_parameters(self):
  constant_(self.sampling_offsets.weight.data, 0)
  """初始化偏移量预测的偏置(bias), 使得初始偏移位置犹如不同大小的方形卷积核组合"""

  # (8,) [0, pi / 4, pi / 2, 3 * pi / 2, ..., 7 * pi / 4]
  thetas = torch.arange(self.n_heads, dtype = torch.float32).(2.0 * math.pi / self.n_heads)
  # (8, 2)
  grid_init = torch.stack([thetas.cos(), thetas.sin()], -1)
  # grid_init / grid_init.abs().max(-1, keepdi=True)[0]这步计算得到8个头对应的坐标偏移:
  # (1, 0), (1, 1), (0, 1), (-1, 1), (-1, 0), (-1, -1), (0, -1), (1, -1)
  # 从图形视觉上来看, 形成的偏移位置相当于是3x3, 5x5, 7x7, 9x9正方形卷积核(出去中心,中心是参考点本身)
  for i in range(self.n_points):
    grid_init[:, :, i, :] *= i + 1
  # 注意这里取消了梯度,只是借助nn.Parameter把数值设置进去
  with torch.no_grad():
    self.sampling_offsets.bias = nn.Parameters(grid_init.view(-1))

最终效果就是,初始的采样点位置相当于会分布在参考点 3x3、5x5、7x7、9x9 方形邻域。

来源:Deformable DETR论文精读+代码详解 - yejian's blog

 

标签:reset,parameters,deformable,self,torch,init,grid,pi
From: https://www.cnblogs.com/picassooo/p/18687780

相关文章

  • 让你手写一个reset的文件,你应该怎么写?要考虑哪些方面呢?
    在前端开发中,一个reset文件通常指的是一个CSS重置文件,其目的是消除浏览器默认样式的不一致性,从而提供一个更一致的起点来构建项目的样式。下面是一个简单的示例,展示了如何手写一个CSS重置文件,并考虑了几个方面:/*reset.css*//*1.移除边距*/body,h1,h2,h3,h4,h5......
  • html的button中的reset有什么作用?
    在HTML中,<button>元素通常用于创建一个点击按钮。然而,<button>元素本身并不直接提供“reset”功能。通常,当我们谈到HTML中的“reset”按钮时,我们指的是<input>元素的一种类型,即type="reset"。<inputtype="reset">创建一个重置按钮。当这个按钮被点击时,它会将表单中的所有输......
  • [PCIE5.0] 4.2.4.9 Reset
    本小节主要描述了两种重置机制:基础重置(FundamentalReset)和热重置(HotReset),以及它们在PCIe协议中如何影响接收端(Receiver)和发送端(Transmitter)的行为。1.基础重置(FundamentalReset)•基础重置是PCIe系统中一种重要的重置操作,它通常是在系统启动时进行,或者在需要恢复系统......
  • KingbaseES V8R6数据库运维案例之---sys_resetwal案例
    案例说明:如下图所示,KingbaseESR6数据库启动失败,通过sys_resetwal重建checkpoint启动数据库。适用版本:KingbaseESV8R6一、问题现象二、问题分析1、查看reset前的控制文件的信息[kingbase@node1bin]$./sys_controldata-D/data/kingbase/v8r6_021/datasys_controlve......
  • JetBrains PyCharm 低版本无限重置试用--插件:ide-eval-resetter-2.1.6.zip
    ......
  • Deformable DETR
    PDF:https://arxiv.org/pdf/2010.04159Code:https://github.com/fundamentalvision/Deformable-DETR一、大体内容前面介绍DETR时,说明了其还存在对小物体检测效果不佳和训练慢的问题,DeformableDETR引入了DCN(DeformableConvolutionalNetworks)并将其和DETR相结合,借助可变形卷积......
  • jmeter压测报Java reset的解决办法
    解决办法:1、在注册表中按照下面的数据项去设置。win+r打开dos窗口,输入regedit,可打开注册表。一般不建议新手直接去修改注册表。2、新建txt,保存以下脚本修改后缀为reg文件,编辑值如下,保存后双击执行;重启电脑,再次压测即不会出现报错。解析中值为10进制,下方脚本已全转换为16进制。W......
  • 读论文《Bidirectionally Deformable Motion Modulation For Video-based Human Pose
    论文地址:2307.07754https://arxiv.org/pdf/2307.07754项目地址:rocketappslab/BDMM:OfficialPyTorchimplementationofBDMM:BidirectionallyDeformableMotionModulationForVideo-basedHumanPoseTransfer[ICCV2023]https://github.com/rocketappslab/bdmm项目已......
  • 0day圣乔E*P系统NamedParameterSingleRowQueryConvertor.queryForString.dwr存在SQL注
         0x01产品概述    圣乔E*P系统NamedParameterSingleRowQueryConvertor.queryForString.dwr存在SQL注入漏洞 通用描述管理和发布于一体的智能化平台,广泛应用于新闻、媒体和各类内容创作机构。该平台支持多终端、多渠道的内容分发,具备素材管理、编辑加工、智......
  • 以Deformable_DETR为例说明训练过程
    以Deformable_DETR为例说明使用服务器训练过程下载程序文件根据论文提供的github地址fundamentalvision/Deformable-DETR:DeformableDETR:DeformableTransformersforEnd-to-EndObjectDetection.下载zip到本地租用服务器在autodl平台租用服务器,申请账号氪金之后去市场......