Lecture 7 - Perceptron implementation