def _build(self, images): embedder = Embedder() embedded_grads_weights = embedder.embed_all_grads_weights( self._placeholders) # Fake batching embedded_grads_weights = tf.expand_dims(embedded_grads_weights, 0) encoder = Encoder(self._source_num_way, self._target_num_way) encoded = encoder.encode(embedded_grads_weights) decoded = encoder.decode(encoded) # Fake batching decoded = tf.squeeze(decoded, [0]) weight_updates = embedder.unembed_all_weights(decoded) the_list = [tf.nn.moments(w, [0]) for w in weight_updates] mean_means = tf.reduce_mean([tf.reduce_mean(v[0]) for v in the_list]) mean_vars = tf.reduce_mean([tf.reduce_mean(v[1]) for v in the_list]) tf.summary.scalar('weight_updates_mean', mean_means, [META_TRAIN_COMBINED_SUMMARIES]) tf.summary.scalar('weight_updates_var', mean_vars, [META_TRAIN_COMBINED_SUMMARIES]) # Get the updated model new_weights = [ self._placeholders[0][1] + weight_updates[0], self._placeholders[1][1] + weight_updates[1], self._placeholders[2][1] + weight_updates[2], self._placeholders[3][1] + weight_updates[3], self._placeholders[4][1] + weight_updates[4] ] self.outputs = self.new_model_forward(new_weights, images) return self.outputs
class StepsCache: def __init__(self, client, logger, username, password, url, cache_key_name): self.client = client self.logger = logger self.username = username self.password = password self.url = url self.cache_key_name = cache_key_name self.encoder = Encoder() def get_key_name(self): return self.cache_key_name def add_script_steps_data(self): script_steps = self.get_steps_information() for value in script_steps: self.client.sadd(self.get_key_name(), self.encoder.encode(value)) def get_steps_information(self): try: response = self.get_authorized_response(self.url) data = json.loads(response.read()) return data["steps"] except Exception, e: self.logger.error("Error when getting registration steps data %s", e) return []
class BlacklistCache: def __init__(self, client): self.client = client self.encoder = Encoder() def add_to_blacklist(self, text): encoded_text = self.encoder.encode(text) self.client.sadd(self.key_name(), encoded_text) def key_name(self): return "ureport-high-priority-blacklist"
class StepsCache: def __init__(self, client, username, password, url, cache_key_name): self.client = client self.username = username self.password = password self.url = url self.cache_key_name = cache_key_name self.encoder = Encoder() def get_key_name(self): return self.cache_key_name def add_script_steps_data(self): script_steps = self.get_steps_information() for value in script_steps: self.client.sadd(self.get_key_name(), self.encoder.encode(value)) def get_steps_information(self): response = self.get_authorized_response(self.url) data = json.loads(response.read()) return data["steps"] def delete_script_steps_data(self): self.client.delete(self.get_key_name()) def has_text(self, text): return self.client.sismember(self.get_key_name(), self.encoder.encode(text)) def get_authorized_response(self, url): request = urllib2.Request(url) base64string = base64.encodestring('%s:%s' % (self.username, self.password)).replace('\n', '') request.add_header("Authorization", "Basic %s" % base64string) response = urllib2.urlopen(request) return response
def test_that_encode_text_using_md5(self): text = "important text" encoder = Encoder() encoded_text = encoder.encode(text) self.assertEquals(encoded_text, 'encrypted_value')
def test_that_encode_text_using_md5(self): text = u"why dòn't ìnsért sòme strànge chàrs? ù.ù" encoder = Encoder() encoded_text = encoder.encode(text) self.assertEquals(encoded_text, 'encrypted_value')