本文整理汇总了Python中tensorflow.AUTO_REUSE属性的典型用法代码示例。如果您正苦于以下问题:Python tensorflow.AUTO_REUSE属性的具体用法?Python tensorflow.AUTO_REUSE怎么用?Python tensorflow.AUTO_REUSE使用的例子?那么, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类tensorflow
的用法示例。
在下文中一共展示了tensorflow.AUTO_REUSE属性的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: fprop
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
def fprop(self, x, **kwargs):
del kwargs
my_conv = functools.partial(tf.layers.conv2d,
kernel_size=3,
strides=2,
padding='valid',
activation=tf.nn.relu,
kernel_initializer=HeReLuNormalInitializer)
my_dense = functools.partial(
tf.layers.dense, kernel_initializer=HeReLuNormalInitializer)
with tf.variable_scope(self.scope, reuse=tf.AUTO_REUSE):
for depth in [96, 256, 384, 384, 256]:
x = my_conv(x, depth)
y = tf.layers.flatten(x)
y = my_dense(y, 4096, tf.nn.relu)
y = fc7 = my_dense(y, 4096, tf.nn.relu)
y = my_dense(y, 1000)
return {'fc7': fc7,
self.O_LOGITS: y,
self.O_PROBS: tf.nn.softmax(logits=y)}
示例2: build_critic
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
def build_critic(x, h, output_size, scope, n_layers, size, gru_size, recurrent=True, activation=tf.tanh, output_activation=None, regularizer=None):
"""
build recurrent critic
arguments:
regularizer: regularization for weights
(see `build_policy()` for rest)
n.b. the policy and critic should not share weights
"""
with tf.variable_scope(scope, reuse=tf.AUTO_REUSE):
if recurrent:
x, h = build_rnn(x, h, gru_size, scope, n_layers, size, activation=activation, output_activation=output_activation, regularizer=regularizer)
else:
x = tf.reshape(x, (-1, x.get_shape()[1]*x.get_shape()[2]))
x = build_mlp(x, gru_size, scope, n_layers + 1, size, activation=activation, output_activation=activation, regularizer=regularizer)
x = tf.layers.dense(x, output_size, activation=output_activation, name='decoder', kernel_regularizer=regularizer, bias_regularizer=regularizer)
return x
示例3: reward_prediction
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
def reward_prediction(
self, input_image, input_reward, action, lstm_state, latent):
"""Builds a reward prediction network."""
conv_size = self.tinyify([32, 32, 16, 4])
lstm_size = self.tinyify([32, 64, 128, 64, 32])
with tf.variable_scope("reward_pred", reuse=tf.AUTO_REUSE):
hidden5, _ = self.bottom_part_tower(
input_image, input_reward, action, latent,
lstm_state, lstm_size, conv_size)
x = hidden5
x = slim.batch_norm(x, scope="reward_bn0")
x = slim.conv2d(x, conv_size[1], [3, 3], scope="reward_conv1")
x = slim.batch_norm(x, scope="reward_bn1")
x = slim.conv2d(x, conv_size[2], [3, 3], scope="reward_conv2")
x = slim.batch_norm(x, scope="reward_bn2")
x = slim.conv2d(x, conv_size[3], [3, 3], scope="reward_conv3")
pred_reward = self.decode_to_shape(
x, input_reward.shape, "reward_dec")
return pred_reward, lstm_state
示例4: targets_bottom
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
def targets_bottom(self, x, summary_prefix="targets_bottom"): # pylint: disable=arguments-differ
inputs = x
with tf.variable_scope(self.name, reuse=tf.AUTO_REUSE):
common_layers.summarize_video(inputs, summary_prefix)
inputs_shape = common_layers.shape_list(inputs)
# We embed each of 256=self.top_dimensionality possible pixel values.
embedding_var = tf.get_variable(
"pixel_embedding",
[self.top_dimensionality, self.PIXEL_EMBEDDING_SIZE])
hot_inputs = tf.one_hot(tf.to_int32(inputs), self.top_dimensionality)
hot_inputs = tf.reshape(hot_inputs, [-1, self.top_dimensionality])
embedded = tf.matmul(hot_inputs, embedding_var)
# Let's now merge all channels that were embedded into a single vector.
merged_size = self.PIXEL_EMBEDDING_SIZE * inputs_shape[4]
embedded = tf.reshape(embedded, inputs_shape[:4] + [merged_size])
transposed = common_layers.time_to_channels(embedded)
return tf.layers.dense(
transposed,
self._body_input_depth,
name="merge_pixel_embedded_frames")
示例5: get_vq_bottleneck
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
def get_vq_bottleneck(bottleneck_size, hidden_size):
"""Get lookup table for VQ bottleneck."""
with tf.variable_scope("vq", reuse=tf.AUTO_REUSE):
means = tf.get_variable(
name="means",
shape=[bottleneck_size, hidden_size],
initializer=tf.uniform_unit_scaling_initializer())
ema_count = tf.get_variable(
name="ema_count",
shape=[bottleneck_size],
initializer=tf.constant_initializer(0),
trainable=False)
with tf.colocate_with(means):
ema_means = tf.get_variable(
name="ema_means",
initializer=means.initialized_value(),
trainable=False)
return means, ema_means, ema_count
示例6: __init__
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
def __init__(self, epsilon=1e-4, shape=(), scope=''):
sess = get_session()
self._new_mean = tf.placeholder(shape=shape, dtype=tf.float64)
self._new_var = tf.placeholder(shape=shape, dtype=tf.float64)
self._new_count = tf.placeholder(shape=(), dtype=tf.float64)
with tf.variable_scope(scope, reuse=tf.AUTO_REUSE):
self._mean = tf.get_variable('mean', initializer=np.zeros(shape, 'float64'), dtype=tf.float64)
self._var = tf.get_variable('std', initializer=np.ones(shape, 'float64'), dtype=tf.float64)
self._count = tf.get_variable('count', initializer=np.full((), epsilon, 'float64'), dtype=tf.float64)
self.update_ops = tf.group([
self._var.assign(self._new_var),
self._mean.assign(self._new_mean),
self._count.assign(self._new_count)
])
sess.run(tf.variables_initializer([self._mean, self._var, self._count]))
self.sess = sess
self._set_mean_var_count()
示例7: generator
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
def generator(self, inputs_condition):
inputs = inputs_condition
with tf.variable_scope("generator", reuse=tf.AUTO_REUSE):
inputs1 = leaky_relu(conv2d("conv1", inputs, 64, 5, 2))#128x128x128
inputs2 = leaky_relu(instanceNorm("in1", conv2d("conv2", inputs1, 128, 5, 2)))#64x64x256
inputs3 = leaky_relu(instanceNorm("in2", conv2d("conv3", inputs2, 256, 5, 2)))#32x32x512
inputs4 = leaky_relu(instanceNorm("in3", conv2d("conv4", inputs3, 512, 5, 2)))#16x16x512
inputs5 = leaky_relu(instanceNorm("in4", conv2d("conv5", inputs4, 512, 5, 2)))#8x8x512
inputs6 = leaky_relu(instanceNorm("in5", conv2d("conv6", inputs5, 512, 5, 2)))#4x4x512
inputs7 = leaky_relu(instanceNorm("in6", conv2d("conv7", inputs6, 512, 5, 2)))#2x2x512
inputs8 = leaky_relu(instanceNorm("in7", conv2d("conv8", inputs7, 512, 5, 2)))#1x1x512
outputs1 = tf.nn.relu(tf.concat([tf.nn.dropout(instanceNorm("in9", deconv2d("dconv1", inputs8, 512, 5, 2)), 0.5), inputs7], axis=3)) # 2x2x512
outputs2 = tf.nn.relu(tf.concat([tf.nn.dropout(instanceNorm("in10", deconv2d("dconv2", outputs1, 512, 5, 2)), 0.5), inputs6], axis=3)) # 4x4x512
outputs3 = tf.nn.relu(tf.concat([tf.nn.dropout(instanceNorm("in11", deconv2d("dconv3", outputs2, 512, 5, 2)), 0.5), inputs5], axis=3))#8x8x512
outputs4 = tf.nn.relu(tf.concat([instanceNorm("in12", deconv2d("dconv4", outputs3, 512, 5, 2)), inputs4], axis=3))#16x16x512
outputs5 = tf.nn.relu(tf.concat([instanceNorm("in13", deconv2d("dconv5", outputs4, 256, 5, 2)), inputs3], axis=3))#32x32x256
outputs6 = tf.nn.relu(tf.concat([instanceNorm("in14", deconv2d("dconv6", outputs5, 128, 5, 2)), inputs2], axis=3))#64x64x128
outputs7 = tf.nn.relu(tf.concat([instanceNorm("in15", deconv2d("dconv7", outputs6, 64, 5, 2)), inputs1], axis=3))#128x128x64
outputs8 = tf.nn.tanh((deconv2d("dconv8", outputs7, 3, 5, 2)))#256x256x3
return outputs8
示例8: _init_pos_model
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
def _init_pos_model(self, session):
"""Create POS Tagger model and initialize with random or load parameters in session."""
# initilize config
config_dict = load_config(self.model_config_path)
config = get_config(config_dict, self.name)
config.batch_size = 1
config.num_steps = 1 # iterator one token per time
model_var_scope = get_model_var_scope(self.var_scope, self.name)
print ("NOTICE: Input POS Model Var Scope Name '%s'" % model_var_scope)
# Check if self.model already exist
if self.model is None:
with tf.variable_scope(model_var_scope, tf.AUTO_REUSE):
self.model = pos_model.POSTagger(is_training=False, config=config) # save object after is_training
# Load Specific .data* ckpt file
if len(glob.glob(self.ckpt_path + '.data*')) > 0: # file exist with pattern: 'pos.ckpt.data*'
print("NOTICE: Loading model parameters from %s" % self.ckpt_path)
all_vars = tf.global_variables()
model_vars = [k for k in all_vars if model_var_scope in k.name.split("/")]
tf.train.Saver(model_vars).restore(session, self.ckpt_path)
else:
print("NOTICE: Model not found, Try to run method: deepnlp.download(module='pos', name='%s')" % self.name)
print("NOTICE: Created with fresh parameters.")
session.run(tf.global_variables_initializer())
示例9: _init_model
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
def _init_model(self, session):
"""Create Parser model and initialize with random or load parameters in session."""
config_dict = load_config(self.model_config_path)
config = get_config(config_dict, self.name)
model_var_scope = get_model_var_scope(self.var_scope, self.name)
print ("NOTICE: Initializing model var scope '%s'" % model_var_scope)
# Check if self.model already exist
if self.model is None: # Create Graph Only once
with tf.variable_scope(model_var_scope, reuse = tf.AUTO_REUSE):
self.model = parse_model.NNParser(config=config)
if len(glob.glob(self.ckpt_path + '.data*')) > 0: # file exist with pattern: 'parser.ckpt.data*'
print("NOTICE: Loading model parameters from %s" % self.ckpt_path)
all_vars = tf.global_variables()
model_vars = [k for k in all_vars if model_var_scope in k.name.split("/")] # Only Restore the Variable in Graph begin with parser/....
tf.train.Saver(model_vars).restore(session, self.ckpt_path)
else:
print("NOTICE: Model not found, Try to run method: deepnlp.download('parse')")
print("NOTICE: Created with fresh parameters.")
session.run(tf.global_variables_initializer())
示例10: extract_box_classifier_features
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
def extract_box_classifier_features(self, proposal_feature_maps, scope):
"""Extracts second stage box classifier features.
Args:
proposal_feature_maps: A 4-D float tensor with shape
[batch_size * self.max_num_proposals, crop_height, crop_width, depth]
representing the feature map cropped to each proposal.
scope: A scope name.
Returns:
proposal_classifier_features: A 4-D float tensor with shape
[batch_size * self.max_num_proposals, height, width, depth]
representing box classifier features for each proposal.
"""
with tf.variable_scope(
scope, values=[proposal_feature_maps], reuse=tf.AUTO_REUSE):
return self._extract_box_classifier_features(proposal_feature_maps, scope)
示例11: __init__
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
def __init__(self, epsilon=1e-4, shape=(), scope=''):
sess = get_session()
self._new_mean = tf.placeholder(shape=shape, dtype=tf.float64)
self._new_var = tf.placeholder(shape=shape, dtype=tf.float64)
self._new_count = tf.placeholder(shape=(), dtype=tf.float64)
with tf.variable_scope(scope, reuse=tf.AUTO_REUSE):
self._mean = tf.get_variable('mean', initializer=np.zeros(shape, 'float64'), dtype=tf.float64)
self._var = tf.get_variable('std', initializer=np.ones(shape, 'float64'), dtype=tf.float64)
self._count = tf.get_variable('count', initializer=np.full((), epsilon, 'float64'), dtype=tf.float64)
self.update_ops = tf.group([
self._var.assign(self._new_var),
self._mean.assign(self._new_mean),
self._count.assign(self._new_count)
])
sess.run(tf.variables_initializer([self._mean, self._var, self._count]))
self.sess = sess
self._set_mean_var_count()
开发者ID:quantumiracle,项目名称:Reinforcement_Learning_for_Traffic_Light_Control,代码行数:24,代码来源:running_mean_std.py
示例12: __call__
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
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
示例13: __call__
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
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
示例14: conv2d
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
def conv2d(input_, output_dim, kernel_h=3, kernel_w=None, stride_h=1, stride_w=None, padding='SAME', reuse=False, initializer=None, use_bias = True, name="conv2d"):
if kernel_w == None: kernel_w = kernel_h
if stride_w == None: stride_w = stride_h
if initializer == None: initializer = tf.contrib.layers.xavier_initializer()
with tf.variable_scope(name, reuse = tf.AUTO_REUSE):
if reuse==True: scope.reuse_variables()
w = tf.get_variable('w', [kernel_h, kernel_w, input_.get_shape()[-1], output_dim],
initializer=initializer)
conv = tf.nn.conv2d(input_, w, strides=[1,stride_h, stride_w, 1], padding=padding)
if use_bias:
b = tf.get_variable('bias', [output_dim], initializer=tf.constant_initializer(0.0))
conv = tf.nn.bias_add(conv, b)
return conv
示例15: res_block
# 需要导入模块: import tensorflow [as 别名]
# 或者: from tensorflow import AUTO_REUSE [as 别名]
def res_block(input_, output_dim, name='res_block', is_dropout=False, drop_p=0.5):
shortcut = input_
num_input_c = shortcut.shape.as_list()[-1]
with tf.variable_scope(name, reuse=tf.AUTO_REUSE):
conv = conv2d(input_, output_dim, name=name+'/conv1')
conv = norm_layer(conv, 'instance')
conv = tf.nn.relu(conv)
if is_dropout:
conv = tf.nn.dropout(conv, keep_prob = drop_p)
#conv = conv2d(conv, output_dim, num_input_c * 2, name=name+'/conv2')
conv = conv2d(conv, output_dim, name=name+'/conv2')
conv = norm_layer(conv, 'instance')
conv = tf.identity(conv+shortcut, name='residual_block_output')
return conv