Python tensorflow.random_uniform_initializer() Examples
The following are 30
code examples of tensorflow.random_uniform_initializer().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
tensorflow
, or try the search function
.
Example #1
Source File: common.py From tensorflow_multigpu_imagenet with MIT License | 6 votes |
def fullyConnected(x, num_units_out, wd= 0.0, weight_initializer= None, bias_initializer= None, inference_only= False): num_units_in = x.get_shape()[1] stddev = 1./tf.sqrt(tf.cast(num_units_out, tf.float32)) if weight_initializer is None: weight_initializer = tf.random_uniform_initializer(minval= -stddev, maxval= stddev, dtype= tf.float32) if bias_initializer is None: bias_initializer = tf.random_uniform_initializer(minval= -stddev, maxval= stddev, dtype= tf.float32) weights = _get_variable('weights', [num_units_in, num_units_out], weight_initializer, tf.contrib.layers.l2_regularizer(wd)) biases = _get_variable('biases', [num_units_out], bias_initializer) return tf.nn.xw_plus_b(x, weights, biases) # Convolution Layer
Example #2
Source File: policies.py From stable-baselines with MIT License | 6 votes |
def make_actor(self, obs=None, reuse=False, scope="pi"): if obs is None: obs = self.processed_obs with tf.variable_scope(scope, reuse=reuse): if self.feature_extraction == "cnn": pi_h = self.cnn_extractor(obs, **self.cnn_kwargs) else: pi_h = tf.layers.flatten(obs) for i, layer_size in enumerate(self.layers): pi_h = tf.layers.dense(pi_h, layer_size, name='fc' + str(i)) if self.layer_norm: pi_h = tf.contrib.layers.layer_norm(pi_h, center=True, scale=True) pi_h = self.activ(pi_h) self.policy = tf.nn.tanh(tf.layers.dense(pi_h, self.ac_space.shape[0], name=scope, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3))) return self.policy
Example #3
Source File: vision_baseline_lstm.py From DOTA_models with Apache License 2.0 | 6 votes |
def lstm_setup(name, x, batch_size, is_single_step, lstm_dim, lstm_out, num_steps, state_input_op): # returns state_name, state_init_op, updated_state_op, out_op with tf.name_scope('reshape_'+name): sh = x.get_shape().as_list() x = tf.reshape(x, shape=[batch_size, -1, sh[-1]]) with tf.variable_scope(name) as varscope: cell = tf.contrib.rnn.LSTMCell( num_units=lstm_dim, forget_bias=1.0, state_is_tuple=False, num_proj=lstm_out, use_peepholes=True, initializer=tf.random_uniform_initializer(-0.01, 0.01, seed=0), cell_clip=None, proj_clip=None) sh = [batch_size, 1, lstm_dim+lstm_out] state_init_op = tf.constant(0., dtype=tf.float32, shape=sh) fn = lambda ns: lstm_online(cell, ns, x, state_input_op, varscope) out_op, updated_state_op = tf.cond(is_single_step, lambda: fn(1), lambda: fn(num_steps)) return name, state_init_op, updated_state_op, out_op
Example #4
Source File: ptb.py From tensor-fsmn with MIT License | 6 votes |
def main(): sys.stdout.write("start ptb") raw_data = reader.ptb_raw_data("") train_data, valid_data, test_data, word_to_id = raw_data with tf.Graph().as_default(), tf.Session() as session: initializer = tf.random_uniform_initializer(-0.04, 0.04) with tf.variable_scope("model", reuse=None, initializer=initializer): model = PTBModel() saver = tf.train.Saver() tf.initialize_all_variables().run() model.train_writer = tf.train.SummaryWriter('./train', graph=session.graph) for i in range(13): sys.stdout.write("Epoch: %d\n" % (i + 1)) train_perplexity = model.train(session, train_data) sys.stdout.write("Epoch: %d Train Perplexity: %.3f\n" % (i + 1, train_perplexity)) valid_perplexity = model.evaluate(session, valid_data) sys.stdout.write("Epoch: %d Valid Perplexity: %.3f\n" % (i + 1, valid_perplexity)) test_perplexity = model.evaluate(session, test_data) sys.stdout.write("Epoch: %d Test Perplexity: %.3f\n" % (i + 1, test_perplexity)) # model.predict(session, test_data, word_to_id) saver.save(session, 'model.ckpt')
Example #5
Source File: optimize.py From fine-lm with MIT License | 6 votes |
def get_variable_initializer(hparams): """Get variable initializer from hparams.""" if not hparams.initializer: return None if not tf.contrib.eager.in_eager_mode(): tf.logging.info("Using variable initializer: %s", hparams.initializer) if hparams.initializer == "orthogonal": return tf.orthogonal_initializer(gain=hparams.initializer_gain) elif hparams.initializer == "uniform": max_val = 0.1 * hparams.initializer_gain return tf.random_uniform_initializer(-max_val, max_val) elif hparams.initializer == "normal_unit_scaling": return tf.variance_scaling_initializer( hparams.initializer_gain, mode="fan_avg", distribution="normal") elif hparams.initializer == "uniform_unit_scaling": return tf.variance_scaling_initializer( hparams.initializer_gain, mode="fan_avg", distribution="uniform") elif hparams.initializer == "xavier": return tf.contrib.layers.xavier_initializer() else: raise ValueError("Unrecognized initializer: %s" % hparams.initializer)
Example #6
Source File: models.py From lirpg with MIT License | 6 votes |
def __call__(self, obs, reuse=False): with tf.variable_scope(self.name) as scope: if reuse: scope.reuse_variables() x = obs x = tf.layers.dense(x, 64) if self.layer_norm: x = tc.layers.layer_norm(x, center=True, scale=True) x = tf.nn.relu(x) x = tf.layers.dense(x, 64) if self.layer_norm: x = tc.layers.layer_norm(x, center=True, scale=True) x = tf.nn.relu(x) x = tf.layers.dense(x, self.nb_actions, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) return x
Example #7
Source File: models.py From lirpg with MIT License | 6 votes |
def __call__(self, obs, action, reuse=False): with tf.variable_scope(self.name) as scope: if reuse: scope.reuse_variables() x = obs x = tf.layers.dense(x, 64) if self.layer_norm: x = tc.layers.layer_norm(x, center=True, scale=True) x = tf.nn.relu(x) x = tf.concat([x, action], axis=-1) x = tf.layers.dense(x, 64) if self.layer_norm: x = tc.layers.layer_norm(x, center=True, scale=True) x = tf.nn.relu(x) x = tf.layers.dense(x, 1, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) return x
Example #8
Source File: layer_utils.py From EasyRL with Apache License 2.0 | 6 votes |
def __init__(self, name, layer_conf): self._name = layer_conf.pop('name', None) or name activation_name = layer_conf.get('activation', None) if activation_name: layer_conf['activation'] = Layer.activation_dict[activation_name] self._kernel_initializer = layer_conf.pop('kernel_initializer', None) if isinstance(self._kernel_initializer, str): assert self._kernel_initializer in ('random_normal_initializer', 'random_uniform_initializer', 'glorot_normal_initializer', 'glorot_uniform_initializer'), \ "Invalid value of kernel_initializer, available value is one of " \ "['random_normal_initializer', 'random_uniform_initializer'," \ "'glorot_normal_initializer', 'glorot_uniform_initializer']" self._kernel_initializer = Layer.initializer_dict[ self._kernel_initializer] elif (isinstance(self._kernel_initializer, int) or isinstance(self._kernel_initializer, float)): self._kernel_initializer = tf.constant_initializer( value=self._kernel_initializer)
Example #9
Source File: embedding_matrix.py From post--memorization-in-rnns with MIT License | 6 votes |
def embedding_matrix(vocab_size: int, dim: int, name: str=None): with tf.name_scope(None, 'embedding-matrix'): # compute initialization paramters shape = (vocab_size - 1, dim) scale = tf.sqrt(1 / shape[0]) # get or initialize embedding matrix w = tf.get_variable( name, shape, dtype=tf.float32, initializer=tf.random_uniform_initializer( minval=-scale, maxval=scale ), trainable=True ) # 1st row should be zero and not be updated by backprop because of # zero padding. emb = tf.concat([ tf.zeros((1, dim), dtype=tf.float32), w ], 0) return emb
Example #10
Source File: embedder_utils_test.py From Counterfactual-StoryRW with MIT License | 6 votes |
def test_get_embedding(self): """Tests :func:`~texar.modules.embedder.embedder_utils.get_embedding`. """ vocab_size = 100 emb = embedder_utils.get_embedding(num_embeds=vocab_size) self.assertEqual(emb.shape[0].value, vocab_size) self.assertEqual(emb.shape[1].value, embedder_utils.default_embedding_hparams()["dim"]) hparams = { "initializer": { "type": tf.random_uniform_initializer(minval=-0.1, maxval=0.1) }, "regularizer": { "type": tf.keras.regularizers.L1L2(0.1, 0.1) } } emb = embedder_utils.get_embedding( hparams=hparams, num_embeds=vocab_size, variable_scope='embedding_2') self.assertEqual(emb.shape[0].value, vocab_size) self.assertEqual(emb.shape[1].value, embedder_utils.default_embedding_hparams()["dim"])
Example #11
Source File: generator.py From UROP-Adversarial-Feature-Matching-for-Text-Generation with GNU Affero General Public License v3.0 | 6 votes |
def init_param(self): idm = self.input_dim hs = self.hidden_size ws = len(self.window) nf = idm * ws # author's special initlaization strategy. self.Wemb = tf.get_variable(name=self.name + '_Wemb', shape=[self.vocab_size, idm], dtype=tf.float32, initializer=tf.random_uniform_initializer()) self.bhid = tf.get_variable(name=self.name + '_bhid', shape=[self.vocab_size], dtype=tf.float32, initializer=tf.zeros_initializer()) self.Vhid = tf.get_variable(name=self.name + '_Vhid', shape=[hs, idm], dtype=tf.float32, initializer=tf.random_uniform_initializer()) self.Vhid = dot(self.Vhid, self.Wemb) # [hidden_size, vocab_size] self.i2h_W = tf.get_variable(name=self.name + '_i2h_W', shape=[idm, hs * 4], dtype=tf.float32, initializer=tf.random_uniform_initializer()) self.h2h_W = tf.get_variable(name=self.name + '_h2h_W', shape=[hs, hs * 4], dtype=tf.float32, initializer=tf.orthogonal_initializer()) self.z2h_W = tf.get_variable(name=self.name + '_z2h_W', shape=[nf, hs * 4], dtype=tf.float32, initializer=tf.random_uniform_initializer()) b_init_1 = tf.zeros((hs,)) b_init_2 = tf.ones((hs,)) * 3 b_init_3 = tf.zeros((hs,)) b_init_4 = tf.zeros((hs,)) b_init = tf.concat([b_init_1, b_init_2, b_init_3, b_init_4], axis=0) # b_init = tf.constant(b_init) # self.b = tf.get_variable(name=self.name + '_b', shape=[hs * 4], dtype=tf.float32, initializer=b_init) self.b = tf.get_variable(name=self.name + '_b', dtype=tf.float32, initializer=b_init) # ValueError: If initializer is a constant, do not specify shape. self.C0 = tf.get_variable(name=self.name + '_C0', shape=[nf, hs], dtype=tf.float32, initializer=tf.random_uniform_initializer()) self.b0 = tf.get_variable(name=self.name + '_b0', shape=[hs], dtype=tf.float32, initializer=tf.zeros_initializer())
Example #12
Source File: models.py From HardRLWithYoutube with MIT License | 6 votes |
def __call__(self, obs, reuse=False): with tf.variable_scope(self.name) as scope: if reuse: scope.reuse_variables() x = obs x = tf.layers.dense(x, 64) if self.layer_norm: x = tc.layers.layer_norm(x, center=True, scale=True) x = tf.nn.relu(x) x = tf.layers.dense(x, 64) if self.layer_norm: x = tc.layers.layer_norm(x, center=True, scale=True) x = tf.nn.relu(x) x = tf.layers.dense(x, self.nb_actions, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) return x
Example #13
Source File: models.py From HardRLWithYoutube with MIT License | 6 votes |
def __call__(self, obs, action, reuse=False): with tf.variable_scope(self.name) as scope: if reuse: scope.reuse_variables() x = obs x = tf.layers.dense(x, 64) if self.layer_norm: x = tc.layers.layer_norm(x, center=True, scale=True) x = tf.nn.relu(x) x = tf.concat([x, action], axis=-1) x = tf.layers.dense(x, 64) if self.layer_norm: x = tc.layers.layer_norm(x, center=True, scale=True) x = tf.nn.relu(x) x = tf.layers.dense(x, 1, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) return x
Example #14
Source File: ptb_enas_controller.py From D-VAE with MIT License | 6 votes |
def _create_params(self): initializer = tf.random_uniform_initializer(minval=-0.1, maxval=0.1) with tf.variable_scope(self.name, initializer=initializer): with tf.variable_scope("lstm"): self.w_lstm = [] for layer_id in xrange(self.lstm_num_layers): with tf.variable_scope("layer_{}".format(layer_id)): w = tf.get_variable("w", [2 * self.lstm_size, 4 * self.lstm_size]) self.w_lstm.append(w) num_funcs = self.num_funcs with tf.variable_scope("embedding"): self.g_emb = tf.get_variable("g_emb", [1, self.lstm_size]) self.w_emb = tf.get_variable("w", [num_funcs, self.lstm_size]) with tf.variable_scope("softmax"): self.w_soft = tf.get_variable("w", [self.lstm_size, num_funcs]) with tf.variable_scope("attention"): self.attn_w_1 = tf.get_variable("w_1", [self.lstm_size, self.lstm_size]) self.attn_w_2 = tf.get_variable("w_2", [self.lstm_size, self.lstm_size]) self.attn_v = tf.get_variable("v", [self.lstm_size, 1])
Example #15
Source File: common.py From tensorflow_multigpu_imagenet with MIT License | 6 votes |
def spatialConvolution(x, ksize, stride, filters_out, wd= 0.0, weight_initializer= None, bias_initializer= None, inference_only= False): filters_in = x.get_shape()[-1] stddev = 1./tf.sqrt(tf.cast(filters_out, tf.float32)) if weight_initializer is None: weight_initializer = tf.random_uniform_initializer(minval= -stddev, maxval= stddev, dtype= tf.float32) if bias_initializer is None: bias_initializer = tf.random_uniform_initializer(minval= -stddev, maxval= stddev, dtype= tf.float32) shape = [ksize, ksize, filters_in, filters_out] weights = _get_variable('weights', shape, weight_initializer, tf.contrib.layers.l2_regularizer(wd)) conv = tf.nn.conv2d(x, weights, [1, stride, stride, 1], padding= 'SAME') biases = _get_variable('biases', [filters_out], bias_initializer) return tf.nn.bias_add(conv, biases) # Max Pooling Layer
Example #16
Source File: model.py From show-adapt-and-tell with MIT License | 6 votes |
def domain_classifier(self, images, name="G", reuse=False): random_uniform_init = tf.random_uniform_initializer(minval=-0.1, maxval=0.1) with tf.variable_scope(name): tf.get_variable_scope().reuse_variables() with tf.variable_scope("images"): # "generator/images" images_W = tf.get_variable("images_W", [self.img_dims, self.G_hidden_size], "float32", random_uniform_init) images_emb = tf.matmul(images, images_W) # B,H l2_loss = tf.constant(0.0) with tf.variable_scope("domain"): if reuse: tf.get_variable_scope().reuse_variables() with tf.variable_scope("output"): output_W = tf.get_variable("output_W", [self.G_hidden_size, self.num_domains], "float32", random_uniform_init) output_b = tf.get_variable("output_b", [self.num_domains], "float32", random_uniform_init) l2_loss += tf.nn.l2_loss(output_W) l2_loss += tf.nn.l2_loss(output_b) logits = tf.nn.xw_plus_b(images_emb, output_W, output_b, name="logits") predictions = tf.argmax(logits, 1, name="predictions") return predictions, logits, l2_loss
Example #17
Source File: sample.py From glas with Apache License 2.0 | 6 votes |
def create_latent_space(batch_size, shape, steps=None): """ Create the latent space """ # Setup the latent space. The latent space is a 2-D tensor used for each element in the batch # with dimensions [batch_size, latent_size, latent_size]. If steps are provided then there is a # latent space per step with dimensions [step, batch_size, latent_size, latent_size]. latent_shape = shape if steps is not None: latent_shape = (steps,) + latent_shape latent_space = framework.model_variable( 'LatentSpace', shape=latent_shape, trainable=True, initializer=tf.random_uniform_initializer(0.0, 1e-3)) latent_space = tf.tile(latent_space, (batch_size,) + (1,) * (len(latent_shape) - 1)) latent_space = tf.reshape(latent_space, (batch_size,) + latent_shape) if steps is not None: permutation = (1, 0) + tuple(x + 2 for x in range(len(shape))) latent_space = tf.transpose(latent_space, permutation) return latent_space
Example #18
Source File: models.py From rl_graph_generation with BSD 3-Clause "New" or "Revised" License | 6 votes |
def __call__(self, obs, action, reuse=False): with tf.variable_scope(self.name) as scope: if reuse: scope.reuse_variables() x = obs x = tf.layers.dense(x, 64) if self.layer_norm: x = tc.layers.layer_norm(x, center=True, scale=True) x = tf.nn.relu(x) x = tf.concat([x, action], axis=-1) x = tf.layers.dense(x, 64) if self.layer_norm: x = tc.layers.layer_norm(x, center=True, scale=True) x = tf.nn.relu(x) x = tf.layers.dense(x, 1, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) return x
Example #19
Source File: models.py From rl_graph_generation with BSD 3-Clause "New" or "Revised" License | 6 votes |
def __call__(self, obs, reuse=False): with tf.variable_scope(self.name) as scope: if reuse: scope.reuse_variables() x = obs x = tf.layers.dense(x, 64) if self.layer_norm: x = tc.layers.layer_norm(x, center=True, scale=True) x = tf.nn.relu(x) x = tf.layers.dense(x, 64) if self.layer_norm: x = tc.layers.layer_norm(x, center=True, scale=True) x = tf.nn.relu(x) x = tf.layers.dense(x, self.nb_actions, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) return x
Example #20
Source File: model.py From deeping-flow with MIT License | 6 votes |
def __init__(self, args, pre_w2v=None): self.args = args self.global_step = tf.Variable(0, name="global_step", trainable=False) #euclidean self.l2_loss = tf.constant(0.) self.uniform_init = tf.random_uniform_initializer( -args.u_scope, args.u_scope, seed=args.seed) self.init_placeholders() self.init_graph() optimizer = tf.train.AdamOptimizer( args.lr, beta1=0.9, beta2=0.98, epsilon=1e-8) self.train_op = optimizer.minimize(self.loss, global_step=self.global_step)
Example #21
Source File: models.py From Reinforcement_Learning_for_Traffic_Light_Control with Apache License 2.0 | 6 votes |
def __call__(self, obs, reuse=False): with tf.variable_scope(self.name, reuse=tf.AUTO_REUSE): x = self.network_builder(obs) # x = tf.layers.dense(x, self.nb_actions, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) # x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer1, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer2, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) # x = tf.layers.dense(x, self.hidden_layer3, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) # x = tf.nn.tanh(x) # x = tf.layers.dense(x, self.hidden_layer4, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) # x = tf.nn.tanh(x) x = tf.layers.dense(x, self.nb_actions, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) # x = self.step_activation(tf.nn.sigmoid(x)) # sigmoid ~ (0,1), tanh ~ (-1 , 1) '''1000 makes the binarization of output of sigmoid has smaller difference that cannot be backpropagated with tensorflow''' x = tf.nn.sigmoid(1000*x) # sigmoid ~ (0,1), tanh ~ (-1 , 1) return x
Example #22
Source File: models.py From Reinforcement_Learning_for_Traffic_Light_Control with Apache License 2.0 | 6 votes |
def __call__(self, obs, action, reuse=False): with tf.variable_scope(self.name, reuse=tf.AUTO_REUSE): x = tf.concat([obs, action], axis=-1) # this assumes observation and action can be concatenated x = self.network_builder(x) # x = tf.layers.dense(x, 1, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.layers.dense(x, self.hidden_layer1, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer2, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer3, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer4, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, 1, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) return x
Example #23
Source File: model.py From deeping-flow with MIT License | 6 votes |
def __init__(self, args): self.args = args self.global_step = tf.Variable(0, name="global_step", trainable=False) # euclidean self.l2_loss = tf.constant(0.) self.uniform_init = tf.random_uniform_initializer( -args.u_scope, args.u_scope, seed=args.seed) self.init_placeholders() self.init_graph() optimizer = tf.train.AdamOptimizer( args.lr, beta1=0.9, beta2=0.98, epsilon=1e-8) self.train_op = optimizer.minimize( self.loss, global_step=self.global_step)
Example #24
Source File: models.py From Reinforcement_Learning_for_Traffic_Light_Control with Apache License 2.0 | 6 votes |
def __call__(self, obs, reuse=False): with tf.variable_scope(self.name, reuse=tf.AUTO_REUSE): x = self.network_builder(obs) # x = tf.layers.dense(x, self.nb_actions, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) # x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer1, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer2, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer3, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer4, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.nb_actions, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) ''' in order to discrete the action, apply the trick of sharp sigmoid. with the following line: x<0 will be near 0, x>0 will be near 1 then the discrete step in action choice wont affect too much of accuracy (with only small change of action value!) the key point of this step is to keep most part of discrete operation in the tensor graph, so as to be back propagated ''' x = tf.nn.sigmoid(1000*x) # sigmoid ~ (0,1), tanh ~ (-1 , 1) return x
Example #25
Source File: models.py From Reinforcement_Learning_for_Traffic_Light_Control with Apache License 2.0 | 6 votes |
def __call__(self, obs, action, reuse=False): with tf.variable_scope(self.name, reuse=tf.AUTO_REUSE): x = tf.concat([obs, action], axis=-1) # this assumes observation and action can be concatenated x = self.network_builder(x) # x = tf.layers.dense(x, 1, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.layers.dense(x, self.hidden_layer1, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer2, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer3, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer4, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, 1, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) return x
Example #26
Source File: models.py From Reinforcement_Learning_for_Traffic_Light_Control with Apache License 2.0 | 6 votes |
def __call__(self, obs, reuse=False): with tf.variable_scope(self.name, reuse=tf.AUTO_REUSE): x = self.network_builder(obs) # x = tf.layers.dense(x, self.nb_actions, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) # x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer1, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer2, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer3, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.hidden_layer4, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) x = tf.nn.tanh(x) x = tf.layers.dense(x, self.nb_actions, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) ''' in order to discrete the action, apply the trick of sharp sigmoid. with the following line: x<0 will be near 0, x>0 will be near 1 then the discrete step in action choice wont affect too much of accuracy (with only small change of action value!) the key point of this step is to keep most part of discrete operation in the tensor graph, so as to be back propagated ''' x = tf.nn.sigmoid(1000*x) # sigmoid ~ (0,1), tanh ~ (-1 , 1) return x
Example #27
Source File: ml_lab_11.py From ml with Apache License 2.0 | 5 votes |
def xavier_init(n_inputs, n_outputs, uniform=True): if uniform: # 6 was used in the paper. init_range = math.sqrt(6.0 / (n_inputs + n_outputs)) return tf.random_uniform_initializer(-init_range, init_range) else: # 3 gives us approximately the same limits as above since this repicks # values greater than 2 standard deviations from the mean. stddev = math.sqrt(3.0 / (n_inputs + n_outputs)) return tf.truncated_normal_initializer(stddev=stddev)
Example #28
Source File: feature_genNumbers.py From ml with Apache License 2.0 | 5 votes |
def xavier_init(n_inputs, n_outputs, uniform=True): if uniform: # 6 was used in the paper. init_range = math.sqrt(6.0 / (n_inputs + n_outputs)) return tf.random_uniform_initializer(-init_range, init_range) else: # 3 gives us approximately the same limits as above since this repicks # values greater than 2 standard deviations from the mean. stddev = math.sqrt(3.0 / (n_inputs + n_outputs)) return tf.truncated_normal_initializer(stddev=stddev) # Parameters
Example #29
Source File: genNumbers.py From ml with Apache License 2.0 | 5 votes |
def xavier_init(n_inputs, n_outputs, uniform=True): if uniform: # 6 was used in the paper. init_range = math.sqrt(6.0 / (n_inputs + n_outputs)) return tf.random_uniform_initializer(-init_range, init_range) else: # 3 gives us approximately the same limits as above since this repicks # values greater than 2 standard deviations from the mean. stddev = math.sqrt(3.0 / (n_inputs + n_outputs)) return tf.truncated_normal_initializer(stddev=stddev) # Parameters
Example #30
Source File: train.py From ml with Apache License 2.0 | 5 votes |
def xavier_init(n_inputs, n_outputs, uniform=True): if uniform: init_range = math.sqrt(6.0 / (n_inputs + n_outputs)) return tf.random_uniform_initializer(-init_range, init_range) else: stddev = math.sqrt(3.0 / (n_inputs + n_outputs)) return tf.truncated_normal_initializer(stddev=stddev) # parameters