Python tensorflow.contrib.slim.nets.inception.inception_v3_arg_scope() Examples
The following are 29
code examples of tensorflow.contrib.slim.nets.inception.inception_v3_arg_scope().
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.contrib.slim.nets.inception
, or try the search function
.
Example #1
Source File: model.py From hands-detection with MIT License | 6 votes |
def conv_tower_fn(self, images, is_training=True, reuse=None): """Computes convolutional features using the InceptionV3 model. Args: images: A tensor of shape [batch_size, height, width, channels]. is_training: whether is training or not. reuse: whether or not the network and its variables should be reused. To be able to reuse 'scope' must be given. Returns: A tensor of shape [batch_size, OH, OW, N], where OWxOH is resolution of output feature map and N is number of output features (depends on the network architecture). """ mparams = self._mparams['conv_tower_fn'] logging.debug('Using final_endpoint=%s', mparams.final_endpoint) with tf.variable_scope('conv_tower_fn/INCE'): if reuse: tf.get_variable_scope().reuse_variables() with slim.arg_scope(inception.inception_v3_arg_scope()): net, _ = inception.inception_v3_base( images, final_endpoint=mparams.final_endpoint) return net
Example #2
Source File: eval_on_adversarial.py From multilabel-image-classification-tensorflow with MIT License | 6 votes |
def create_model(x, reuse=None): """Create model graph. Args: x: input images reuse: reuse parameter which will be passed to underlying variable scopes. Should be None first call and True every subsequent call. Returns: (logits, end_points) - tuple of model logits and enpoints Raises: ValueError: if model type specified by --model_name flag is invalid. """ if FLAGS.model_name == 'inception_v3': with slim.arg_scope(inception.inception_v3_arg_scope()): return inception.inception_v3( x, num_classes=NUM_CLASSES, is_training=False, reuse=reuse) elif FLAGS.model_name == 'inception_resnet_v2': with slim.arg_scope(inception_resnet_v2.inception_resnet_v2_arg_scope()): return inception_resnet_v2.inception_resnet_v2( x, num_classes=NUM_CLASSES, is_training=False, reuse=reuse) else: raise ValueError('Invalid model name: %s' % (FLAGS.model_name))
Example #3
Source File: model.py From multilabel-image-classification-tensorflow with MIT License | 6 votes |
def conv_tower_fn(self, images, is_training=True, reuse=None): """Computes convolutional features using the InceptionV3 model. Args: images: A tensor of shape [batch_size, height, width, channels]. is_training: whether is training or not. reuse: whether or not the network and its variables should be reused. To be able to reuse 'scope' must be given. Returns: A tensor of shape [batch_size, OH, OW, N], where OWxOH is resolution of output feature map and N is number of output features (depends on the network architecture). """ mparams = self._mparams['conv_tower_fn'] logging.debug('Using final_endpoint=%s', mparams.final_endpoint) with tf.variable_scope('conv_tower_fn/INCE'): if reuse: tf.get_variable_scope().reuse_variables() with slim.arg_scope(inception.inception_v3_arg_scope()): with slim.arg_scope([slim.batch_norm, slim.dropout], is_training=is_training): net, _ = inception.inception_v3_base( images, final_endpoint=mparams.final_endpoint) return net
Example #4
Source File: eval_on_adversarial.py From models with Apache License 2.0 | 6 votes |
def create_model(x, reuse=None): """Create model graph. Args: x: input images reuse: reuse parameter which will be passed to underlying variable scopes. Should be None first call and True every subsequent call. Returns: (logits, end_points) - tuple of model logits and enpoints Raises: ValueError: if model type specified by --model_name flag is invalid. """ if FLAGS.model_name == 'inception_v3': with slim.arg_scope(inception.inception_v3_arg_scope()): return inception.inception_v3( x, num_classes=NUM_CLASSES, is_training=False, reuse=reuse) elif FLAGS.model_name == 'inception_resnet_v2': with slim.arg_scope(inception_resnet_v2.inception_resnet_v2_arg_scope()): return inception_resnet_v2.inception_resnet_v2( x, num_classes=NUM_CLASSES, is_training=False, reuse=reuse) else: raise ValueError('Invalid model name: %s' % (FLAGS.model_name))
Example #5
Source File: model.py From models with Apache License 2.0 | 6 votes |
def conv_tower_fn(self, images, is_training=True, reuse=None): """Computes convolutional features using the InceptionV3 model. Args: images: A tensor of shape [batch_size, height, width, channels]. is_training: whether is training or not. reuse: whether or not the network and its variables should be reused. To be able to reuse 'scope' must be given. Returns: A tensor of shape [batch_size, OH, OW, N], where OWxOH is resolution of output feature map and N is number of output features (depends on the network architecture). """ mparams = self._mparams['conv_tower_fn'] logging.debug('Using final_endpoint=%s', mparams.final_endpoint) with tf.variable_scope('conv_tower_fn/INCE'): if reuse: tf.get_variable_scope().reuse_variables() with slim.arg_scope(inception.inception_v3_arg_scope()): with slim.arg_scope([slim.batch_norm, slim.dropout], is_training=is_training): net, _ = inception.inception_v3_base( images, final_endpoint=mparams.final_endpoint) return net
Example #6
Source File: eval_on_adversarial.py From g-tensorflow-models with Apache License 2.0 | 6 votes |
def create_model(x, reuse=None): """Create model graph. Args: x: input images reuse: reuse parameter which will be passed to underlying variable scopes. Should be None first call and True every subsequent call. Returns: (logits, end_points) - tuple of model logits and enpoints Raises: ValueError: if model type specified by --model_name flag is invalid. """ if FLAGS.model_name == 'inception_v3': with slim.arg_scope(inception.inception_v3_arg_scope()): return inception.inception_v3( x, num_classes=NUM_CLASSES, is_training=False, reuse=reuse) elif FLAGS.model_name == 'inception_resnet_v2': with slim.arg_scope(inception_resnet_v2.inception_resnet_v2_arg_scope()): return inception_resnet_v2.inception_resnet_v2( x, num_classes=NUM_CLASSES, is_training=False, reuse=reuse) else: raise ValueError('Invalid model name: %s' % (FLAGS.model_name))
Example #7
Source File: model.py From g-tensorflow-models with Apache License 2.0 | 6 votes |
def conv_tower_fn(self, images, is_training=True, reuse=None): """Computes convolutional features using the InceptionV3 model. Args: images: A tensor of shape [batch_size, height, width, channels]. is_training: whether is training or not. reuse: whether or not the network and its variables should be reused. To be able to reuse 'scope' must be given. Returns: A tensor of shape [batch_size, OH, OW, N], where OWxOH is resolution of output feature map and N is number of output features (depends on the network architecture). """ mparams = self._mparams['conv_tower_fn'] logging.debug('Using final_endpoint=%s', mparams.final_endpoint) with tf.variable_scope('conv_tower_fn/INCE'): if reuse: tf.get_variable_scope().reuse_variables() with slim.arg_scope(inception.inception_v3_arg_scope()): with slim.arg_scope([slim.batch_norm, slim.dropout], is_training=is_training): net, _ = inception.inception_v3_base( images, final_endpoint=mparams.final_endpoint) return net
Example #8
Source File: eval_on_adversarial.py From object_detection_with_tensorflow with MIT License | 6 votes |
def create_model(x, reuse=None): """Create model graph. Args: x: input images reuse: reuse parameter which will be passed to underlying variable scopes. Should be None first call and True every subsequent call. Returns: (logits, end_points) - tuple of model logits and enpoints Raises: ValueError: if model type specified by --model_name flag is invalid. """ if FLAGS.model_name == 'inception_v3': with slim.arg_scope(inception.inception_v3_arg_scope()): return inception.inception_v3( x, num_classes=NUM_CLASSES, is_training=False, reuse=reuse) elif FLAGS.model_name == 'inception_resnet_v2': with slim.arg_scope(inception_resnet_v2.inception_resnet_v2_arg_scope()): return inception_resnet_v2.inception_resnet_v2( x, num_classes=NUM_CLASSES, is_training=False, reuse=reuse) else: raise ValueError('Invalid model name: %s' % (FLAGS.model_name))
Example #9
Source File: model.py From object_detection_with_tensorflow with MIT License | 6 votes |
def conv_tower_fn(self, images, is_training=True, reuse=None): """Computes convolutional features using the InceptionV3 model. Args: images: A tensor of shape [batch_size, height, width, channels]. is_training: whether is training or not. reuse: whether or not the network and its variables should be reused. To be able to reuse 'scope' must be given. Returns: A tensor of shape [batch_size, OH, OW, N], where OWxOH is resolution of output feature map and N is number of output features (depends on the network architecture). """ mparams = self._mparams['conv_tower_fn'] logging.debug('Using final_endpoint=%s', mparams.final_endpoint) with tf.variable_scope('conv_tower_fn/INCE'): if reuse: tf.get_variable_scope().reuse_variables() with slim.arg_scope( [slim.batch_norm, slim.dropout], is_training=is_training): with slim.arg_scope(inception.inception_v3_arg_scope()): net, _ = inception.inception_v3_base( images, final_endpoint=mparams.final_endpoint) return net
Example #10
Source File: eval_on_adversarial.py From object_detection_kitti with Apache License 2.0 | 6 votes |
def create_model(x, reuse=None): """Create model graph. Args: x: input images reuse: reuse parameter which will be passed to underlying variable scopes. Should be None first call and True every subsequent call. Returns: (logits, end_points) - tuple of model logits and enpoints Raises: ValueError: if model type specified by --model_name flag is invalid. """ if FLAGS.model_name == 'inception_v3': with slim.arg_scope(inception.inception_v3_arg_scope()): return inception.inception_v3( x, num_classes=NUM_CLASSES, is_training=False, reuse=reuse) elif FLAGS.model_name == 'inception_resnet_v2': with slim.arg_scope(inception_resnet_v2.inception_resnet_v2_arg_scope()): return inception_resnet_v2.inception_resnet_v2( x, num_classes=NUM_CLASSES, is_training=False, reuse=reuse) else: raise ValueError('Invalid model name: %s' % (FLAGS.model_name))
Example #11
Source File: model.py From object_detection_kitti with Apache License 2.0 | 6 votes |
def conv_tower_fn(self, images, is_training=True, reuse=None): """Computes convolutional features using the InceptionV3 model. Args: images: A tensor of shape [batch_size, height, width, channels]. is_training: whether is training or not. reuse: whether or not the network and its variables should be reused. To be able to reuse 'scope' must be given. Returns: A tensor of shape [batch_size, OH, OW, N], where OWxOH is resolution of output feature map and N is number of output features (depends on the network architecture). """ mparams = self._mparams['conv_tower_fn'] logging.debug('Using final_endpoint=%s', mparams.final_endpoint) with tf.variable_scope('conv_tower_fn/INCE'): if reuse: tf.get_variable_scope().reuse_variables() with slim.arg_scope(inception.inception_v3_arg_scope()): net, _ = inception.inception_v3_base( images, final_endpoint=mparams.final_endpoint) return net
Example #12
Source File: eval_on_adversarial.py From Gun-Detector with Apache License 2.0 | 6 votes |
def create_model(x, reuse=None): """Create model graph. Args: x: input images reuse: reuse parameter which will be passed to underlying variable scopes. Should be None first call and True every subsequent call. Returns: (logits, end_points) - tuple of model logits and enpoints Raises: ValueError: if model type specified by --model_name flag is invalid. """ if FLAGS.model_name == 'inception_v3': with slim.arg_scope(inception.inception_v3_arg_scope()): return inception.inception_v3( x, num_classes=NUM_CLASSES, is_training=False, reuse=reuse) elif FLAGS.model_name == 'inception_resnet_v2': with slim.arg_scope(inception_resnet_v2.inception_resnet_v2_arg_scope()): return inception_resnet_v2.inception_resnet_v2( x, num_classes=NUM_CLASSES, is_training=False, reuse=reuse) else: raise ValueError('Invalid model name: %s' % (FLAGS.model_name))
Example #13
Source File: model.py From Gun-Detector with Apache License 2.0 | 6 votes |
def conv_tower_fn(self, images, is_training=True, reuse=None): """Computes convolutional features using the InceptionV3 model. Args: images: A tensor of shape [batch_size, height, width, channels]. is_training: whether is training or not. reuse: whether or not the network and its variables should be reused. To be able to reuse 'scope' must be given. Returns: A tensor of shape [batch_size, OH, OW, N], where OWxOH is resolution of output feature map and N is number of output features (depends on the network architecture). """ mparams = self._mparams['conv_tower_fn'] logging.debug('Using final_endpoint=%s', mparams.final_endpoint) with tf.variable_scope('conv_tower_fn/INCE'): if reuse: tf.get_variable_scope().reuse_variables() with slim.arg_scope(inception.inception_v3_arg_scope()): with slim.arg_scope([slim.batch_norm, slim.dropout], is_training=is_training): net, _ = inception.inception_v3_base( images, final_endpoint=mparams.final_endpoint) return net
Example #14
Source File: eval_on_adversarial.py From yolo_v2 with Apache License 2.0 | 6 votes |
def create_model(x, reuse=None): """Create model graph. Args: x: input images reuse: reuse parameter which will be passed to underlying variable scopes. Should be None first call and True every subsequent call. Returns: (logits, end_points) - tuple of model logits and enpoints Raises: ValueError: if model type specified by --model_name flag is invalid. """ if FLAGS.model_name == 'inception_v3': with slim.arg_scope(inception.inception_v3_arg_scope()): return inception.inception_v3( x, num_classes=NUM_CLASSES, is_training=False, reuse=reuse) elif FLAGS.model_name == 'inception_resnet_v2': with slim.arg_scope(inception_resnet_v2.inception_resnet_v2_arg_scope()): return inception_resnet_v2.inception_resnet_v2( x, num_classes=NUM_CLASSES, is_training=False, reuse=reuse) else: raise ValueError('Invalid model name: %s' % (FLAGS.model_name))
Example #15
Source File: model.py From yolo_v2 with Apache License 2.0 | 6 votes |
def conv_tower_fn(self, images, is_training=True, reuse=None): """Computes convolutional features using the InceptionV3 model. Args: images: A tensor of shape [batch_size, height, width, channels]. is_training: whether is training or not. reuse: whether or not the network and its variables should be reused. To be able to reuse 'scope' must be given. Returns: A tensor of shape [batch_size, OH, OW, N], where OWxOH is resolution of output feature map and N is number of output features (depends on the network architecture). """ mparams = self._mparams['conv_tower_fn'] logging.debug('Using final_endpoint=%s', mparams.final_endpoint) with tf.variable_scope('conv_tower_fn/INCE'): if reuse: tf.get_variable_scope().reuse_variables() with slim.arg_scope(inception.inception_v3_arg_scope()): with slim.arg_scope([slim.batch_norm, slim.dropout], is_training=is_training): net, _ = inception.inception_v3_base( images, final_endpoint=mparams.final_endpoint) return net
Example #16
Source File: model.py From DOTA_models with Apache License 2.0 | 6 votes |
def conv_tower_fn(self, images, is_training=True, reuse=None): """Computes convolutional features using the InceptionV3 model. Args: images: A tensor of shape [batch_size, height, width, channels]. is_training: whether is training or not. reuse: whether or not the network and its variables should be reused. To be able to reuse 'scope' must be given. Returns: A tensor of shape [batch_size, OH, OW, N], where OWxOH is resolution of output feature map and N is number of output features (depends on the network architecture). """ mparams = self._mparams['conv_tower_fn'] logging.debug('Using final_endpoint=%s', mparams.final_endpoint) with tf.variable_scope('conv_tower_fn/INCE'): if reuse: tf.get_variable_scope().reuse_variables() with slim.arg_scope(inception.inception_v3_arg_scope()): net, _ = inception.inception_v3_base( images, final_endpoint=mparams.final_endpoint) return net
Example #17
Source File: test_imagenet_attacks.py From neural-fingerprinting with BSD 3-Clause "New" or "Revised" License | 6 votes |
def __call__(self, x_input, return_logits=False): """Constructs model and return probabilities for given input.""" reuse = True if self.built else None with slim.arg_scope(inception.inception_v3_arg_scope()): # Inception preprocessing uses [-1, 1]-scaled input. x_input = x_input * 2.0 - 1.0 _, end_points = inception.inception_v3( x_input, num_classes=self.nb_classes, is_training=False, reuse=reuse) self.built = True self.logits = end_points['Logits'] # Strip off the extra reshape op at the output self.probs = end_points['Predictions'].op.inputs[0] if return_logits: return self.logits else: return self.probs
Example #18
Source File: attack_fgsm.py From neural-fingerprinting with BSD 3-Clause "New" or "Revised" License | 5 votes |
def __call__(self, x_input): """Constructs model and return probabilities for given input.""" reuse = True if self.built else None with slim.arg_scope(inception.inception_v3_arg_scope()): _, end_points = inception.inception_v3( x_input, num_classes=self.num_classes, is_training=False, reuse=reuse) self.built = True output = end_points['Predictions'] # Strip off the extra reshape op at the output probs = output.op.inputs[0] return probs
Example #19
Source File: inception_v3_test.py From deep_image_model with Apache License 2.0 | 5 votes |
def testModelHasExpectedNumberOfParameters(self): batch_size = 5 height, width = 299, 299 inputs = tf.random_uniform((batch_size, height, width, 3)) with slim.arg_scope(inception.inception_v3_arg_scope()): inception.inception_v3_base(inputs) total_params, _ = slim.model_analyzer.analyze_vars( slim.get_model_variables()) self.assertAlmostEqual(21802784, total_params)
Example #20
Source File: defense.py From neural-fingerprinting with BSD 3-Clause "New" or "Revised" License | 5 votes |
def main(_): batch_shape = [FLAGS.batch_size, FLAGS.image_height, FLAGS.image_width, 3] num_classes = 1001 tf.logging.set_verbosity(tf.logging.INFO) with tf.Graph().as_default(): # Prepare graph x_input = tf.placeholder(tf.float32, shape=batch_shape) with slim.arg_scope(inception.inception_v3_arg_scope()): _, end_points = inception.inception_v3( x_input, num_classes=num_classes, is_training=False) predicted_labels = tf.argmax(end_points['Predictions'], 1) # Run computation saver = tf.train.Saver(slim.get_model_variables()) session_creator = tf.train.ChiefSessionCreator( scaffold=tf.train.Scaffold(saver=saver), checkpoint_filename_with_path=FLAGS.checkpoint_path, master=FLAGS.master) with tf.train.MonitoredSession(session_creator=session_creator) as sess: with tf.gfile.Open(FLAGS.output_file, 'w') as out_file: for filenames, images in load_images(FLAGS.input_dir, batch_shape): labels = sess.run(predicted_labels, feed_dict={x_input: images}) for filename, label in zip(filenames, labels): out_file.write('{0},{1}\n'.format(filename, label))
Example #21
Source File: defense.py From cleverhans with MIT License | 5 votes |
def main(_): batch_shape = [FLAGS.batch_size, FLAGS.image_height, FLAGS.image_width, 3] nb_classes = 1001 tf.logging.set_verbosity(tf.logging.INFO) with tf.Graph().as_default(): # Prepare graph x_input = tf.placeholder(tf.float32, shape=batch_shape) with slim.arg_scope(inception.inception_v3_arg_scope()): _, end_points = inception.inception_v3( x_input, num_classes=nb_classes, is_training=False) predicted_labels = tf.argmax(end_points['Predictions'], 1) # Run computation saver = tf.train.Saver(slim.get_model_variables()) session_creator = tf.train.ChiefSessionCreator( scaffold=tf.train.Scaffold(saver=saver), checkpoint_filename_with_path=FLAGS.checkpoint_path, master=FLAGS.master) with tf.train.MonitoredSession(session_creator=session_creator) as sess: with tf.gfile.Open(FLAGS.output_file, 'w') as out_file: for filenames, images in load_images(FLAGS.input_dir, batch_shape): labels = sess.run(predicted_labels, feed_dict={x_input: images}) for filename, label in zip(filenames, labels): out_file.write('{0},{1}\n'.format(filename, label))
Example #22
Source File: defense.py From cleverhans with MIT License | 5 votes |
def main(_): """Run the sample defense""" batch_shape = [FLAGS.batch_size, FLAGS.image_height, FLAGS.image_width, 3] nb_classes = 1001 tf.logging.set_verbosity(tf.logging.INFO) with tf.Graph().as_default(): # Prepare graph x_input = tf.placeholder(tf.float32, shape=batch_shape) with slim.arg_scope(inception.inception_v3_arg_scope()): _, end_points = inception.inception_v3( x_input, num_classes=nb_classes, is_training=False) predicted_labels = tf.argmax(end_points['Predictions'], 1) # Run computation saver = tf.train.Saver(slim.get_model_variables()) session_creator = tf.train.ChiefSessionCreator( scaffold=tf.train.Scaffold(saver=saver), checkpoint_filename_with_path=FLAGS.checkpoint_path, master=FLAGS.master) with tf.train.MonitoredSession(session_creator=session_creator) as sess: with tf.gfile.Open(FLAGS.output_file, 'w') as out_file: for filenames, images in load_images(FLAGS.input_dir, batch_shape): labels = sess.run(predicted_labels, feed_dict={x_input: images}) for filename, label in zip(filenames, labels): out_file.write('{0},{1}\n'.format(filename, label))
Example #23
Source File: attack_fgsm.py From cleverhans with MIT License | 5 votes |
def __call__(self, x_input): """Constructs model and return probabilities for given input.""" reuse = True if self.built else None with slim.arg_scope(inception.inception_v3_arg_scope()): _, end_points = inception.inception_v3( x_input, num_classes=self.nb_classes, is_training=False, reuse=reuse) self.built = True output = end_points['Predictions'] # Strip off the extra reshape op at the output probs = output.op.inputs[0] return probs
Example #24
Source File: defense.py From neural-fingerprinting with BSD 3-Clause "New" or "Revised" License | 5 votes |
def main(_): batch_shape = [FLAGS.batch_size, FLAGS.image_height, FLAGS.image_width, 3] num_classes = 1001 tf.logging.set_verbosity(tf.logging.INFO) with tf.Graph().as_default(): # Prepare graph x_input = tf.placeholder(tf.float32, shape=batch_shape) with slim.arg_scope(inception.inception_v3_arg_scope()): _, end_points = inception.inception_v3( x_input, num_classes=num_classes, is_training=False) predicted_labels = tf.argmax(end_points['Predictions'], 1) # Run computation saver = tf.train.Saver(slim.get_model_variables()) session_creator = tf.train.ChiefSessionCreator( scaffold=tf.train.Scaffold(saver=saver), checkpoint_filename_with_path=FLAGS.checkpoint_path, master=FLAGS.master) with tf.train.MonitoredSession(session_creator=session_creator) as sess: with tf.gfile.Open(FLAGS.output_file, 'w') as out_file: for filenames, images in load_images(FLAGS.input_dir, batch_shape): labels = sess.run(predicted_labels, feed_dict={x_input: images}) for filename, label in zip(filenames, labels): out_file.write('{0},{1}\n'.format(filename, label))
Example #25
Source File: attack.py From robust_physical_perturbations with MIT License | 5 votes |
def inception(x_input): ''' Builds the inception network model, loads its weights from FLAGS.checkpoint_path, and returns the softmax activations tensor. ''' from tensorflow.contrib.slim.nets import inception as inception_tf slim = tf.contrib.slim with slim.arg_scope(inception_tf.inception_v3_arg_scope()): _, end_points = inception_tf.inception_v3(x_input, \ num_classes=FLAGS.num_classes, \ is_training=False) return end_points['Logits']
Example #26
Source File: imagenet_train_inception_resnet.py From tensorflow_yolo2 with MIT License | 5 votes |
def __call__(self, x_input): """Constructs model and return probabilities for given input.""" reuse = True if self.built else None with slim.arg_scope(inception.inception_v3_arg_scope()): _, end_points = inception.inception_v3( x_input, num_classes=self.num_classes, is_training=False, reuse=reuse) self.built = True output = end_points['Predictions'] probs = output.op.inputs[0] return probs
Example #27
Source File: attack.py From DI-2-FGSM with MIT License | 5 votes |
def graph(x, y, i, x_max, x_min, grad): eps = 2.0 * FLAGS.max_epsilon / 255.0 eps_iter = 2.0 / 255.0 num_classes = 1001 momentum = FLAGS.momentum with slim.arg_scope(inception.inception_v3_arg_scope()): logits, end_points = inception.inception_v3( input_diversity(x), num_classes=num_classes, is_training=False) pred = tf.argmax(end_points['Predictions'], 1) # here is the way to stable gt lables first_round = tf.cast(tf.equal(i, 0), tf.int64) y = first_round * pred + (1 - first_round) * y one_hot = tf.one_hot(y, num_classes) cross_entropy = tf.losses.softmax_cross_entropy(one_hot, logits) # compute the gradient info noise = tf.gradients(cross_entropy, x)[0] noise = noise / tf.reduce_mean(tf.abs(noise), [1,2,3], keep_dims=True) # accumulate the gradient noise = momentum * grad + noise x = x + eps_iter * tf.sign(noise) x = tf.clip_by_value(x, x_min, x_max) i = tf.add(i, 1) return x, y, i, x_max, x_min, noise
Example #28
Source File: attack_step_target_class.py From cleverhans with MIT License | 4 votes |
def main(_): # Images for inception classifier are normalized to be in [-1, 1] interval, # eps is a difference between pixels so it should be in [0, 2] interval. # Renormalizing epsilon from [0, 255] to [0, 2]. eps = 2.0 * FLAGS.max_epsilon / 255.0 batch_shape = [FLAGS.batch_size, FLAGS.image_height, FLAGS.image_width, 3] nb_classes = 1001 tf.logging.set_verbosity(tf.logging.INFO) all_images_taget_class = load_target_class(FLAGS.input_dir) with tf.Graph().as_default(): # Prepare graph x_input = tf.placeholder(tf.float32, shape=batch_shape) with slim.arg_scope(inception.inception_v3_arg_scope()): logits, end_points = inception.inception_v3( x_input, num_classes=nb_classes, is_training=False) target_class_input = tf.placeholder(tf.int32, shape=[FLAGS.batch_size]) one_hot_target_class = tf.one_hot(target_class_input, nb_classes) cross_entropy = tf.losses.softmax_cross_entropy(one_hot_target_class, logits, label_smoothing=0.1, weights=1.0) cross_entropy += tf.losses.softmax_cross_entropy(one_hot_target_class, end_points['AuxLogits'], label_smoothing=0.1, weights=0.4) x_adv = x_input - eps * tf.sign(tf.gradients(cross_entropy, x_input)[0]) x_adv = tf.clip_by_value(x_adv, -1.0, 1.0) # Run computation saver = tf.train.Saver(slim.get_model_variables()) session_creator = tf.train.ChiefSessionCreator( scaffold=tf.train.Scaffold(saver=saver), checkpoint_filename_with_path=FLAGS.checkpoint_path, master=FLAGS.master) with tf.train.MonitoredSession(session_creator=session_creator) as sess: for filenames, images in load_images(FLAGS.input_dir, batch_shape): target_class_for_batch = ( [all_images_taget_class[n] for n in filenames] + [0] * (FLAGS.batch_size - len(filenames))) adv_images = sess.run(x_adv, feed_dict={ x_input: images, target_class_input: target_class_for_batch }) save_images(adv_images, filenames, FLAGS.output_dir)
Example #29
Source File: attack_step_target_class.py From neural-fingerprinting with BSD 3-Clause "New" or "Revised" License | 4 votes |
def main(_): # Images for inception classifier are normalized to be in [-1, 1] interval, # eps is a difference between pixels so it should be in [0, 2] interval. # Renormalizing epsilon from [0, 255] to [0, 2]. eps = 2.0 * FLAGS.max_epsilon / 255.0 batch_shape = [FLAGS.batch_size, FLAGS.image_height, FLAGS.image_width, 3] num_classes = 1001 tf.logging.set_verbosity(tf.logging.INFO) all_images_taget_class = load_target_class(FLAGS.input_dir) with tf.Graph().as_default(): # Prepare graph x_input = tf.placeholder(tf.float32, shape=batch_shape) with slim.arg_scope(inception.inception_v3_arg_scope()): logits, end_points = inception.inception_v3( x_input, num_classes=num_classes, is_training=False) target_class_input = tf.placeholder(tf.int32, shape=[FLAGS.batch_size]) one_hot_target_class = tf.one_hot(target_class_input, num_classes) cross_entropy = tf.losses.softmax_cross_entropy(one_hot_target_class, logits, label_smoothing=0.1, weights=1.0) cross_entropy += tf.losses.softmax_cross_entropy(one_hot_target_class, end_points['AuxLogits'], label_smoothing=0.1, weights=0.4) x_adv = x_input - eps * tf.sign(tf.gradients(cross_entropy, x_input)[0]) x_adv = tf.clip_by_value(x_adv, -1.0, 1.0) # Run computation saver = tf.train.Saver(slim.get_model_variables()) session_creator = tf.train.ChiefSessionCreator( scaffold=tf.train.Scaffold(saver=saver), checkpoint_filename_with_path=FLAGS.checkpoint_path, master=FLAGS.master) with tf.train.MonitoredSession(session_creator=session_creator) as sess: for filenames, images in load_images(FLAGS.input_dir, batch_shape): target_class_for_batch = ( [all_images_taget_class[n] for n in filenames] + [0] * (FLAGS.batch_size - len(filenames))) adv_images = sess.run(x_adv, feed_dict={ x_input: images, target_class_input: target_class_for_batch }) save_images(adv_images, filenames, FLAGS.output_dir)