modify perceptron