动手学深度学习 | 注意力机制 | 64
想做深度学*研究的从这讲开始看就行了说实话...
注意力机制
随意:跟随意志
注意力机制是没有心理学背景的,但是可以从心理学的角度进行解释。
- 卷积、全连接、池化层都只考虑不随意线索
就像是池化也只是把其中最大那一块提取出来,其实也不知道要干什么,就看过去。
- 注意力机制则显示的对随意线索进行建模(主动出击)
- query:随意线索。 就是想要干什么,比如想要看书,想要喝咖啡。
- key-value:每个输入是一个value,不随意线索是key,它们组成一个k-v pair。
- 通过注意力池化层来有偏向的选择某些输入
和之前见过的池化层不同,attention pooling多了一个query,这个query就是我感兴趣的东西,会找到对应的一个k-v pair。
注意力可以认为深度学**10年比较重要的突破,CNN和RNN都不能算,因为在80年代就有的东西。但是其实从统计那边看的话,5,60年代就有了。
非参就是我们不要学参数。
\((x_i,y_i)\)这是输出的k-v pair。
最傻的查询方法就是不管x,不管输入什么x都对所有的求个均值。
上面之所以说是非参,是因为没有参数需要学*,给一个x就可以直接计算。
这块东西东西其实和注意力机制已经非常非常相似了。
这里使用一个核函数就把注意力和softmax给联系起来了..
代码
这个实验就是想说,通过学*参数w,可以让注意力权重\(\alpha(x,x_i)\)更好的拟合...