L1 类tf_keras.regularizers.L1(l1=0.01, **kwargs)
一个应用 L1 正则化惩罚的正则化器。
L1 正则化惩罚的计算方式为:loss = l1 * reduce_sum(abs(x))
L1 可以作为字符串标识符传递给层
>>> dense = tf.keras.layers.Dense(3, kernel_regularizer='l1')
在这种情况下,使用的默认值为 l1=0.01。
参数
L2 类tf_keras.regularizers.L2(l2=0.01, **kwargs)
一个应用 L2 正则化惩罚的正则化器。
L2 正则化惩罚的计算方式为:loss = l2 * reduce_sum(square(x))
L2 可以作为字符串标识符传递给层
>>> dense = tf.keras.layers.Dense(3, kernel_regularizer='l2')
在这种情况下,使用的默认值为 l2=0.01。
参数
L1L2 类tf_keras.regularizers.L1L2(l1=0.0, l2=0.0)
一个同时应用 L1 和 L2 正则化惩罚的正则化器。
L1 正则化惩罚的计算方式为:loss = l1 * reduce_sum(abs(x))
L2 正则化惩罚的计算方式为 loss = l2 * reduce_sum(square(x))
L1L2 可以作为字符串标识符传递给层
>>> dense = tf.keras.layers.Dense(3, kernel_regularizer='l1_l2')
在这种情况下,使用的默认值为 l1=0.01 和 l2=0.01。
参数
OrthogonalRegularizer 类tf_keras.regularizers.OrthogonalRegularizer(factor=0.01, mode="rows")
鼓励输入向量彼此正交的正则化器。
它可以应用于矩阵的行(mode="rows")或列(mode="columns")。当应用于形状为 (input_dim, units) 的 Dense 核时,行模式会使特征向量(即输出空间的基)彼此正交。
参数
factor 乘以输入行(如果 mode="rows",或列如果 mode="columns")的 L2 归一化点的平均值成正比,不包括每行/列与自身的乘积。默认为 0.01。{"rows", "columns"} 之一。默认为 "rows"。在行模式下,正则化效果旨在使输入的行彼此正交。在列模式下,它旨在使输入的列彼此正交。示例
>>> regularizer = tf.keras.regularizers.OrthogonalRegularizer(factor=0.01)
>>> layer = tf.keras.layers.Dense(units=4, kernel_regularizer=regularizer)