bert参数统计

bert主要的实现是基于transformer的encoder部分,参数维度不同的地方是1)输入多了一项segment embedding,2)中间维度基本是768,以及多头注意力以及前向网络重复了12次。

在统计bert参数的时候,一共要考虑5部分。

1)第一部分:输入层包含三项

token embedding词表大小*768
position embmax_len(512*768)
segment emb两个取值0,1(2*768)

2)第二部分:多头注意力

12个头,其中每个头包括Q\K\V三组参数

768(原始维度)*768/12(每个头的q\k\v的维度)*3*12(头的个数)

然后concat起来所有输出,再变换一下 768*768+768

3)第三部分:Add and Norm

add不需要参数,norm有两个参数需要学习:shift和scale(2*768)

4)第四部分:前向网络

两层全连接网络(W,b):第一层是768*3072(4H)+3072

                              第二层是3072*768+768

5)第五部分:Add and Norm

同第三部分:2*768

总参数: 第一部分+12*(第二+第三+第四+第五部分)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

samoyan

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

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

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

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值