Exemple #1
0
def test_matrix_multiply():
    m = Matrix([
        [0.0, 0.1],
        [0.6, 1.0],
    ])
    res = Matrix([
        [0.0, 0.05],
        [0.3, 0.5],
    ])
    assert matrix_multiply(m, 0.5) == res
Exemple #2
0
    def decode(self, signal, activation_threshold=None):
        assert len(signal) == self.conf.UNIT_OUTPUT_WIDTH

        candidates = []
        for activity, pattern in zip(signal, self._patterns_store.get_objects()):
            candidate = matrix_multiply(pattern, activity)
            candidate_activity = self._activate(candidate, activation_threshold)
            if candidate_activity:
                candidates.append((candidate_activity, candidate))

        if not candidates:
            return None

        return max(candidates, key=lambda item: item[0])[1]
Exemple #3
0
    def decode(self, signal, activation_threshold=None):
        assert len(signal) == self.conf.UNIT_OUTPUT_WIDTH

        candidates = []
        for activity, pattern in zip(signal,
                                     self._patterns_store.get_objects()):
            candidate = matrix_multiply(pattern, activity)
            candidate_activity = self._activate(candidate,
                                                activation_threshold)
            if candidate_activity:
                candidates.append((candidate_activity, candidate))

        if not candidates:
            return None

        return max(candidates, key=lambda item: item[0])[1]