Question: What is the difference between back-propagation and feed-forward neural networks?

By googling and reading, I found that in feed-forward there is only forward direction, but in back-propagation once we need to do a forward-propagation and then back-propagation. I referred to [this link](http://www.nnwj.de/backpropagation.html)

1. Any other difference other than the direction of flow? What about the weight calculation? The outcome?
2. Say I am implementing back-propagation, i.e. it contains forward and backward flow. So is back-propagation enough for showing feed-forward?

Answer: 
There is no pure backpropagation or pure feed-forward neural network.

Backpropagation is algorithm to train (adjust weight) of neural network.
Input for backpropagation is output\_vector, target\_output\_vector,
output is adjusted\_weight\_vector.

Feed-forward is algorithm to calculate output vector from input vector.
Input for feed-forward is input\_vector,
output is output\_vector.

When you are training neural network, you need to use both algorithms.

When you are using neural network (which have been trained), you are using only feed-forward.

Basic type of neural network is multi-layer perceptron, which is Feed-forward backpropagation neural network.

There are also more advanced types of neural networks, using modified algorithms.

Also good source to study : <ftp://ftp.sas.com/pub/neural/FAQ.html>
Best to understand principle is to program it (tutorial in this video) <https://www.youtube.com/watch?v=KkwX7FkLfug>
To be simple: 

Feed-foward is an architecture. The contrary one is Recurrent Neural Networks. 

Back Propagation (BP) is a solving method. BP can solve both feed-foward and Recurrent Neural Networks.