这里主要比较了bert-base和albert-tiny。前者窄而深,后者宽而浅。需要注意的一点是,albert是对bert瘦了身,但只省了空间,没有省时间。因为虽然不同层共享了参数,但模型还是要经过这么多层算一遍。
假设词表大小为V,句子长度为S,词向量维度为H,层数为L,自注意力头数为A,对于ALBert,其嵌入分解维度为E。模型的下游任务为多分类,标签数为K。
不同模型参数
V
S
H
L
E
bert-base
30000
512
768
12
−
albert-tiny
30000
512
1024
4
128
不同模型参数量
嵌入初始化
自注意力机制
前向网络传播
嵌入正则
下游任务
bert-base
V
×
H
+
S
×
H
+
2
H
3
L
×
H
2
9
L
×
H
2
(
4
L
+
2
)
×
H
H
×
K
albert-tiny
V
×
E
+
E
×
H
+
S
×
H
+
2
H
3
H
2
9
H
2
6
H
H
×
K
不同模型时间复杂度
嵌入初始化
自注意力机制
前向网络传播
嵌入正则
下游任务
bert-base
O
(
(
V
+
S
)
H
)
O
(
L
H
2
)
O
(
L
H
2
)
O
(
L
H
)
O
(
H
K
)
albert-tiny
O
(
V
E
H
)
+
O
(
V
E
)
+
O
(
S
H
)
O
(
L
H
2
)
O
(
L
H
2
)
O
(
L
H
)
O
(
H
K
)