基础模型
基础模型是大规模机器学习模型,它们经过大规模海量数据训练。这些模型通常使用某种形式的自监督或半监督训练算法进行训练。基础模型的主要目标是作为入门模型,可以适应各种下游任务。
基础模型的早期例子是预训练语言模型 (LMs),包括 Google 的 BERT 和各种早期的 GPT (Generative Pre-trained Transformer,生成式预训练 Transformer) 基础模型,其中值得注意的是 OpenAI 的 “GPT-n” 系列。这些广泛的模型反过来可以用于使用各种目标数据集的任务和领域特定模型。例如,医疗代码。
这些基础模型最初主要用于文本和语言应用程序,现已发展为支持计算机视觉和多模态应用程序,例如 DALL-E 和 Flamingo。
TAO v5.1.0 引入了微调基础模型图像骨干网络的功能,用于以下下游任务。
支持的骨干网络列表包括
OpenAI CLIP 图像骨干网络
架构 | 预训练数据集 | in_channels |
|
* laion400m_e31 |
512 |
ViT-B-16 |
laion400m_e31 | 512 |
ViT-L-14 |
laion400m_e31 | 768 |
ViT-H-14 |
laion2b_s32b_b79k | 1024 |
ViT-g-14 |
laion2b_s12b_b42k | 1024 |
EVA - CLIP 图像骨干网络
架构 | 预训练数据集 | in_channels |
EVA02-L-14 |
merged2b_s4b_b131k | 768 |
EVA02-L-14-336 |
laion400m_e31 | 768 |
EVA02-E-14 |
laion400m_e31 | 1024 |
EVA02-E-14-plus |
laion2b_s32b_b79k | 1024 |
NVIDIA 还发布了一个名为 NV-Dinov2 的基础模型,该模型可通过 NVIDIA AI Enterprise 计划获得。NV-Dinov2 是一个视觉基础模型,在 NVIDIA 专有的大规模数据集上训练。Dinov2 是一种自监督学习方法,它结合了两种 SSL 技术
DINO
iBOT
这些模型可以通过生成通用的视觉特征来简化图像在系统中的使用。通用视觉特征适用于跨图像分布和任务,无需微调。
Nvidia 的模型在大型精选数据集上训练,学习了强大的细粒度表示,这对于定位和分类任务非常有用。
该模型可用作各种下游任务的基础模型,只需少量标记示例。有关该方法的更多详细信息,请参阅:Dinov2
TAO 5.2 及更高版本支持一些用于目标检测的基础模型。NV-DINOv2 现在可以用作 DINO 目标检测模型的骨干网络。
为了缓解标准视觉 Transformer (ViT) 在密集预测任务中的性能不足,TAO 支持 ViT-Adapter_ 架构。这使得从大型数据集中学习了丰富语义表示的强大 ViT 能够在密集预测任务上实现与特定于视觉的 Transformer 相当的性能。
要了解有关使用基础模型作为目标检测任务骨干网络的更多信息,请参阅 ViT 骨干网络的示例 Spec 文件。
TAO 5.3 及更高版本支持一些用于变更检测(分类和分割)的基础模型。NV-DINOv2 现在可以用作 Visual ChangeNet-Classification 和 Segmentation 模型的骨干网络。
为了缓解标准视觉 Transformer (ViT) 在密集预测任务中的性能不足,TAO 支持 ViT-Adapter_ 架构。这使得从大型数据集中学习了丰富语义表示的强大 ViT 能够在密集预测任务上实现与特定于视觉的 Transformer 相当的性能。
要了解有关使用基础模型作为变更检测任务骨干网络的更多信息,请参阅 Visual ChangeNet - Segmentation ViT 变更网络分割的示例 Spec 文件。Visual ChangeNet - Classification ViT 变更网络分类的示例 Spec 文件。