Do I need to train a pretrained model? Suppose I found on the Web (e.g. Github) a neural network model which perform object recognition.
The repository provides weights for this model and it provides also a train folder with tools/script to train the model.
Why should I train the model if it yet works with those weights?

In principle, you don't need to retrain it. However, it is very likely that your data do not share the same distributional properties of the original data used to train the model. This can cause losses in performance.
Then, it might be useful to optimize the weights in your new domain to achieve better performance. This process is called "fine-tuning", and it has been used to great effect in many applications.
