功能: 给优化变量设置正则化

格式:
NetOptSetRegForVar(opt, var, fun, r)
NetOptSetRegForVar(opt, var, fun)
NetOptSetRegForVar(opt, var)

opt : 由{NetCreateOptimier<矩阵运算\NetCreateOptimier>}创建的优化器
var : 由{NetCreateVar<矩阵运算\NetCreateVar>}创建的优化变量, 如果为空, 则对所有优化变量进行正则化
fun : 字符串存储的正则化函数类型, 如果为空, 则表示对var取消正则化操作.
r   : 正则化项对应的权重系数

说明:
1、函数执行成功返回1
2、当var为空时, 只有opt使用{NetOptSetWork<矩阵运算\NetOptSetWork>}函数成功设置了网络任务后, 才能操作成功.
3、本函数主要对优化变量设置正则化操作进而缓解出现的过拟合现象, 这里主要是对变量在整体误差上加上一个变量的约束函数, 进而达到正则化的目的.
4、另一种屏蔽层节点(神经元)的操作, 可通过函数{NetOptSetDropoutForLayer<矩阵运算\NetOptSetDropoutForLayer>}设置
5、目前fun主要支持如下的正则化操作(下面的n为训练集的数量)
L1 : 参数r为权重系数, 对应函数项为 {Abs<矩阵运算\Abs>}(var) * r / n
L2 : 对应函数项为 var^2 * r / n

例子:
w = {NetCreateVar<矩阵运算\NetCreateVar>}(4,2);
opt = {NetCreateOptimier<矩阵运算\NetCreateOptimier>}();

//假如提前有变量w以及优化器opt, 则执行如下代码将为w变量设置L2正则操作, 其中权重系数设置为0.1
NetOptSetRegForVar(opt, w, "L2", 0.1)