【model1第一层encoder】

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了【model1第一层encoder】相关的知识,希望对你有一定的参考价值。

参考技术A 第一层到第六晨的encoder结构基本一样,未发现明显的区别

Transformer(

 (encoder): Encoder(

x1w1 + x2w2 +…+xnwn > T(T为一个阈值),而T越大,想激活这个感知器的难度越大,人工选择一个阈值并不是一个好的方法,因为样本那么多,我不可能手动选择一个阈值,使得模型整体表现最佳,那么我们可以使得T变成可学习的,这样一来,T会自动学习到一个数,使得模型的整体表现最佳。当把T移动到左边,它就成了偏置,x1w1 + x2w2 +…+xnwn - T> 0 ----->x*w +b > 0,总之,偏置的大小控制着激活这个感知器的难易程度。

(大概的意思是自动选择一个阈值而不是手动选择)

原文链接:https://blog.csdn.net/Boys_Wu/article/details/109819534

具体描述:https://blog.csdn.net/u013289254/article/details/98785869

   (layer_norm_in): LayerNorm((512,), eps=1e-05, elementwise_affine=True)

BatchNorm:batch方向做归一化,算N H W的均值,对小batchsize效果不好;BN主要缺点是对batchsize的大小比较敏感,由于每次计算均值和方差是在一个batch上,所以如果batchsize太小,则计算的均值、方差不足以代表整个数据分布

(魔方的前方块)

LayerNorm :channel方向做归一化,算C H W的均值,主要对RNN作用明显;

(魔方的左方块)

num_features: 来自期望输入的特征数,该期望输入的大小为’batch_size x num_features [x width]’

eps: 为保证数值稳定性(分母不能趋近或取0),给分母加上的值。默认为1e-5。

momentum: 动态均值和动态方差所使用的动量。默认为0.1。

affine: 布尔值,当设为true,给该层添加可学习的仿射变换参数。

track_running_stats:布尔值,当设为true,记录训练过程中的均值和方差;

原文链接:https://blog.csdn.net/shanglianlm/article/details/85075706

(positional_encoding): PositionalEncoding()

   (dropout): Dropout(p=0.1, inplace=False)

   (layer_stack): ModuleList(

     (0): EncoderLayer(

       (slf_attn): MultiHeadAttention(

         (w_qs): Linear(in_features=512, out_features=512, bias=True)

         (w_ks): Linear(in_features=512, out_features=512, bias=True)

         (w_vs): Linear(in_features=512, out_features=512, bias=True)

         (attention): ScaledDotProductAttention(

           (dropout): Dropout(p=0.1, inplace=False)

           (softmax): Softmax(dim=2)

         )

         (layer_norm): LayerNorm((512,), eps=1e-05, elementwise_affine=True)

         (fc): Linear(in_features=512, out_features=512, bias=True)

         (dropout): Dropout(p=0.1, inplace=False)

       )

       (pos_ffn): PositionwiseFeedForward(

         (w_1): Linear(in_features=512, out_features=2048, bias=True)

         (w_2): Linear(in_features=2048, out_features=512, bias=True)

         (dropout): Dropout(p=0.1, inplace=False)

         (layer_norm): LayerNorm((512,), eps=1e-05, elementwise_affine=True)

       )

     )

inplace=False 不改变原有的数据,在原来的数据上进行操作并生成一个新的数据

以上是关于【model1第一层encoder】的主要内容,如果未能解决你的问题,请参考以下文章

python第五天

第一模块:开发基础错题本

android添加阴影

python3学习之md5加密

json_encode() 返回 false

HEVC代码学习1:TAppEncoder的main函数