我天真地认为将 L2 正则化标准化为张量中的元素数量会更好,但我没有看到有人这样做。我错过了什么?
我会在多层全连接NN中说:
x = input # vector length n_in
w1 = weights # shape n_in x n_1
b_1 = bias # shape n_1
h_1 = Relu(w1 * x + b_1)
w2 = weights # shape n_1 x n_2
b_2 = bias # shape n_2
h_2 = Relu(w2 * h_1 + b_2)
那么L2损失通常定义为:
L2 = lambda * ( sum((w1) ^2) + sum((w2) ^2) )
如果第一层比第二层大得多,则比上述 L2 定义中的第一项要大得多,实际上使第二项无用。我认为这会更好:
L2 = lambda * ( sum((w1) ^2)/(n_in*n_1) + sum((w2) ^2)/(n_1*n_2) )
这也将使超参数 lambda 与您选择的节点数无关。但是,我没有看到有人这样做,所以我怀疑我错过了一些东西。它是什么?