当应用辍学掩膜时,为什么可以接受将产生的状态除以存活神经元的百分比?
我知道这是为了防止信号消失。但是我做了测试,发现它不成比例地放大了结果的状态。
假设原始状态是$(0.1,0.1,0.2,5.0)$,而我们的掩膜是$(0,0,1,1)$ ( 50%的存活神经元)。
因此,原来的长度是$$ \begin{align*}\sqrt{( 0.1 \x0.1+ 0.1 \x0.1\x0.1+ 0.2 \x0.2+5\x5)} &= \sqrt{25.06} \ So 5.006。
对于掩模向量,其长度为$$\sqrt{ 0.2 \x0.2+5\x5}= \sqrt{25.04} \约5.004.$
按补偿计算,5.004美元/ 0.5美元=10.008美元
这似乎是不正确的:我的补偿只是炸毁了状态向量。也许我们应该采取不同的补偿措施--更谨慎些?我认为,如果我们掩盖单个权重(就像DropConnect那样),情况会变得更糟。
在我的实际测试中,$192$元素的状态向量的长度为$0.885美元,而蒙面向量的长度为$1.305美元。
发布于 2018-03-01 18:46:09
你的例子是精心挑选的:你掩盖了小数字,并保留了一个大数字。但辍学是随机的。以下六个掩码以及向量长度的相应值都同样可能出现:$$ \begin{0.1^2+*} &(1,1,0,0):&sqrt{0.1^2+ 0.1^2} &\约0.1414,\ &(1,0,1,0):&sqrt{0.1^2+ 0.2^2}和\\sqrt{0.1^2+0.2}&\ &(1,0,0,1):&sqrt{0.1^2+5,2}&x5.0010,\ &(0,1,1,0):&\sqrt{0.1^2 + 0.2^2} &\\约0.2236,\ &(0,1,0,1):&sqrt{0.1^2+ 5^2} &\x 5.0010,\ &(0,0,1,( 1):&sqrt{0.2^2+ 5^2} &\\ $$。\ \end{align*} $$平均向量长度为$$ \分形16 (0.1414+0.2236+5.0010+0.2236+5.0010+5.0040) = 2.5991,$$约为原始向量长度$5.006$的一半。因此,将其除以50美元的辍学率是有意义的。
https://datascience.stackexchange.com/questions/28482
复制相似问题