我正在尝试使用正则化(L1 或 L2)实现逻辑回归。mnrfit() 函数不实现正则化。是否有任何内置函数可以进行正则化,或者我必须推出自己的正则化代码?如果是这样,有没有我可以看的教程?我一直在看的论文在数学上相当密集。
问问题
2325 次
2 回答
1
Liblinear 是我们使用的标准。
于 2013-03-26T00:53:20.530 回答
1
L1 和 L2 正则化非常容易实现。
L1 正则化通过在每个训练步骤后减去固定量的权重绝对值来工作。因此,如果 L1 正则化系数为 0.01,您的权重 (1.0, -2.0, 3.0) 将变为 (0.99, -1.99, 2.99)。
L2 正则化通过减去一定百分比的权重来工作。系数为 0.01,这意味着将权重向量乘以 1。- 0.01 = 0.99。权重 (1.0, -2.0, 3.0) 将变为 (0.99, -1.98, 2.97)。这也称为重量衰减。
正如你所看到的,L1 正则化将小权重拉向 0。另一方面,L2 正则化对小权重几乎没有影响,但大大减少了大权重。
于 2013-03-26T01:10:31.140 回答