def test_compare(rng): a = SemanticPointer(50, rng=rng) * 10 b = SemanticPointer(50, rng=rng) * 0.1 assert a.compare(a) > 0.99 assert a.compare(b) < 0.2 assert np.allclose(a.compare(b), a.dot(b) / (a.length() * b.length()))
def test_compare(): rng = np.random.RandomState(5) a = SemanticPointer(50, rng=rng)*10 b = SemanticPointer(50, rng=rng)*0.1 assert np.allclose(a.compare(a), 1) assert np.allclose(a.compare(b), 0, atol=0.01) assert np.allclose(a.compare(b), a.dot(b) / (a.length() * b.length()))
def test_compare(): rng = np.random.RandomState(5) a = SemanticPointer(50, rng=rng) * 10 b = SemanticPointer(50, rng=rng) * 0.1 assert np.allclose(a.compare(a), 1) assert np.allclose(a.compare(b), 0, atol=0.01) assert np.allclose(a.compare(b), a.dot(b) / (a.length() * b.length()))
def test_init(): a = SemanticPointer([1, 2, 3, 4]) assert len(a) == 4 a = SemanticPointer([1, 2, 3, 4, 5]) assert len(a) == 5 a = SemanticPointer(list(range(100))) assert len(a) == 100 a = SemanticPointer(27) assert len(a) == 27 assert np.allclose(a.length(), 1) with pytest.raises(Exception): a = SemanticPointer(np.zeros(2, 2)) with pytest.raises(Exception): a = SemanticPointer(-1) with pytest.raises(Exception): a = SemanticPointer(0) with pytest.raises(Exception): a = SemanticPointer(1.7) with pytest.raises(Exception): a = SemanticPointer(None) with pytest.raises(Exception): a = SemanticPointer(int)
def test_make_unitary(): rng = np.random.RandomState(1) a = SemanticPointer(100, rng=rng) a.make_unitary() assert np.allclose(1, a.length()) assert np.allclose(1, (a * a).length()) assert np.allclose(1, (a * a * a).length())
def test_make_unitary(rng): a = SemanticPointer(100, rng=rng) a.make_unitary() assert np.allclose(1, a.length()) assert np.allclose(1, (a * a).length()) assert np.allclose(1, (a * a * a).length())
def test_normalize(): a = SemanticPointer([1, 1]) a.normalize() assert np.allclose(a.length(), 1)
def test_length(): a = SemanticPointer([1, 1]) assert np.allclose(a.length(), np.sqrt(2)) a = SemanticPointer(10) * 1.2 assert np.allclose(a.length(), 1.2)
def test_length(): a = SemanticPointer([1, 1]) assert np.allclose(a.length(), np.sqrt(2)) a = SemanticPointer(10)*1.2 assert np.allclose(a.length(), 1.2)