【问题标题】:How to tune L2 Regularization如何调整 L2 正则化
【发布时间】:2017-03-20 15:48:51
【问题描述】:

我目前正在 Udactity 上学习 Deep Learning

我成功地构建并训练了一个带有一个隐藏层的神经网络,并且测试数据的准确率达到了 93%。然而,当我将 L2 正则化引入我的模型时。准确率下降到 89%。我的正则化有问题吗?

beta = 0.01

n_hidden_layer = 1024
n_input = 784         # 28* 28
n_classes = 10

# Variables
weights = {
    'h1': tf.Variable(tf.truncated_normal([n_input, n_hidden_layer], stddev=0.1)),
    'out': tf.Variable(tf.truncated_normal([n_hidden_layer, n_classes], stddev=0.1))
}
biases = {
    'b1': tf.Variable(tf.constant(0.1, shape=[n_hidden_layer])),
    'out': tf.Variable(tf.constant(0.1, shape=[n_classes]))
}

def multilayer_perceptron(x, weights, biases):
    # Hidden layer with RELU activation
    layer_1 = tf.add(tf.matmul(x, weights['h1']), biases['b1'])
    layer_1 = tf.nn.relu(layer_1)
    # Output layer with linear activation
    out_layer = tf.matmul(layer_1, weights['out']) + biases['out']
    return out_layer

# Construct model 
pred = multilayer_perceptron(x, weights, biases)
valid_pred = multilayer_perceptron(tf_valid_dataset, weights, biases)
test_pred = multilayer_perceptron(tf_test_dataset, weights, biases)

# Define loss and optimizer
# L' = L + Beta * (0.5 * ||w||^2) 
l2 = beta * tf.nn.l2_loss(weights['h1']) + beta * tf.nn.l2_loss(weights['out'])
loss = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(labels=y, logits=pred) + l2)
optimizer = tf.train.GradientDescentOptimizer(0.5).minimize(loss)

适量的正则化应该可以提高您的验证/测试准确性。

但是当我将beta 更改为 0.001 时,我得到了 93.7% 的准确率。那么,我应该将beta 定义为tf.Variable 来调整自身吗?

【问题讨论】:

    标签: machine-learning tensorflow neural-network deep-learning


    【解决方案1】:

    要理解 beta 变量的原因,您必须了解 L2 正则化的作用:它惩罚了大权重!它应该对这些权重进行多少惩罚取决于应用程序。某些应用程序需要比其他应用程序更大的权重。

    beta 变量是您必须“手动”设置的参数。这不是你应该添加为 tf.Variable 的东西。但是,您可以做的是创建一个快速的超参数搜索,您可以在其中迭代多个 beta 值以选择最佳值!尝试绘制多个值的损失以确定最佳值!

    如果您还有任何问题,请告诉我!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-28
      • 2017-07-30
      • 1970-01-01
      相关资源
      最近更新 更多