Solved – how to understand ‘end to end’ in deep learning

conv-neural-networkdeep learningmachine learning

Recently, I do some literature research about CNN and find there is a concept of

end to end training

Such as the abstract in Fully Convolutional Networks for Semantic Segmentation

How to understand that? What is end-to-end training?

Best Answer

Traditionally, we extract pre-defined features before prediction.

data -> extracted features -> learning algorithm -> output

However, hand-engineered features limit the potential performance as some of them are poor approximation of reality and some of them throw away some information.

End-to-end learning means that we replace the pipeline with a single learning algorithm so that it goes directly from the input to the desired output to overcome limitations of the traditional approach.

data -> learning algorithm -> output

End-to-end learning system tend to do better when there is a lot of labeled data as the learning algorithm can somehow learn features by itself. When the training set is small, it tends to do worse than hand-engineered pipeline.