What are upstream tasks and downstream tasks?

①Upstream task
pre-training model. Generally, upstream data is used for pre-training to generate a model that includes visual representation capabilities.
For example, what we want is a convolutional neural network or Transformer that can extract image features. We will use a large number of images to classify the downstream tasks of images or other methods such as self-supervision (see CLIP) to train and get a A model with appropriate weights (which can extract the features of the image well), then finally we remove the FC layer of the last layer of the obtained model (originally used for image classification output categories), and this model becomes a very good The pre-training model can extract the features of the image by inputting a picture, which can be used for our downstream tasks (add some modules such as detection heads after this model to process the downstream tasks we want, or modify The lower FC layer is used for image classification of another bunch of categories).
The upstream task is generally called backbone, the backbone network.

②Downstream tasks
Downstream tasks: the tasks you really want to solve. If you want to train a network whether it is a generation task or a detection task, you may use some public datasets for training, such as coco, imagenet and other public datasets for training, and these datasets may not be very good for you What I really want to accomplish means fine-tuning this pre-trained model on the dataset of the actual problem to be solved, and this task is called a downstream task.

It is recommended to learn how to fine-tune the pre-training model

Reference CSDN:
downstream task (downstream task) meaning
[computer vision] understanding of upstream tasks and downstream tasks

Guess you like

Origin blog.csdn.net/qq_45104603/article/details/130054927