算法面试知识点:Spectral Normalization

图片说明

Spectral Normalization是一种wegiht Normalization技术,和weight-clipping以及gradient penalty一样,也是让模型满足1-Lipschitz条件的方式之一。

Lipschitz(利普希茨)条件限制了函数变化的剧烈程度,即函数的梯度,来确保统计的有界性。因此函数更加平滑,在神经网络的优化过程中,参数变化也会更稳定,不容易出现梯度爆炸。

Lipschitz条件的约束如下所示:

其中代表一个常数,即利普希茨常数。若,则是1-Lipschitz。

在GAN领域,Spectral Normalization有很多应用。在WGAN中,只有满足1-Lipschitz约束时,W距离才能转换成较好求解的对偶问题,使得WGAN更加从容的训练。

如果想让矩阵A映射:满足K-Lipschitz连续,K的最小值为(的最大特征值),那么要想让矩阵A满足1-Lipschitz连续,只需要在A的所有元素上同时除以(Spectral norm)。

Spectral Normalization实际上在做的事,是将每层的参数矩阵除以自身的最大奇异值,本质上是一个逐层SVD的过程,但是真的去做SVD就太耗时了,所以采用幂迭代的方法求解。过程如下图所示:

幂迭代法流程

得到谱范数后,每个参数矩阵上的参数皆除以它,以达到Normalization的目的。

#面经##秋招##实习##面试八股文##面霸的自我修养#
全部评论
这种算法看起来挺厉害的
点赞 回复 分享
发布于 2022-08-26 18:58 陕西

相关推荐

11-03 13:01
西南大学 Java
mengnankk:28不要投让27的先投,先投带动后投
点赞 评论 收藏
分享
程序员牛肉:你这简历有啥值得拷打的?在牛客你这种简历一抓一大把,也就是个人信息不一样而已。 关键要去找亮点,亮点啊,整个简历都跟流水线生产出来的一样。
点赞 评论 收藏
分享
评论
2
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务