作者majaja8787 (马奇亚米)
看板DataScience
标题[问题] 为什麽使用local self attention 取代cnn
时间Sun May 22 20:03:35 2022
主要的问题是从这篇问题而来
scaling local self-attention for parameter efficient visual backbones
cnn 模型的参数量与 receptive field 大小成平方关系
而这里提到因为 self-attention 是一种 parameter-independent 的架构
所以在调整 receptive field 时,参数量不太会增加
我这边的理解是self-attention 运算时若 receptive field 太大
会导致QKV矩阵跟着变大,参数量也会变大
所以这边不太明白为什麽self-attention
会比cnn使用的参数量还少
请求各位帮忙指点指点
-----
Sent from JPTT on my iPhone
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 223.137.31.29 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/DataScience/M.1653221020.A.D42.html
1F:→ chang1248w: 你没睡醒吧,receptive field 变大可是 feature 05/22 21:01
2F:→ chang1248w: dimension不会变多 05/22 21:01
3F:→ chang1248w: score计算成本才会随着square of receptive field 05/22 21:02
4F:→ chang1248w: 增长 05/22 21:02
5F:→ majaja8787: 感谢您,虽然我这边还是没有很懂.. 因为我对nlp研究比 05/22 22:25
6F:→ majaja8787: 较多,对cv其实不太了解,可能我再多看一些基础的知识 05/22 22:25
7F:→ majaja8787: .. 05/22 22:25
8F:→ chang1248w: 就像nlp里面的transformer,你序列拉长qkv计算成本增 05/22 23:50
9F:→ chang1248w: 加但参数量不变 05/22 23:50
10F:→ majaja8787: oh ok!我知道了,感谢您 05/23 08:46
11F:→ yoyololicon: 这边的参数指模型自带的参数 QKV矩阵不是 05/23 12:54
12F:推 OnePiecePR: 2. 基本上 self-attention,的输入经过几次网路转成 06/01 19:07
13F:→ OnePiecePR: QKV,所有的参数都在形成 QKV 前发生了。所以所有的 06/01 19:07
14F:→ OnePiecePR: 输入都要做 QKV 转换。然後有了 QKV 後,我们会去做 06/01 19:07
15F:→ OnePiecePR: self-attention,这时候的 self-attention 都是数学 06/01 19:07
16F:→ OnePiecePR: 定义计算,没有参数。如果一个 self-attention 没有 06/01 19:07
17F:→ OnePiecePR: 全域 attent,而有 receptive field,这时候如果 rec 06/01 19:07
18F:→ OnePiecePR: eptive field 比较小,只是 self-attention 少一点计 06/01 19:07
19F:→ OnePiecePR: 算,这些都是关於计算量,跟参数无关。 06/01 19:07
20F:→ OnePiecePR: 1. CNN 的卷积功能参数是记录在 filter 的内容,所以 06/01 19:08
21F:→ OnePiecePR: 只跟 receptive field 有关。我们常常说,参数量跟 r 06/01 19:08
22F:→ OnePiecePR: eceptive field 的大小平方成正比。正确来说是:与re 06/01 19:08
23F:→ OnePiecePR: ceptive field 的大小成正比。比如 filter 是 (3, 3) 06/01 19:08
24F:→ OnePiecePR: 就是守 3x3 的范围,(5, 5) 就是守 5x5 的范围。所 06/01 19:08
25F:→ OnePiecePR: 以是跟 “边” 成平方比例,或尺寸 9、25 成正比。标 06/01 19:08
26F:→ OnePiecePR: 准 CNN 卷积层的参数量是 (输入层数 x L x L x filt 06/01 19:08
27F:→ OnePiecePR: er 数量 N + filter 数量),当我们用了 (L, L)的 06/01 19:08
28F:→ OnePiecePR: filter. 06/01 19:08