コード例 #1
0
    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
コード例 #2
0
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 []
コード例 #3
0
ファイル: blacklist_cache.py プロジェクト: kitaka/prioritizer
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"
コード例 #4
0
ファイル: caching_steps.py プロジェクト: kitaka/prioritizer
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
コード例 #5
0
ファイル: test_encoder.py プロジェクト: kitaka/prioritizer
 def test_that_encode_text_using_md5(self):
     text = "important text"
     encoder = Encoder()
     encoded_text = encoder.encode(text)
     self.assertEquals(encoded_text, 'encrypted_value')
コード例 #6
0
 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')