final version for report - TODO:multi layer perceptron