<s> import numpy as np <EOL> from neupy . layers import Linear , CompetitiveOutput <EOL> from neupy import algorithms <EOL> from base import BaseTestCase <EOL> input_data = np . array ( [ <EOL> [ <NUM_LIT> , <NUM_LIT> ] , <EOL> [ - <NUM_LIT> , <NUM_LIT> ] , <EOL> [ <NUM_LIT> , <NUM_LIT> ] , <EOL> [ <NUM_LIT> , - <NUM_LIT> ] , <EOL> [ - <NUM_LIT> , - <NUM_LIT> ] , <EOL> [ - <NUM_LIT> , - <NUM_LIT> ] , <EOL> ] ) <EOL> class KohonenTestCase ( BaseTestCase ) : <EOL> def test_kohonen_success ( self ) : <EOL> kh = algorithms . Kohonen ( <EOL> n_inputs = <NUM_LIT:2> , <EOL> n_outputs = <NUM_LIT:3> , <EOL> weight = np . array ( [ <EOL> [ <NUM_LIT> , <NUM_LIT> , - <NUM_LIT> ] , <EOL> [ - <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] , <EOL> ] ) , <EOL> step = <NUM_LIT:0.5> , <EOL> verbose = False , <EOL> ) <EOL> data = np . reshape ( input_data [ <NUM_LIT:0> , : ] , ( <NUM_LIT:1> , input_data . shape [ <NUM_LIT:1> ] ) ) <EOL> kh . train ( data , epochs = <NUM_LIT:1> ) <EOL> np . testing . assert_array_almost_equal ( <EOL> kh . weight , <EOL> np . array ( [ <EOL> [ <NUM_LIT> , <NUM_LIT> , - <NUM_LIT> ] , <EOL> [ - <NUM_LIT> , <NUM_LIT> , <NUM_LIT> ] , <EOL> ] ) , <EOL> decimal = <NUM_LIT:4> <EOL> ) <EOL> def test_train_different_inputs ( self ) : <EOL> self . assertInvalidVectorTrain ( <EOL> algorithms . Kohonen ( <EOL> n_inputs = <NUM_LIT:1> , <EOL> n_outputs = <NUM_LIT:2> , <EOL> step = <NUM_LIT:0.5> , <EOL> verbose = False <EOL> ) , <EOL> np . array ( [ <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:3> ] ) <EOL> ) <EOL> def test_predict_different_inputs ( self ) : <EOL> knet = algorithms . Kohonen ( <EOL> n_inputs = <NUM_LIT:1> , <EOL> n_outputs = <NUM_LIT:2> , <EOL> step = <NUM_LIT:0.5> , <EOL> verbose = False , <EOL> ) <EOL> data = np . array ( [ [ <NUM_LIT:1> , <NUM_LIT:1> , <NUM_LIT:1> ] ] ) . T <EOL> target = np . array ( [ <EOL> [ <NUM_LIT:1> , <NUM_LIT:0> ] , <EOL> [ <NUM_LIT:1> , <NUM_LIT:0> ] , <EOL> [ <NUM_LIT:1> , <NUM_LIT:0> ] , <EOL> ] ) <EOL> knet . train ( data , epochs = <NUM_LIT:100> ) <EOL> self . assertInvalidVectorPred ( knet , data . ravel ( ) , target , <EOL> decimal = <NUM_LIT:2> ) </s>
