|
|
|
@ -5,9 +5,11 @@ import paddle.v2.framework.optimizer as optimizer
|
|
|
|
|
|
|
|
|
|
from paddle.v2.framework.framework import Program, g_program
|
|
|
|
|
from paddle.v2.framework.executor import Executor
|
|
|
|
|
from paddle.v2.framework.regularizer import L2DecayRegularizer
|
|
|
|
|
|
|
|
|
|
import numpy as np
|
|
|
|
|
|
|
|
|
|
BATCH_SIZE = 128
|
|
|
|
|
init_program = Program()
|
|
|
|
|
program = Program()
|
|
|
|
|
image = layers.data(
|
|
|
|
@ -17,22 +19,35 @@ image = layers.data(
|
|
|
|
|
program=program,
|
|
|
|
|
init_program=init_program)
|
|
|
|
|
|
|
|
|
|
param_attr = {
|
|
|
|
|
'name': None,
|
|
|
|
|
'init_attr': {
|
|
|
|
|
'type': 'uniform_random',
|
|
|
|
|
'min': -1.0,
|
|
|
|
|
'max': 1.0
|
|
|
|
|
},
|
|
|
|
|
'regularization': L2DecayRegularizer(0.0005 * BATCH_SIZE)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
hidden1 = layers.fc(input=image,
|
|
|
|
|
size=128,
|
|
|
|
|
act='relu',
|
|
|
|
|
program=program,
|
|
|
|
|
init_program=init_program)
|
|
|
|
|
init_program=init_program,
|
|
|
|
|
param_attr=param_attr)
|
|
|
|
|
hidden2 = layers.fc(input=hidden1,
|
|
|
|
|
size=64,
|
|
|
|
|
act='relu',
|
|
|
|
|
program=program,
|
|
|
|
|
init_program=init_program)
|
|
|
|
|
init_program=init_program,
|
|
|
|
|
param_attr=param_attr)
|
|
|
|
|
|
|
|
|
|
predict = layers.fc(input=hidden2,
|
|
|
|
|
size=10,
|
|
|
|
|
act='softmax',
|
|
|
|
|
program=program,
|
|
|
|
|
init_program=init_program)
|
|
|
|
|
init_program=init_program,
|
|
|
|
|
param_attr=param_attr)
|
|
|
|
|
|
|
|
|
|
label = layers.data(
|
|
|
|
|
name='y',
|
|
|
|
@ -48,8 +63,6 @@ avg_cost = layers.mean(x=cost, program=program, init_program=init_program)
|
|
|
|
|
sgd_optimizer = optimizer.SGDOptimizer(learning_rate=0.001)
|
|
|
|
|
opts = sgd_optimizer.minimize(avg_cost)
|
|
|
|
|
|
|
|
|
|
BATCH_SIZE = 128
|
|
|
|
|
|
|
|
|
|
train_reader = paddle.batch(
|
|
|
|
|
paddle.reader.shuffle(
|
|
|
|
|
paddle.dataset.mnist.train(), buf_size=8192),
|
|
|
|
|