![](https://csdnimg.cn/release/download_crawler_static/86283483/bg8.jpg)
深度学习:深度学习中的正则化 朱明超
N = 20000 # 取 20000 条数据用以训练
indices = np.random.permutation(range(X_train.shape[0]))[:N]
X_train, y_train = X_train[indices], y_train[indices]
print(X_train.shape, y_train.shape)
X_train /= 255
X_train = (X_train - 0.5) * 2
X_test /= 255
X_test = (X_test - 0.5) * 2
(60000, 784) (60000, 10)
(20000, 784) (20000, 10)
[7]: """
不引入正则化
"""
model = DFN(hidden_dims_1=200, hidden_dims_2=10)
model.fit(X_train, y_train, n_epochs=20, batch_size=64)
[Epoch 1] Avg. loss: 2.286 Delta: inf (0.01m/epoch)
[Epoch 2] Avg. loss: 2.209 Delta: 0.078 (0.01m/epoch)
[Epoch 3] Avg. loss: 1.993 Delta: 0.215 (0.01m/epoch)
[Epoch 4] Avg. loss: 1.640 Delta: 0.353 (0.01m/epoch)
[Epoch 5] Avg. loss: 1.305 Delta: 0.335 (0.01m/epoch)
[Epoch 6] Avg. loss: 1.063 Delta: 0.242 (0.01m/epoch)
[Epoch 7] Avg. loss: 0.898 Delta: 0.166 (0.01m/epoch)
[Epoch 8] Avg. loss: 0.781 Delta: 0.117 (0.01m/epoch)
[Epoch 9] Avg. loss: 0.696 Delta: 0.085 (0.01m/epoch)
[Epoch 10] Avg. loss: 0.634 Delta: 0.062 (0.01m/epoch)
[Epoch 11] Avg. loss: 0.586 Delta: 0.048 (0.01m/epoch)
[Epoch 12] Avg. loss: 0.549 Delta: 0.037 (0.01m/epoch)
[Epoch 13] Avg. loss: 0.518 Delta: 0.031 (0.02m/epoch)
[Epoch 14] Avg. loss: 0.493 Delta: 0.025 (0.02m/epoch)
[Epoch 15] Avg. loss: 0.473 Delta: 0.021 (0.01m/epoch)
[Epoch 16] Avg. loss: 0.454 Delta: 0.018 (0.01m/epoch)
[Epoch 17] Avg. loss: 0.439 Delta: 0.015 (0.01m/epoch)
[Epoch 18] Avg. loss: 0.425 Delta: 0.014 (0.01m/epoch)
[Epoch 19] Avg. loss: 0.414 Delta: 0.012 (0.01m/epoch)
[Epoch 20] Avg. loss: 0.404 Delta: 0.010 (0.01m/epoch)
[8]: print("without regularization -- accuracy:{}".format(model.evaluate(X_test, y_test)))
###### if show params ######
# print("regular", model.hyperparams["regular"], "\nparams:", model.hyperparams["components"])
without regularization -- accuracy:0.8961
[9]: """
引入 l2 正则化
"""
model_re = DFN(hidden_dims_1=200, hidden_dims_2=10, regular_act="l2(lambd=0.01)")
model_re.fit(X_train, y_train, n_epochs=20)
[Epoch 1] Avg. loss: 2.363 Delta: inf (0.02m/epoch)
[Epoch 2] Avg. loss: 2.284 Delta: 0.079 (0.02m/epoch)
[Epoch 3] Avg. loss: 2.068 Delta: 0.216 (0.02m/epoch)
[Epoch 4] Avg. loss: 1.729 Delta: 0.339 (0.02m/epoch)
[Epoch 5] Avg. loss: 1.428 Delta: 0.301 (0.02m/epoch)
[Epoch 6] Avg. loss: 1.226 Delta: 0.202 (0.02m/epoch)
[Epoch 7] Avg. loss: 1.096 Delta: 0.130 (0.02m/epoch)
[Epoch 8] Avg. loss: 1.013 Delta: 0.083 (0.02m/epoch)
[Epoch 9] Avg. loss: 0.958 Delta: 0.055 (0.02m/epoch)
8