简介 得到矩阵 Q, K, V之后就可以计算出 Self-Attention 的输出了,计算的公式如下: A t t e n t i o n ( Q , K , V ) = S o f t m a x ( Q K T d k ) V Attention(Q,K,V)=Softmax(\frac{QK^T}{\sqrt{d_k}})V Attention(Q,K,V)=Softmax(dk
简单说法是为了让方差到1,推公式也好推。但是没几个人说为什么方差要到1. 如果不除以根号dk,显然QK有可能很大,这就让softmax更有能力得到接近one-hot的结果。这本应是好的,但是从实践来看,我们并不要求一定要输出one-hot,这有点over-fitting的感觉了。差不多就行。 还有更重要的理由。softmax求导是 a − a 2 a-a^2 a−a2, a a a是softmax
用Python 完成普通计算器的功能 1. 删除或取消变量 pv = 22r = 0.1n = 5del(n)print(n)结果:NameError: name 'n' is not defined 2.加减乘除 s=3.09+2.1*5.2-3/0.56print(s)结果8.652857142857144 如果意外输出两次//,会得到奇怪的结果,双斜杠代表整数除法,结
P3396 哈希冲突 题目链接 从这篇博客来做的这道题 分析: 看到这个题的数据范围是有点懵,这能怎么做啊? 先看暴力 O ( n 2 ) O(n^2) O(n2) , for (int i = x; i <= n; i += p)ans += value[i]; 如果我们做预处理的话, a n s [ p ] [ x ] ans[p][x] ans[p][x] , % p \%p
题目: 题目链接:[LUOGU 哈希冲突] 题解: 一看到是rxz大佬的题目,,就上去做了做,但是,,为什么挂出来分块的标签,但是呢,,,,跟分块,,一点关系都没有啊!!!!! 不瞎扯了,,,进入正题,,, 先解释一下题面: 就是给你一串数,对于标号进行操作,标号取模得x的,把他给的数的劝权值进行取和。 就是 n n n\sqrt{n} nn 进行预处理,之后的可以 O ( 1 ) O(
首先连通块,所以点分治肯定是 Trick1 钦定选根的连通块dp 对于钦定选根的连通块dp,有一种常见思路 先对原树求其dfn序,按dfn序倒序求解 具体的,对于当前点 i i i(注意这里都是指dfn序),我们可以钦定 i i i 是否选 如果 i i i 选,就由 i + 1 i+1 i+1,也就是 i i i 的第一个儿子转移过来(因为只有他选他子树才可能被选) 如果
1.问题 推广成,如何证明 根号 p(p是素数)是无理数 素数:一个大于1的自然数,如果除了1和它自身外,不能被其他自然数整除(除0以外)的数称之为素数。 2.思路 反证法: 假如 ( p ) = a b \sqrt{(p)} = \frac{a}{b} (p) =ba 其中, a, b互质的整数。 然后, a 2 = p b 2 a^2 = p b^2 a2=pb2 假如 a
根号分治 根号分治是一种优美的暴力。 顾名思义,根号分治就是对于一个长度为 N N N的数列,将查询和修改分为 ≤ N \leq N ≤N和 > N >N >N的两个部分来处理。将两个部分分别处理并拼在一起,来优化时间复杂度。 例题 洛谷P3396 哈希冲突 有一个长度为 n n n的序列 a a a和 m m m次操作,每次操作有两个类型: 查询所有满足 k % x = y k\
根号分治 根号分治是一种优美的暴力。 顾名思义,根号分治就是对于一个长度为 N N N的数列,将查询和修改分为 ≤ N \leq N ≤N和 > N >N >N的两个部分来处理。将两个部分分别处理并拼在一起,来优化时间复杂度。 例题 洛谷P3396 哈希冲突 有一个长度为 n n n的序列 a a a和 m m m次操作,每次操作有两个类型: 查询所有满足 k % x = y k\