Source code for neurodynex.test.test_hopfield

import matplotlib
matplotlib.use('Agg')  # needed for plotting on travis


[docs]def test_alphabet(): """Test if alphabet is loadable.""" from neurodynex.hopfield_network.hopfield import\ load_alphabet load_alphabet()
[docs]def test_net_random(): """Test hopfield network with random patterns.""" from neurodynex.hopfield_network.hopfield import\ HopfieldNetwork size = 8 n = HopfieldNetwork(size) n.make_pattern() assert n.patterns.shape == (1, size**2) n.run(flip_ratio=.2) assert n.overlap(0) == 1. n.run(flip_ratio=.8) assert n.overlap(0) == -1.
[docs]def test_net_alphabet(): """Test hopfield network with alphabet patterns.""" from neurodynex.hopfield_network.hopfield import\ HopfieldNetwork size = 10 n = HopfieldNetwork(size) n.make_pattern(letters='lcn') assert n.patterns.shape == (3, size**2) for i in range(3): n.run(mu=i, flip_ratio=.2) assert n.overlap(i) == 1. n.run(mu=i, flip_ratio=.8) assert n.overlap(i) == -1.