Vision Transformer里的MLP Head里的Pre-Logits层

博客介绍了神经网络相关内容,包括nn.Sequential,它是有序容器,模块按传入顺序添加到计算图;OrderedDict是按插入顺序存储的有序字典,还可排序;nn.tanh()是双曲正切激活函数;nn.Identity是恒等函数。

# Representation layer
if representation_size and not distilled:
    self.has_logits = True
    self.num_features = representation_size
    self.pre_logits = nn.Sequential(OrderedDict([
        ("fc", nn.Linear(embed_dim, representation_size)),
        ("act", nn.Tanh())
    ]))
else:
    self.has_logits = False
    self.pre_logits = nn.Identity()

nn.Sequential:一个有序的容器,神经网络模块将按照在传入构造器的顺序依次被添加到计算图中执行,同时以神经网络模块为元素的有序字典也可以作为传入参数。

OrderedDict:python中字典dict是利用hash存储,因为各元素之间没有顺序。OrderedDict即按照有序插入顺序存储的有序字典。除此之外还可根据key,val进行排序。

nn.tanh():双曲正切的激活函数

公式:

tanh=\frac{sinhx}{coshx}=\frac{e^{x}-e^{x}}{e^{x}+e^{x}}

 函数:y = tanh x;

图像:

nn.Identity: 恒等函数,即f(x) = x,相当于分类得到分类之前的特征。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值