假设我有一个参数矩阵W,我正在学习使用梯度下降法。
如果我有理由相信W的列应该彼此大致正交,那么我可以对这个矩阵强加一个特定的正则化吗?
在我看来,似乎是:W T W -diag(W T W)
将惩罚W T W的非对角线元素,其大致对应于W为正交的列。
然而,据我所知,这并不完全可以区分。我应该注意哪些其他方法?
答案 0 :(得分:1)
和的每一部分([W'W - diag(W'W)] ^ 2)(你需要^ 2或abs去除符号,否则你可能有像[[1 -100] [100 1]这样的矩阵]]成本0,即使它不是正交的)是可区分的,为什么你会这样想?只涉及附加和乘法,没有别的。
更大的问题是计算复杂性,因为给定W是d x n,前向和后向传递将具有O(n ^ 2d)复杂度。因此,如果这是一个具有1000个单位的神经网络层,则这种惩罚需要1,000,000,000个计算(而不是正常反向支持中的1,000,000个)。一般而言,应该避免在权重空间中成对惩罚。你可以通过以随机方式对这种类型进行正规化来减少这种情况(类似于辍学 - 只是随机抽取K个单位并仅对它们应用penlty)。