0


什么是上游任务、下游任务?

①上游任务
预训练模型。一般就是利用上游数据进行预训练,以生成一个包含视觉表征能力的模型。
比如,我们想要的是一个能够提取图片特征能力的卷积神经网络或者Transformer,我们会用大量图片用图片分类这个下游任务或者其他比如自监督的方法(可以参考CLIP)去进行训练,得到一个权重合适的模型(能够很好地提取出图像的特征),那么最后我们把得到的这个模型最后一层的FC层(原本用于图片分类输出类别)去掉,这个模型就成为了一个很好的预训练模型,输入一张图,就能够提取出图像的特征,就可以用于我们的下游任务(在这个模型后面加一些诸如检测头之类的模块,处理我们想要的下游任务,或者修改下FC层,用于另外一堆类别的图像分类)。
上游任务一般称为backbone,主干网络。

②下游任务
下游任务:真正想要解决的任务。如果你想训练一个网络无论是生成任务还是检测任务,你可能会使用一些公开的数据集进行训练,例如coco,imagenet之类的公共数据集进行训练,而这些数据集可能不会很好完成你真正想完成的内容,这就意味着在解决的实际问题的数据集上,要微调这个预训练模型,而这个任务称为下游任务。

建议再学学如何进行预训练模型的微调

参考CSDN:
下游任务(downstream task)含义
【计算机视觉】上游任务和下游任务的理解


本文转载自: https://blog.csdn.net/qq_45104603/article/details/130054927
版权归原作者 小学生玩编程 所有, 如有侵权,请联系我们删除。

“什么是上游任务、下游任务?”的评论:

还没有评论