self rate rate layer __init__(selfnn def output_values(selfinput_valuestraining=false)"""returns the outputs for the input values it remembers the input values for the backprop ""if trainingscaling /( -self rateself outputs[ if flip(self rateelse inp*scaling make with probability rate for inp in input_valuesreturn self outputs elsereturn input_values def backprop(self,errors)"""returns the derivative of the errors""return errors examples the following constructs neural network with one hidden layer the hidden layer has width with relu activation function the output layer used sigmoid learnnn py -(continued #data data_from_file('data/mail_reading csv'target_index=- #data data_from_file('data/mail_reading_consis csv'target_index=- data data_from_file('data/spect csv'prob_test= target_index= #data data_from_file('data/iris data'prob_test= target_index=- examples approx test test #data data_from_file('data/if_x_then_y_else_z csv'num_train= target_index=- not linearly sep #data data_from_file('data/holiday csv'target_index=- #num_train= #data data_from_file('data/processed cleveland data'target_index=- random seed(none nn nn(datavalidation_proportion nn add_layer(linear_complete_layer(nn , )#nn add_layer(sigmoid_layer(nn )comment this or the next nn add_layer(relu_layer(nn )nn add_layer(linear_complete_layer(nn , )when using output_type="boolean#nn add_layer(linear_complete_layer(nn , )when using output_type="categorical#nn learn(epochs nn do nn(dataversion june