超细节!从源代码剖析Self-Attention知识点

本文详细探讨了Self-Attention的核心——利用上下文增强词的语义表示,以及其时间复杂度分析。通过Q&A形式揭示了Self-Attention在Transformer/BERT中的运作,强调了多头Attention的重要性。同时,分析了不乘QKV参数矩阵对Self-Attention的影响,并提供了Pytorch版Self-Attention的实现代码,帮助读者深入理解这一关键机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

©PaperWeekly 原创 · 作者|海晨威

学校|同济大学硕士生

研究方向|自然语言处理

在当前的 NLP 领域,Transformer / BERT 已然成为基础应用,而 Self-Attention  则是两者的核心部分,下面尝试用 Q&A 和源码的形式深入 Self-Attention 的细节

Q&A

1. Self-Attention 的核心是什么?

Self-Attention 的核心是用文本中的其它词来增强目标词的语义表示,从而更好的利用上下文的信息。

2. Self-Attention 的时间复杂度是怎么计算的?

Self-Attention 时间复杂度: ,这里,n 是序列的长度,d 是 embedding 的维度,不考虑 batch 维。

Self-Attention 包括三个步骤:相似度计算,softmax 和加权平均

它们分别的时间复杂度是:

相似度计算 可以看作大小为 的两个矩阵相乘:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值