In this work I will try to present a distributed implementation of the back-propagation algorithm which performs better than a centralized version. As the basis for this work I used the Matrix Back-Propagation Algorithm developed by Davide Anguita. This algorithm is a highly efficient version of the standard back-propagation algorithm using the "learning by epoch" mode of training. Because it uses optimized matrix operations to perform the usual operations in the learning phases of the neural network, this method achieves a very good performance. Based on this work I have implemented three distributed versions, each exploring a different aspect of distribution.