【长期更新】深度学习术语简写总结

您所在的位置:网站首页 qf是什么缩写网络 【长期更新】深度学习术语简写总结

【长期更新】深度学习术语简写总结

2023-12-11 02:07| 来源: 网络整理| 查看: 265

【长期更新】深度学习术语简写总结 网络结构术语pretext taskdownstream taskend to enddomain adaptation、domain generalizationbackboneheadneckbottleneck 代码术语GAPWarm uptemperature parameters 在阅读深度学习相关论文和代码经常见到一些常用的代称和简写,再次记录以便提高阅读效率。

网络结构术语 pretext task

预训练的任务被称为前置/代理任务(pretext task)

downstream task

对网络微调的任务被称为下游任务

end to end

端到端,其实和黑盒的理念一样。给了一个输入,我们就给出一个输出,不管其中的过程多么复杂,但只要给了一个输入,就一定会得到一个输出。 比如分类问题,你输入了一张图片,肯呢个网络有特征提取,全链接分类,概率计算什么的,但是跳出算法问题,单从结果来看,就是给了一张输入,输出了一个预测结果。End-To-End的方案,即输入一张图,输出最终想要的结果,算法细节和学习过程全部丢给了神经网络。

domain adaptation、domain generalization

域适应和域泛化。 域适应中,常见的设置是源域D_S完全已知,目标域D_T有或无标签。域适应方法试着将源域知识迁移到目标域。

第二种场景可以视为domain generalization域泛化。这种更常见因为将模型应用到完全未知的领域,正因为没有见过,所以没有任何模型更新和微调。这种泛化问题就是一种开集问题。

backbone

主干网络大多时候指的是提取特征的网络,其作用就是提取图片中的信息,共后面的网络使用。这些网络经常使用的是resnet、VGG等,而不是我们自己设计的网络,因为这些网络已经证明了在分类等问题上的特征提取能力是很强的。在用这些网络作为backbone的时候,都是直接加载官方已经训练好的模型参数,后面接着我们自己的网络。

head

输出层,利用之前提取的特征,head利用这些特征,做出预测。

neck

放在backbone和head之间的,是为了更好的利用backbone提取的特征而做的相关处理,比如你再加些特征提取的手法,或者下文的bottleneck

bottleneck

瓶颈的意思,通常指的是网网络输入的数据维度和输出的维度不同,输出的维度比输入的小了许多,就像脖子一样,变细了。经常设置的参数 bottle_num=256,指的是网络输出的数据的维度是256 ,可是输入进来的可能是1024维度的。

代码术语 GAP

Global Average Pool全局平均池化. 将某个通道的特征取平均值,经常使用AdaptativeAvgpoold(1)

# pytorch self.gap = nn.AdaptiveAvgPool2d(1) Warm up

热身,用一个小的学习率先训练几个epoch,这是因为网络的参数是随机初始化的,一开始就采用较大的学习率容易数值不稳定。

temperature parameters

p ( i ∣ x t , i ) = exp ⁡ ( K [ i ] T f ( x t , i ) / β ) ∑ j = 1 N t exp ⁡ ( K [ j ] T f ( x t , i ) / β ) p\left(i \mid x_{t, i}\right)=\frac{\exp \left(\mathcal{K}[i]^{\mathrm{T}} f\left(x_{t, i}\right) / \beta\right)}{\sum_{j=1}^{N_{t}} \exp \left(\mathcal{K}[j]^{\mathrm{T}} f\left(x_{t, i}\right) / \beta\right)} p(i∣xt,i​)=∑j=1Nt​​exp(K[j]Tf(xt,i​)/β)exp(K[i]Tf(xt,i​)/β)​ 这里 β \beta β就是temperature parameter,可以起到平滑softmax输出结果的作用

import torch x = torch.tensor([1.0,2.0,3.0]) y = torch.softmax(x,0) print(y) x1 = x / 2 # beta 为2 y = torch.softmax(x1,0) print(y) x2 = x/0.5 # beta 为0.5 y = torch.softmax(x2,0) print(y)

结果:

tensor([0.0900, 0.2447, 0.6652]) tensor([0.1863, 0.3072, 0.5065]) tensor([0.0159, 0.1173, 0.8668])

当beta>1的时候,可以将输出结果变得平滑,当beta



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3