def weight_variable(shape): initial = tf.random_normal(shape, stddev=0.1) return tf.Variable(initial)
# Hidden layer with RELU activation layer_1 = tf.matmul(x, weights['h1']) + biases['b1'] layer_1 = tf.nn.relu(layer_1) # Hidden layer with RELU activation layer_2 = tf.matmul(layer_1, weights['h2']) + biases['b2'] layer_2 = tf.nn.relu(layer_2) # Output layer with linear activation out_layer = tf.matmul(layer_2, weights['out']) + biases['out'] return out_layer # Store layers weight & bias weights = { 'h1': tf.Variable(tf.zeros([n_input, n_hidden_1])), 'h2': tf.Variable(tf.zeros([n_hidden_1, n_hidden_2])), 'out': tf.Variable(tf.random_normal([n_hidden_2, n_classes])) } biases = { 'b1': tf.Variable(tf.random_normal([n_hidden_1])), 'b2': tf.Variable(tf.random_normal([n_hidden_2])), 'out': tf.Variable(tf.random_normal([n_classes])) } # Construct model pred = multilayer_perceptron(x, weights, biases) # Define loss and optimizer cost = tf.reduce_mean( tf.nn.softmax_cross_entropy_with_logits(logits=pred, labels=y)) optimizer = tf.train.GradientDescentOptimizer( learning_rate=learning_rate).minimize(cost)