手推公式之“层归一化”梯度
每天给你送来NLP技术干货!
作者 | godweiyang
出品 | 公众号:算法码上来(ID:GodNLP)
- BEGIN -
今天再来推导一下层归一化(LayerNorm),这是一种常见的归一化方法。
前向传播
假设待归一化的维向量为,均值和标准差分别是和,LayerNorm的参数是和,那么层归一化后的输出为:
这里的极小量是为了防止标准差为0导致溢出。为了简单起见,我们不加上这一项,原公式也就变成了:
反向传播
假设损失函数对输出的梯度是,那么这里需要求三个梯度:、和。
令,那么原公式就变成了:
两个参数的梯度非常简单:
对输入的梯度等于:
推导过程
对输入的梯度可以写成:
这里只需要计算最后一项就行了:
其中只有当的时候才会等于1,否则都等于0。这里只需要求出均值和标准差对的梯度就行了。直接给出结论,证明比较简单,放在了文末:
代入可以得到:
最后带入梯度中可以得到:
均值和标准差的梯度
均值的梯度为:
标准差的计算公式可以写成,所以梯度为:
- END -
最近文章
阅读原文 最新评论
推荐文章
作者最新文章
你可能感兴趣的文章
Copyright Disclaimer: The copyright of contents (including texts, images, videos and audios) posted above belong to the User who shared or the third-party website which the User shared from. If you found your copyright have been infringed, please send a DMCA takedown notice to [email protected]. For more detail of the source, please click on the button "Read Original Post" below. For other communications, please send to [email protected].
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。