注意
点击此处下载完整的示例代码
TorchMultimodal 教程:微调 FLAVA¶
创建于:2022 年 10 月 27 日 | 最后更新:2023 年 4 月 11 日 | 最后验证:2024 年 11 月 5 日
多模态 AI 最近因其无处不在的特性而变得非常流行,从图像字幕和视觉搜索等用例到更近期的文本生成图像等应用。TorchMultimodal 是一个由 Pytorch 支持的库,包含构建块和端到端示例,旨在支持和加速多模态研究。
在本教程中,我们将演示如何使用 TorchMultimodal 库中的一个预训练的 SOTA 模型 FLAVA 在多模态任务(即视觉问答 (VQA))上进行微调。该模型由用于文本和图像的两个单模态 transformer 编码器以及一个用于结合这两个嵌入的多模态编码器组成。它使用对比损失、图像文本匹配损失以及文本、图像和多模态掩码损失进行预训练。
安装¶
本教程将使用 Hugging Face 的 TextVQA 数据集和 bert tokenizer
。因此,除了 TorchMultimodal 之外,您还需要安装 datasets 和 transformers。
注意
在 Google Colab 中运行本教程时,通过创建新单元格并运行以下命令来安装所需的软件包
!pip install torchmultimodal-nightly
!pip install datasets
!pip install transformers
步骤¶
通过运行以下命令将 Hugging Face 数据集下载到您计算机上的一个目录
wget http://dl.fbaipublicfiles.com/pythia/data/vocab.tar.gz tar xf vocab.tar.gz
注意
如果您在 Google Colab 中运行本教程,请在新单元格中运行这些命令,并在这些命令前加上感叹号 (!)
在本教程中,我们将 VQA 视为分类任务,其中输入是图像和问题(文本),输出是答案类别。因此,我们需要下载包含答案类别的词汇文件,并创建答案到标签的映射。
我们还从 Hugging Face 加载了包含 34602 个训练样本(图像、问题和答案)的textvqa 数据集
我们看到有 3997 个答案类别,其中包括一个表示未知答案的类别。
with open("data/vocabs/answers_textvqa_more_than_1.txt") as f:
vocab = f.readlines()
answer_to_idx = {}
for idx, entry in enumerate(vocab):
answer_to_idx[entry.strip("\n")] = idx
print(len(vocab))
print(vocab[:5])
from datasets import load_dataset
dataset = load_dataset("textvqa")
3997
['<unk>\n', 'nokia\n', 'ec\n', 'virgin\n', '2011\n']
/usr/local/lib/python3.10/dist-packages/datasets/load.py:1491: FutureWarning:
The repository for textvqa contains custom code which must be executed to correctly load the dataset. You can inspect the repository content at https://hugging-face.cn/datasets/textvqa
You can avoid this message in future by passing the argument `trust_remote_code=True`.
Passing `trust_remote_code=True` will be mandatory to load this dataset from the next major release of `datasets`.
Downloading builder script: 0%| | 0.00/5.02k [00:00<?, ?B/s]
Downloading builder script: 100%|##########| 5.02k/5.02k [00:00<00:00, 43.8MB/s]
Downloading readme: 0%| | 0.00/13.2k [00:00<?, ?B/s]
Downloading readme: 100%|##########| 13.2k/13.2k [00:00<00:00, 68.0MB/s]
Downloading data: 0%| | 0.00/21.6M [00:00<?, ?B/s]
Downloading data: 61%|###### | 13.1M/21.6M [00:00<00:00, 131MB/s]
Downloading data: 100%|##########| 21.6M/21.6M [00:00<00:00, 134MB/s]
Downloading data: 0.00B [00:00, ?B/s]
Downloading data: 3.12MB [00:00, 200MB/s]
Downloading data: 0.00B [00:00, ?B/s]
Downloading data: 2.77MB [00:00, 224MB/s]
Downloading data: 0%| | 0.00/7.07G [00:00<?, ?B/s]
Downloading data: 0%| | 11.0M/7.07G [00:00<01:04, 110MB/s]
Downloading data: 0%| | 22.6M/7.07G [00:00<01:02, 113MB/s]
Downloading data: 0%| | 34.1M/7.07G [00:00<01:01, 114MB/s]
Downloading data: 1%| | 45.6M/7.07G [00:00<01:01, 114MB/s]
Downloading data: 1%| | 57.0M/7.07G [00:00<01:05, 107MB/s]
Downloading data: 1%| | 67.8M/7.07G [00:00<01:07, 104MB/s]
Downloading data: 1%|1 | 78.3M/7.07G [00:00<01:08, 103MB/s]
Downloading data: 1%|1 | 88.6M/7.07G [00:00<01:08, 102MB/s]
Downloading data: 1%|1 | 98.9M/7.07G [00:00<01:08, 102MB/s]
Downloading data: 2%|1 | 109M/7.07G [00:01<01:08, 102MB/s]
Downloading data: 2%|1 | 119M/7.07G [00:01<01:07, 102MB/s]
Downloading data: 2%|1 | 130M/7.07G [00:01<01:07, 103MB/s]
Downloading data: 2%|1 | 140M/7.07G [00:01<01:07, 103MB/s]
Downloading data: 2%|2 | 150M/7.07G [00:01<01:07, 102MB/s]
Downloading data: 2%|2 | 160M/7.07G [00:01<01:07, 102MB/s]
Downloading data: 2%|2 | 171M/7.07G [00:01<01:07, 103MB/s]
Downloading data: 3%|2 | 181M/7.07G [00:01<01:06, 103MB/s]
Downloading data: 3%|2 | 192M/7.07G [00:01<01:07, 103MB/s]
Downloading data: 3%|2 | 202M/7.07G [00:01<01:06, 104MB/s]
Downloading data: 3%|3 | 214M/7.07G [00:02<01:03, 108MB/s]
Downloading data: 3%|3 | 227M/7.07G [00:02<00:59, 115MB/s]
Downloading data: 3%|3 | 240M/7.07G [00:02<00:56, 120MB/s]
Downloading data: 4%|3 | 253M/7.07G [00:02<00:55, 123MB/s]
Downloading data: 4%|3 | 267M/7.07G [00:02<00:54, 126MB/s]
Downloading data: 4%|3 | 280M/7.07G [00:02<00:53, 128MB/s]
Downloading data: 4%|4 | 293M/7.07G [00:02<00:53, 127MB/s]
Downloading data: 4%|4 | 305M/7.07G [00:02<00:53, 127MB/s]
Downloading data: 4%|4 | 318M/7.07G [00:02<00:53, 126MB/s]
Downloading data: 5%|4 | 331M/7.07G [00:02<00:53, 126MB/s]
Downloading data: 5%|4 | 343M/7.07G [00:03<00:53, 126MB/s]
Downloading data: 5%|5 | 356M/7.07G [00:03<00:53, 126MB/s]
Downloading data: 5%|5 | 368M/7.07G [00:03<00:53, 126MB/s]
Downloading data: 5%|5 | 381M/7.07G [00:03<00:53, 126MB/s]
Downloading data: 6%|5 | 393M/7.07G [00:03<00:53, 126MB/s]
Downloading data: 6%|5 | 406M/7.07G [00:03<00:53, 126MB/s]
Downloading data: 6%|5 | 419M/7.07G [00:03<00:53, 125MB/s]
Downloading data: 6%|6 | 431M/7.07G [00:03<00:52, 126MB/s]
Downloading data: 6%|6 | 444M/7.07G [00:03<00:52, 126MB/s]
Downloading data: 6%|6 | 456M/7.07G [00:03<00:52, 126MB/s]
Downloading data: 7%|6 | 469M/7.07G [00:04<00:52, 125MB/s]
Downloading data: 7%|6 | 481M/7.07G [00:04<00:52, 125MB/s]
Downloading data: 7%|6 | 494M/7.07G [00:04<00:51, 127MB/s]
Downloading data: 7%|7 | 507M/7.07G [00:04<00:51, 126MB/s]
Downloading data: 7%|7 | 520M/7.07G [00:04<00:51, 127MB/s]
Downloading data: 8%|7 | 533M/7.07G [00:04<00:50, 128MB/s]
Downloading data: 8%|7 | 546M/7.07G [00:04<00:51, 127MB/s]
Downloading data: 8%|7 | 559M/7.07G [00:04<00:51, 127MB/s]
Downloading data: 8%|8 | 571M/7.07G [00:04<00:51, 126MB/s]
Downloading data: 8%|8 | 584M/7.07G [00:04<00:51, 126MB/s]
Downloading data: 8%|8 | 596M/7.07G [00:05<00:51, 126MB/s]
Downloading data: 9%|8 | 609M/7.07G [00:05<00:51, 125MB/s]
Downloading data: 9%|8 | 622M/7.07G [00:05<00:51, 125MB/s]
Downloading data: 9%|8 | 634M/7.07G [00:05<00:51, 125MB/s]
Downloading data: 9%|9 | 647M/7.07G [00:05<00:51, 125MB/s]
Downloading data: 9%|9 | 659M/7.07G [00:05<00:50, 126MB/s]
Downloading data: 10%|9 | 673M/7.07G [00:05<00:50, 128MB/s]
Downloading data: 10%|9 | 686M/7.07G [00:05<00:49, 129MB/s]
Downloading data: 10%|9 | 699M/7.07G [00:05<00:49, 130MB/s]
Downloading data: 10%|# | 712M/7.07G [00:05<00:48, 130MB/s]
Downloading data: 10%|# | 725M/7.07G [00:06<00:48, 130MB/s]
Downloading data: 10%|# | 738M/7.07G [00:06<00:48, 129MB/s]
Downloading data: 11%|# | 751M/7.07G [00:06<00:48, 130MB/s]
Downloading data: 11%|# | 765M/7.07G [00:06<00:48, 131MB/s]
Downloading data: 11%|# | 778M/7.07G [00:06<00:48, 130MB/s]
Downloading data: 11%|#1 | 791M/7.07G [00:06<00:48, 129MB/s]
Downloading data: 11%|#1 | 804M/7.07G [00:06<00:48, 129MB/s]
Downloading data: 12%|#1 | 817M/7.07G [00:06<00:48, 128MB/s]
Downloading data: 12%|#1 | 830M/7.07G [00:06<00:48, 128MB/s]
Downloading data: 12%|#1 | 842M/7.07G [00:06<00:48, 128MB/s]
Downloading data: 12%|#2 | 855M/7.07G [00:07<00:48, 128MB/s]
Downloading data: 12%|#2 | 868M/7.07G [00:07<00:48, 127MB/s]
Downloading data: 12%|#2 | 881M/7.07G [00:07<00:48, 127MB/s]
Downloading data: 13%|#2 | 893M/7.07G [00:07<00:48, 128MB/s]
Downloading data: 13%|#2 | 907M/7.07G [00:07<00:47, 129MB/s]
Downloading data: 13%|#3 | 920M/7.07G [00:07<00:47, 128MB/s]
Downloading data: 13%|#3 | 932M/7.07G [00:07<00:47, 128MB/s]
Downloading data: 13%|#3 | 945M/7.07G [00:07<00:47, 128MB/s]
Downloading data: 14%|#3 | 958M/7.07G [00:07<00:47, 128MB/s]
Downloading data: 14%|#3 | 971M/7.07G [00:07<00:47, 128MB/s]
Downloading data: 14%|#3 | 984M/7.07G [00:08<00:47, 128MB/s]
Downloading data: 14%|#4 | 996M/7.07G [00:08<00:47, 127MB/s]
Downloading data: 14%|#4 | 1.01G/7.07G [00:08<00:47, 128MB/s]
Downloading data: 14%|#4 | 1.02G/7.07G [00:08<00:47, 127MB/s]
Downloading data: 15%|#4 | 1.03G/7.07G [00:08<00:47, 127MB/s]
Downloading data: 15%|#4 | 1.05G/7.07G [00:08<00:47, 127MB/s]
Downloading data: 15%|#4 | 1.06G/7.07G [00:08<00:47, 128MB/s]
Downloading data: 15%|#5 | 1.07G/7.07G [00:08<00:46, 128MB/s]
Downloading data: 15%|#5 | 1.09G/7.07G [00:08<00:47, 127MB/s]
Downloading data: 16%|#5 | 1.10G/7.07G [00:08<00:47, 127MB/s]
Downloading data: 16%|#5 | 1.11G/7.07G [00:09<00:47, 127MB/s]
Downloading data: 16%|#5 | 1.12G/7.07G [00:09<00:47, 127MB/s]
Downloading data: 16%|#6 | 1.14G/7.07G [00:09<00:46, 126MB/s]
Downloading data: 16%|#6 | 1.15G/7.07G [00:09<00:46, 126MB/s]
Downloading data: 16%|#6 | 1.16G/7.07G [00:09<00:46, 126MB/s]
Downloading data: 17%|#6 | 1.17G/7.07G [00:09<00:46, 126MB/s]
Downloading data: 17%|#6 | 1.19G/7.07G [00:09<00:46, 126MB/s]
Downloading data: 17%|#6 | 1.20G/7.07G [00:09<00:46, 126MB/s]
Downloading data: 17%|#7 | 1.21G/7.07G [00:09<00:46, 126MB/s]
Downloading data: 17%|#7 | 1.22G/7.07G [00:09<00:46, 126MB/s]
Downloading data: 17%|#7 | 1.24G/7.07G [00:10<00:46, 126MB/s]
Downloading data: 18%|#7 | 1.25G/7.07G [00:10<00:46, 126MB/s]
Downloading data: 18%|#7 | 1.26G/7.07G [00:10<00:46, 126MB/s]
Downloading data: 18%|#8 | 1.28G/7.07G [00:10<00:46, 126MB/s]
Downloading data: 18%|#8 | 1.29G/7.07G [00:10<00:45, 126MB/s]
Downloading data: 18%|#8 | 1.30G/7.07G [00:10<00:45, 126MB/s]
Downloading data: 19%|#8 | 1.31G/7.07G [00:10<00:45, 126MB/s]
Downloading data: 19%|#8 | 1.33G/7.07G [00:10<00:45, 127MB/s]
Downloading data: 19%|#8 | 1.34G/7.07G [00:10<00:45, 126MB/s]
Downloading data: 19%|#9 | 1.35G/7.07G [00:10<00:45, 126MB/s]
Downloading data: 19%|#9 | 1.36G/7.07G [00:11<00:45, 126MB/s]
Downloading data: 19%|#9 | 1.38G/7.07G [00:11<00:45, 126MB/s]
Downloading data: 20%|#9 | 1.39G/7.07G [00:11<00:44, 126MB/s]
Downloading data: 20%|#9 | 1.40G/7.07G [00:11<00:44, 127MB/s]
Downloading data: 20%|## | 1.41G/7.07G [00:11<00:44, 127MB/s]
Downloading data: 20%|## | 1.43G/7.07G [00:11<00:44, 126MB/s]
Downloading data: 20%|## | 1.44G/7.07G [00:11<00:44, 125MB/s]
Downloading data: 21%|## | 1.45G/7.07G [00:11<00:45, 125MB/s]
Downloading data: 21%|## | 1.46G/7.07G [00:11<00:45, 125MB/s]
Downloading data: 21%|## | 1.48G/7.07G [00:11<00:45, 124MB/s]
Downloading data: 21%|##1 | 1.49G/7.07G [00:12<00:45, 124MB/s]
Downloading data: 21%|##1 | 1.50G/7.07G [00:12<00:45, 124MB/s]
Downloading data: 21%|##1 | 1.51G/7.07G [00:12<00:44, 124MB/s]
Downloading data: 22%|##1 | 1.53G/7.07G [00:12<00:44, 123MB/s]
Downloading data: 22%|##1 | 1.54G/7.07G [00:12<00:44, 123MB/s]
Downloading data: 22%|##1 | 1.55G/7.07G [00:12<00:44, 123MB/s]
Downloading data: 22%|##2 | 1.56G/7.07G [00:12<00:44, 123MB/s]
Downloading data: 22%|##2 | 1.58G/7.07G [00:12<00:44, 123MB/s]
Downloading data: 22%|##2 | 1.59G/7.07G [00:12<00:44, 123MB/s]
Downloading data: 23%|##2 | 1.60G/7.07G [00:12<00:44, 123MB/s]
Downloading data: 23%|##2 | 1.61G/7.07G [00:13<00:44, 123MB/s]
Downloading data: 23%|##2 | 1.63G/7.07G [00:13<00:44, 123MB/s]
Downloading data: 23%|##3 | 1.64G/7.07G [00:13<00:44, 123MB/s]
Downloading data: 23%|##3 | 1.65G/7.07G [00:13<00:44, 123MB/s]
Downloading data: 24%|##3 | 1.66G/7.07G [00:13<00:43, 123MB/s]
Downloading data: 24%|##3 | 1.67G/7.07G [00:13<00:43, 123MB/s]
Downloading data: 24%|##3 | 1.69G/7.07G [00:13<00:43, 123MB/s]
Downloading data: 24%|##4 | 1.70G/7.07G [00:13<00:43, 123MB/s]
Downloading data: 24%|##4 | 1.71G/7.07G [00:13<00:43, 123MB/s]
Downloading data: 24%|##4 | 1.72G/7.07G [00:13<00:43, 123MB/s]
Downloading data: 25%|##4 | 1.74G/7.07G [00:14<00:43, 123MB/s]
Downloading data: 25%|##4 | 1.75G/7.07G [00:14<00:42, 124MB/s]
Downloading data: 25%|##4 | 1.76G/7.07G [00:14<00:42, 126MB/s]
Downloading data: 25%|##5 | 1.78G/7.07G [00:14<00:41, 128MB/s]
Downloading data: 25%|##5 | 1.79G/7.07G [00:14<00:41, 129MB/s]
Downloading data: 25%|##5 | 1.80G/7.07G [00:14<00:40, 130MB/s]
Downloading data: 26%|##5 | 1.81G/7.07G [00:14<00:40, 130MB/s]
Downloading data: 26%|##5 | 1.83G/7.07G [00:14<00:40, 131MB/s]
Downloading data: 26%|##6 | 1.84G/7.07G [00:15<01:03, 82.2MB/s]
Downloading data: 26%|##6 | 1.85G/7.07G [00:15<00:56, 92.2MB/s]
Downloading data: 26%|##6 | 1.87G/7.07G [00:15<00:51, 101MB/s]
Downloading data: 27%|##6 | 1.88G/7.07G [00:15<00:47, 108MB/s]
Downloading data: 27%|##6 | 1.89G/7.07G [00:15<00:45, 114MB/s]
Downloading data: 27%|##6 | 1.91G/7.07G [00:15<00:43, 119MB/s]
Downloading data: 27%|##7 | 1.92G/7.07G [00:15<00:42, 122MB/s]
Downloading data: 27%|##7 | 1.93G/7.07G [00:15<00:41, 125MB/s]
Downloading data: 28%|##7 | 1.95G/7.07G [00:15<00:40, 127MB/s]
Downloading data: 28%|##7 | 1.96G/7.07G [00:15<00:39, 128MB/s]
Downloading data: 28%|##7 | 1.97G/7.07G [00:16<00:39, 129MB/s]
Downloading data: 28%|##8 | 1.98G/7.07G [00:16<00:39, 130MB/s]
Downloading data: 28%|##8 | 2.00G/7.07G [00:16<00:38, 130MB/s]
Downloading data: 28%|##8 | 2.01G/7.07G [00:16<00:38, 131MB/s]
Downloading data: 29%|##8 | 2.02G/7.07G [00:16<00:38, 131MB/s]
Downloading data: 29%|##8 | 2.04G/7.07G [00:16<00:38, 131MB/s]
Downloading data: 29%|##8 | 2.05G/7.07G [00:16<00:38, 131MB/s]
Downloading data: 29%|##9 | 2.06G/7.07G [00:16<00:38, 131MB/s]
Downloading data: 29%|##9 | 2.08G/7.07G [00:16<00:38, 131MB/s]
Downloading data: 30%|##9 | 2.09G/7.07G [00:16<00:37, 131MB/s]
Downloading data: 30%|##9 | 2.10G/7.07G [00:17<00:37, 131MB/s]
Downloading data: 30%|##9 | 2.12G/7.07G [00:17<00:37, 131MB/s]
Downloading data: 30%|### | 2.13G/7.07G [00:17<00:37, 131MB/s]
Downloading data: 30%|### | 2.14G/7.07G [00:17<00:37, 131MB/s]
Downloading data: 30%|### | 2.16G/7.07G [00:17<00:37, 131MB/s]
Downloading data: 31%|### | 2.17G/7.07G [00:17<00:37, 131MB/s]
Downloading data: 31%|### | 2.18G/7.07G [00:17<00:37, 131MB/s]
Downloading data: 31%|###1 | 2.20G/7.07G [00:17<00:37, 131MB/s]
Downloading data: 31%|###1 | 2.21G/7.07G [00:17<00:37, 131MB/s]
Downloading data: 31%|###1 | 2.22G/7.07G [00:17<00:36, 131MB/s]
Downloading data: 32%|###1 | 2.23G/7.07G [00:18<00:36, 131MB/s]
Downloading data: 32%|###1 | 2.25G/7.07G [00:18<00:36, 131MB/s]
Downloading data: 32%|###1 | 2.26G/7.07G [00:18<00:36, 131MB/s]
Downloading data: 32%|###2 | 2.27G/7.07G [00:18<00:36, 131MB/s]
Downloading data: 32%|###2 | 2.29G/7.07G [00:18<00:36, 131MB/s]
Downloading data: 33%|###2 | 2.30G/7.07G [00:18<00:36, 131MB/s]
Downloading data: 33%|###2 | 2.31G/7.07G [00:18<00:36, 131MB/s]
Downloading data: 33%|###2 | 2.33G/7.07G [00:18<00:36, 132MB/s]
Downloading data: 33%|###3 | 2.34G/7.07G [00:18<00:35, 132MB/s]
Downloading data: 33%|###3 | 2.35G/7.07G [00:18<00:35, 132MB/s]
Downloading data: 33%|###3 | 2.37G/7.07G [00:19<00:35, 132MB/s]
Downloading data: 34%|###3 | 2.38G/7.07G [00:19<00:35, 132MB/s]
Downloading data: 34%|###3 | 2.39G/7.07G [00:19<00:35, 132MB/s]
Downloading data: 34%|###4 | 2.41G/7.07G [00:19<00:35, 132MB/s]
Downloading data: 34%|###4 | 2.42G/7.07G [00:19<00:35, 132MB/s]
Downloading data: 34%|###4 | 2.43G/7.07G [00:19<00:35, 132MB/s]
Downloading data: 35%|###4 | 2.45G/7.07G [00:19<00:35, 131MB/s]
Downloading data: 35%|###4 | 2.46G/7.07G [00:19<00:35, 131MB/s]
Downloading data: 35%|###4 | 2.47G/7.07G [00:19<00:35, 131MB/s]
Downloading data: 35%|###5 | 2.48G/7.07G [00:19<00:34, 131MB/s]
Downloading data: 35%|###5 | 2.50G/7.07G [00:20<00:34, 131MB/s]
Downloading data: 36%|###5 | 2.51G/7.07G [00:20<00:34, 131MB/s]
Downloading data: 36%|###5 | 2.52G/7.07G [00:20<00:34, 131MB/s]
Downloading data: 36%|###5 | 2.54G/7.07G [00:20<00:34, 131MB/s]
Downloading data: 36%|###6 | 2.55G/7.07G [00:20<00:34, 131MB/s]
Downloading data: 36%|###6 | 2.56G/7.07G [00:20<00:34, 129MB/s]
Downloading data: 36%|###6 | 2.58G/7.07G [00:20<00:34, 130MB/s]
Downloading data: 37%|###6 | 2.59G/7.07G [00:20<00:34, 130MB/s]
Downloading data: 37%|###6 | 2.60G/7.07G [00:20<00:34, 131MB/s]
Downloading data: 37%|###6 | 2.62G/7.07G [00:20<00:34, 131MB/s]
Downloading data: 37%|###7 | 2.63G/7.07G [00:21<00:33, 131MB/s]
Downloading data: 37%|###7 | 2.64G/7.07G [00:21<00:33, 131MB/s]
Downloading data: 38%|###7 | 2.66G/7.07G [00:21<00:33, 131MB/s]
Downloading data: 38%|###7 | 2.67G/7.07G [00:21<00:33, 131MB/s]
Downloading data: 38%|###7 | 2.68G/7.07G [00:21<00:33, 132MB/s]
Downloading data: 38%|###8 | 2.70G/7.07G [00:21<00:33, 132MB/s]
Downloading data: 38%|###8 | 2.71G/7.07G [00:21<00:33, 131MB/s]
Downloading data: 38%|###8 | 2.72G/7.07G [00:21<00:33, 132MB/s]
Downloading data: 39%|###8 | 2.73G/7.07G [00:21<00:32, 132MB/s]
Downloading data: 39%|###8 | 2.75G/7.07G [00:21<00:32, 132MB/s]
Downloading data: 39%|###9 | 2.76G/7.07G [00:22<00:32, 132MB/s]
Downloading data: 39%|###9 | 2.77G/7.07G [00:22<00:42, 101MB/s]
Downloading data: 39%|###9 | 2.79G/7.07G [00:22<00:44, 96.7MB/s]
Downloading data: 40%|###9 | 2.80G/7.07G [00:22<00:42, 99.8MB/s]
Downloading data: 40%|###9 | 2.81G/7.07G [00:22<00:39, 107MB/s]
Downloading data: 40%|###9 | 2.82G/7.07G [00:22<00:37, 113MB/s]
Downloading data: 40%|#### | 2.84G/7.07G [00:22<00:35, 118MB/s]
Downloading data: 40%|#### | 2.85G/7.07G [00:22<00:34, 122MB/s]
Downloading data: 40%|#### | 2.86G/7.07G [00:23<00:33, 125MB/s]
Downloading data: 41%|#### | 2.87G/7.07G [00:23<00:33, 127MB/s]
Downloading data: 41%|#### | 2.89G/7.07G [00:23<00:32, 128MB/s]
Downloading data: 41%|####1 | 2.90G/7.07G [00:23<00:32, 129MB/s]
Downloading data: 41%|####1 | 2.91G/7.07G [00:23<00:31, 130MB/s]
Downloading data: 41%|####1 | 2.93G/7.07G [00:23<00:31, 130MB/s]
Downloading data: 42%|####1 | 2.94G/7.07G [00:23<00:31, 131MB/s]
Downloading data: 42%|####1 | 2.95G/7.07G [00:23<00:31, 131MB/s]
Downloading data: 42%|####1 | 2.97G/7.07G [00:23<00:31, 131MB/s]
Downloading data: 42%|####2 | 2.98G/7.07G [00:23<00:31, 131MB/s]
Downloading data: 42%|####2 | 2.99G/7.07G [00:24<00:31, 131MB/s]
Downloading data: 43%|####2 | 3.01G/7.07G [00:24<00:30, 131MB/s]
Downloading data: 43%|####2 | 3.02G/7.07G [00:24<00:30, 131MB/s]
Downloading data: 43%|####2 | 3.03G/7.07G [00:24<00:30, 132MB/s]
Downloading data: 43%|####3 | 3.05G/7.07G [00:24<00:30, 132MB/s]
Downloading data: 43%|####3 | 3.06G/7.07G [00:24<00:30, 132MB/s]
Downloading data: 43%|####3 | 3.07G/7.07G [00:24<00:30, 132MB/s]
Downloading data: 44%|####3 | 3.09G/7.07G [00:24<00:30, 131MB/s]
Downloading data: 44%|####3 | 3.10G/7.07G [00:24<00:30, 131MB/s]
Downloading data: 44%|####3 | 3.11G/7.07G [00:24<00:30, 131MB/s]
Downloading data: 44%|####4 | 3.12G/7.07G [00:25<00:30, 131MB/s]
Downloading data: 44%|####4 | 3.14G/7.07G [00:25<00:30, 131MB/s]
Downloading data: 45%|####4 | 3.15G/7.07G [00:25<00:29, 131MB/s]
Downloading data: 45%|####4 | 3.16G/7.07G [00:25<00:29, 131MB/s]
Downloading data: 45%|####4 | 3.18G/7.07G [00:25<00:29, 131MB/s]
Downloading data: 45%|####5 | 3.19G/7.07G [00:25<00:29, 131MB/s]
Downloading data: 45%|####5 | 3.20G/7.07G [00:25<00:29, 131MB/s]
Downloading data: 45%|####5 | 3.22G/7.07G [00:25<00:29, 131MB/s]
Downloading data: 46%|####5 | 3.23G/7.07G [00:25<00:29, 131MB/s]
Downloading data: 46%|####5 | 3.24G/7.07G [00:25<00:29, 131MB/s]
Downloading data: 46%|####6 | 3.26G/7.07G [00:26<00:29, 131MB/s]
Downloading data: 46%|####6 | 3.27G/7.07G [00:26<00:28, 131MB/s]
Downloading data: 46%|####6 | 3.28G/7.07G [00:26<00:28, 131MB/s]
Downloading data: 47%|####6 | 3.30G/7.07G [00:26<00:28, 131MB/s]
Downloading data: 47%|####6 | 3.31G/7.07G [00:26<00:28, 131MB/s]
Downloading data: 47%|####6 | 3.32G/7.07G [00:26<00:28, 131MB/s]
Downloading data: 47%|####7 | 3.34G/7.07G [00:26<00:28, 131MB/s]
Downloading data: 47%|####7 | 3.35G/7.07G [00:26<00:28, 131MB/s]
Downloading data: 48%|####7 | 3.36G/7.07G [00:26<00:28, 131MB/s]
Downloading data: 48%|####7 | 3.37G/7.07G [00:26<00:28, 131MB/s]
Downloading data: 48%|####7 | 3.39G/7.07G [00:27<00:28, 131MB/s]
Downloading data: 48%|####8 | 3.40G/7.07G [00:27<00:27, 131MB/s]
Downloading data: 48%|####8 | 3.41G/7.07G [00:27<00:27, 131MB/s]
Downloading data: 48%|####8 | 3.43G/7.07G [00:27<00:27, 131MB/s]
Downloading data: 49%|####8 | 3.44G/7.07G [00:27<00:27, 131MB/s]
Downloading data: 49%|####8 | 3.45G/7.07G [00:27<00:27, 131MB/s]
Downloading data: 49%|####9 | 3.47G/7.07G [00:27<00:27, 132MB/s]
Downloading data: 49%|####9 | 3.48G/7.07G [00:27<00:27, 132MB/s]
Downloading data: 49%|####9 | 3.49G/7.07G [00:27<00:27, 132MB/s]
Downloading data: 50%|####9 | 3.51G/7.07G [00:27<00:27, 132MB/s]
Downloading data: 50%|####9 | 3.52G/7.07G [00:28<00:26, 132MB/s]
Downloading data: 50%|####9 | 3.53G/7.07G [00:28<00:26, 132MB/s]
Downloading data: 50%|##### | 3.55G/7.07G [00:28<00:26, 132MB/s]
Downloading data: 50%|##### | 3.56G/7.07G [00:28<00:26, 132MB/s]
Downloading data: 51%|##### | 3.57G/7.07G [00:28<00:26, 132MB/s]
Downloading data: 51%|##### | 3.59G/7.07G [00:28<00:26, 132MB/s]
Downloading data: 51%|##### | 3.60G/7.07G [00:28<00:26, 132MB/s]
Downloading data: 51%|#####1 | 3.61G/7.07G [00:28<00:26, 131MB/s]
Downloading data: 51%|#####1 | 3.62G/7.07G [00:28<00:26, 132MB/s]
Downloading data: 51%|#####1 | 3.64G/7.07G [00:28<00:26, 132MB/s]
Downloading data: 52%|#####1 | 3.65G/7.07G [00:29<00:26, 131MB/s]
Downloading data: 52%|#####1 | 3.66G/7.07G [00:29<00:25, 131MB/s]
Downloading data: 52%|#####1 | 3.68G/7.07G [00:29<00:25, 131MB/s]
Downloading data: 52%|#####2 | 3.69G/7.07G [00:29<00:25, 131MB/s]
Downloading data: 52%|#####2 | 3.70G/7.07G [00:29<00:25, 131MB/s]
Downloading data: 53%|#####2 | 3.72G/7.07G [00:29<00:25, 129MB/s]
Downloading data: 53%|#####2 | 3.73G/7.07G [00:29<00:26, 127MB/s]
Downloading data: 53%|#####2 | 3.74G/7.07G [00:29<00:26, 126MB/s]
Downloading data: 53%|#####3 | 3.76G/7.07G [00:29<00:26, 125MB/s]
Downloading data: 53%|#####3 | 3.77G/7.07G [00:29<00:26, 124MB/s]
Downloading data: 53%|#####3 | 3.78G/7.07G [00:30<00:26, 126MB/s]
Downloading data: 54%|#####3 | 3.79G/7.07G [00:30<00:25, 128MB/s]
Downloading data: 54%|#####3 | 3.81G/7.07G [00:30<00:25, 128MB/s]
Downloading data: 54%|#####4 | 3.82G/7.07G [00:30<00:25, 130MB/s]
Downloading data: 54%|#####4 | 3.83G/7.07G [00:30<00:24, 130MB/s]
Downloading data: 54%|#####4 | 3.85G/7.07G [00:30<00:24, 130MB/s]
Downloading data: 55%|#####4 | 3.86G/7.07G [00:30<00:25, 127MB/s]
Downloading data: 55%|#####4 | 3.87G/7.07G [00:30<00:25, 125MB/s]
Downloading data: 55%|#####4 | 3.88G/7.07G [00:30<00:25, 124MB/s]
Downloading data: 55%|#####5 | 3.90G/7.07G [00:30<00:25, 124MB/s]
Downloading data: 55%|#####5 | 3.91G/7.07G [00:31<00:40, 78.9MB/s]
Downloading data: 55%|#####5 | 3.92G/7.07G [00:31<00:35, 87.8MB/s]
Downloading data: 56%|#####5 | 3.93G/7.07G [00:31<00:32, 95.5MB/s]
Downloading data: 56%|#####5 | 3.95G/7.07G [00:31<00:30, 102MB/s]
Downloading data: 56%|#####5 | 3.96G/7.07G [00:31<00:29, 107MB/s]
Downloading data: 56%|#####6 | 3.97G/7.07G [00:31<00:27, 111MB/s]
Downloading data: 56%|#####6 | 3.98G/7.07G [00:31<00:27, 114MB/s]
Downloading data: 56%|#####6 | 3.99G/7.07G [00:31<00:26, 117MB/s]
Downloading data: 57%|#####6 | 4.01G/7.07G [00:32<00:25, 118MB/s]
Downloading data: 57%|#####6 | 4.02G/7.07G [00:32<00:25, 119MB/s]
Downloading data: 57%|#####7 | 4.03G/7.07G [00:32<00:24, 122MB/s]
Downloading data: 57%|#####7 | 4.04G/7.07G [00:32<00:24, 125MB/s]
Downloading data: 57%|#####7 | 4.06G/7.07G [00:32<00:23, 126MB/s]
Downloading data: 58%|#####7 | 4.07G/7.07G [00:32<00:23, 128MB/s]
Downloading data: 58%|#####7 | 4.08G/7.07G [00:32<00:23, 128MB/s]
Downloading data: 58%|#####7 | 4.10G/7.07G [00:32<00:23, 129MB/s]
Downloading data: 58%|#####8 | 4.11G/7.07G [00:32<00:22, 129MB/s]
Downloading data: 58%|#####8 | 4.12G/7.07G [00:32<00:22, 130MB/s]
Downloading data: 58%|#####8 | 4.14G/7.07G [00:33<00:22, 130MB/s]
Downloading data: 59%|#####8 | 4.15G/7.07G [00:33<00:22, 130MB/s]
Downloading data: 59%|#####8 | 4.16G/7.07G [00:33<00:22, 130MB/s]
Downloading data: 59%|#####9 | 4.18G/7.07G [00:33<00:22, 130MB/s]
Downloading data: 59%|#####9 | 4.19G/7.07G [00:33<00:22, 130MB/s]
Downloading data: 59%|#####9 | 4.20G/7.07G [00:33<00:21, 131MB/s]
Downloading data: 60%|#####9 | 4.21G/7.07G [00:33<00:21, 131MB/s]
Downloading data: 60%|#####9 | 4.23G/7.07G [00:33<00:21, 131MB/s]
Downloading data: 60%|#####9 | 4.24G/7.07G [00:33<00:21, 131MB/s]
Downloading data: 60%|###### | 4.25G/7.07G [00:33<00:21, 130MB/s]
Downloading data: 60%|###### | 4.27G/7.07G [00:34<00:21, 130MB/s]
Downloading data: 61%|###### | 4.28G/7.07G [00:34<00:21, 130MB/s]
Downloading data: 61%|###### | 4.29G/7.07G [00:34<00:21, 131MB/s]
Downloading data: 61%|###### | 4.31G/7.07G [00:34<00:21, 131MB/s]
Downloading data: 61%|######1 | 4.32G/7.07G [00:34<00:21, 131MB/s]
Downloading data: 61%|######1 | 4.33G/7.07G [00:34<00:20, 131MB/s]
Downloading data: 61%|######1 | 4.35G/7.07G [00:34<00:20, 131MB/s]
Downloading data: 62%|######1 | 4.36G/7.07G [00:34<00:20, 131MB/s]
Downloading data: 62%|######1 | 4.37G/7.07G [00:34<00:20, 131MB/s]
Downloading data: 62%|######2 | 4.38G/7.07G [00:34<00:20, 131MB/s]
Downloading data: 62%|######2 | 4.40G/7.07G [00:35<00:20, 131MB/s]
Downloading data: 62%|######2 | 4.41G/7.07G [00:35<00:20, 131MB/s]
Downloading data: 63%|######2 | 4.42G/7.07G [00:35<00:20, 131MB/s]
Downloading data: 63%|######2 | 4.44G/7.07G [00:35<00:20, 129MB/s]
Downloading data: 63%|######2 | 4.45G/7.07G [00:35<00:20, 127MB/s]
Downloading data: 63%|######3 | 4.46G/7.07G [00:35<00:20, 125MB/s]
Downloading data: 63%|######3 | 4.48G/7.07G [00:35<00:20, 124MB/s]
Downloading data: 63%|######3 | 4.49G/7.07G [00:35<00:20, 124MB/s]
Downloading data: 64%|######3 | 4.50G/7.07G [00:35<00:20, 124MB/s]
Downloading data: 64%|######3 | 4.51G/7.07G [00:35<00:20, 123MB/s]
Downloading data: 64%|######3 | 4.53G/7.07G [00:36<00:20, 123MB/s]
Downloading data: 64%|######4 | 4.54G/7.07G [00:36<00:20, 123MB/s]
Downloading data: 64%|######4 | 4.55G/7.07G [00:36<00:20, 123MB/s]
Downloading data: 65%|######4 | 4.56G/7.07G [00:36<00:20, 123MB/s]
Downloading data: 65%|######4 | 4.57G/7.07G [00:36<00:20, 123MB/s]
Downloading data: 65%|######4 | 4.59G/7.07G [00:36<00:20, 123MB/s]
Downloading data: 65%|######5 | 4.60G/7.07G [00:36<00:20, 123MB/s]
Downloading data: 65%|######5 | 4.61G/7.07G [00:36<00:19, 125MB/s]
Downloading data: 65%|######5 | 4.62G/7.07G [00:36<00:19, 125MB/s]
Downloading data: 66%|######5 | 4.64G/7.07G [00:36<00:19, 125MB/s]
Downloading data: 66%|######5 | 4.65G/7.07G [00:37<00:19, 126MB/s]
Downloading data: 66%|######5 | 4.66G/7.07G [00:37<00:19, 126MB/s]
Downloading data: 66%|######6 | 4.68G/7.07G [00:37<00:18, 126MB/s]
Downloading data: 66%|######6 | 4.69G/7.07G [00:37<00:18, 126MB/s]
Downloading data: 66%|######6 | 4.70G/7.07G [00:37<00:18, 126MB/s]
Downloading data: 67%|######6 | 4.71G/7.07G [00:37<00:18, 126MB/s]
Downloading data: 67%|######6 | 4.73G/7.07G [00:37<00:18, 128MB/s]
Downloading data: 67%|######7 | 4.74G/7.07G [00:37<00:18, 129MB/s]
Downloading data: 67%|######7 | 4.75G/7.07G [00:37<00:17, 129MB/s]
Downloading data: 67%|######7 | 4.77G/7.07G [00:37<00:17, 129MB/s]
Downloading data: 68%|######7 | 4.78G/7.07G [00:38<00:17, 128MB/s]
Downloading data: 68%|######7 | 4.79G/7.07G [00:38<00:17, 128MB/s]
Downloading data: 68%|######7 | 4.80G/7.07G [00:38<00:17, 127MB/s]
Downloading data: 68%|######8 | 4.82G/7.07G [00:38<00:17, 127MB/s]
Downloading data: 68%|######8 | 4.83G/7.07G [00:38<00:17, 127MB/s]
Downloading data: 68%|######8 | 4.84G/7.07G [00:38<00:17, 127MB/s]
Downloading data: 69%|######8 | 4.85G/7.07G [00:38<00:17, 127MB/s]
Downloading data: 69%|######8 | 4.87G/7.07G [00:38<00:17, 126MB/s]
Downloading data: 69%|######8 | 4.88G/7.07G [00:38<00:17, 126MB/s]
Downloading data: 69%|######9 | 4.89G/7.07G [00:39<00:17, 126MB/s]
Downloading data: 69%|######9 | 4.91G/7.07G [00:39<00:16, 128MB/s]
Downloading data: 70%|######9 | 4.92G/7.07G [00:39<00:16, 127MB/s]
Downloading data: 70%|######9 | 4.93G/7.07G [00:39<00:16, 128MB/s]
Downloading data: 70%|######9 | 4.94G/7.07G [00:39<00:16, 129MB/s]
Downloading data: 70%|####### | 4.96G/7.07G [00:39<00:16, 129MB/s]
Downloading data: 70%|####### | 4.97G/7.07G [00:39<00:16, 130MB/s]
Downloading data: 70%|####### | 4.98G/7.07G [00:39<00:16, 130MB/s]
Downloading data: 71%|####### | 5.00G/7.07G [00:39<00:15, 130MB/s]
Downloading data: 71%|####### | 5.01G/7.07G [00:39<00:15, 131MB/s]
Downloading data: 71%|#######1 | 5.02G/7.07G [00:40<00:15, 131MB/s]
Downloading data: 71%|#######1 | 5.04G/7.07G [00:40<00:15, 132MB/s]
Downloading data: 71%|#######1 | 5.05G/7.07G [00:40<00:15, 133MB/s]
Downloading data: 72%|#######1 | 5.06G/7.07G [00:40<00:14, 134MB/s]
Downloading data: 72%|#######1 | 5.08G/7.07G [00:40<00:14, 134MB/s]
Downloading data: 72%|#######1 | 5.09G/7.07G [00:40<00:14, 133MB/s]
Downloading data: 72%|#######2 | 5.10G/7.07G [00:40<00:14, 132MB/s]
Downloading data: 72%|#######2 | 5.12G/7.07G [00:40<00:14, 132MB/s]
Downloading data: 73%|#######2 | 5.13G/7.07G [00:40<00:14, 132MB/s]
Downloading data: 73%|#######2 | 5.14G/7.07G [00:40<00:14, 132MB/s]
Downloading data: 73%|#######2 | 5.16G/7.07G [00:41<00:14, 131MB/s]
Downloading data: 73%|#######3 | 5.17G/7.07G [00:41<00:14, 131MB/s]
Downloading data: 73%|#######3 | 5.18G/7.07G [00:41<00:14, 131MB/s]
Downloading data: 73%|#######3 | 5.20G/7.07G [00:41<00:14, 131MB/s]
Downloading data: 74%|#######3 | 5.21G/7.07G [00:41<00:14, 131MB/s]
Downloading data: 74%|#######3 | 5.22G/7.07G [00:41<00:14, 131MB/s]
Downloading data: 74%|#######4 | 5.24G/7.07G [00:41<00:14, 131MB/s]
Downloading data: 74%|#######4 | 5.25G/7.07G [00:41<00:14, 130MB/s]
Downloading data: 74%|#######4 | 5.26G/7.07G [00:41<00:14, 129MB/s]
Downloading data: 75%|#######4 | 5.27G/7.07G [00:41<00:14, 128MB/s]
Downloading data: 75%|#######4 | 5.29G/7.07G [00:42<00:13, 128MB/s]
Downloading data: 75%|#######4 | 5.30G/7.07G [00:42<00:13, 127MB/s]
Downloading data: 75%|#######5 | 5.31G/7.07G [00:42<00:13, 127MB/s]
Downloading data: 75%|#######5 | 5.33G/7.07G [00:42<00:13, 130MB/s]
Downloading data: 75%|#######5 | 5.34G/7.07G [00:42<00:13, 131MB/s]
Downloading data: 76%|#######5 | 5.35G/7.07G [00:42<00:13, 130MB/s]
Downloading data: 76%|#######5 | 5.37G/7.07G [00:42<00:13, 129MB/s]
Downloading data: 76%|#######6 | 5.38G/7.07G [00:42<00:13, 128MB/s]
Downloading data: 76%|#######6 | 5.39G/7.07G [00:42<00:13, 127MB/s]
Downloading data: 76%|#######6 | 5.40G/7.07G [00:42<00:13, 127MB/s]
Downloading data: 77%|#######6 | 5.42G/7.07G [00:43<00:13, 126MB/s]
Downloading data: 77%|#######6 | 5.43G/7.07G [00:43<00:12, 126MB/s]
Downloading data: 77%|#######6 | 5.44G/7.07G [00:43<00:12, 128MB/s]
Downloading data: 77%|#######7 | 5.46G/7.07G [00:43<00:12, 129MB/s]
Downloading data: 77%|#######7 | 5.47G/7.07G [00:43<00:12, 129MB/s]
Downloading data: 78%|#######7 | 5.48G/7.07G [00:43<00:12, 130MB/s]
Downloading data: 78%|#######7 | 5.49G/7.07G [00:43<00:12, 130MB/s]
Downloading data: 78%|#######7 | 5.51G/7.07G [00:43<00:11, 130MB/s]
Downloading data: 78%|#######8 | 5.52G/7.07G [00:43<00:11, 131MB/s]
Downloading data: 78%|#######8 | 5.53G/7.07G [00:43<00:11, 131MB/s]
Downloading data: 78%|#######8 | 5.55G/7.07G [00:44<00:11, 131MB/s]
Downloading data: 79%|#######8 | 5.56G/7.07G [00:44<00:11, 131MB/s]
Downloading data: 79%|#######8 | 5.57G/7.07G [00:44<00:11, 131MB/s]
Downloading data: 79%|#######8 | 5.59G/7.07G [00:44<00:11, 131MB/s]
Downloading data: 79%|#######9 | 5.60G/7.07G [00:44<00:11, 131MB/s]
Downloading data: 79%|#######9 | 5.61G/7.07G [00:44<00:11, 131MB/s]
Downloading data: 80%|#######9 | 5.63G/7.07G [00:44<00:11, 131MB/s]
Downloading data: 80%|#######9 | 5.64G/7.07G [00:44<00:10, 131MB/s]
Downloading data: 80%|#######9 | 5.65G/7.07G [00:44<00:10, 131MB/s]
Downloading data: 80%|######## | 5.67G/7.07G [00:44<00:10, 131MB/s]
Downloading data: 80%|######## | 5.68G/7.07G [00:45<00:10, 131MB/s]
Downloading data: 80%|######## | 5.69G/7.07G [00:45<00:10, 131MB/s]
Downloading data: 81%|######## | 5.70G/7.07G [00:45<00:10, 131MB/s]
Downloading data: 81%|######## | 5.72G/7.07G [00:45<00:10, 131MB/s]
Downloading data: 81%|########1 | 5.73G/7.07G [00:45<00:10, 131MB/s]
Downloading data: 81%|########1 | 5.74G/7.07G [00:45<00:10, 130MB/s]
Downloading data: 81%|########1 | 5.76G/7.07G [00:45<00:10, 129MB/s]
Downloading data: 82%|########1 | 5.77G/7.07G [00:45<00:10, 128MB/s]
Downloading data: 82%|########1 | 5.78G/7.07G [00:45<00:10, 128MB/s]
Downloading data: 82%|########1 | 5.80G/7.07G [00:45<00:10, 127MB/s]
Downloading data: 82%|########2 | 5.81G/7.07G [00:46<00:09, 127MB/s]
Downloading data: 82%|########2 | 5.82G/7.07G [00:46<00:09, 127MB/s]
Downloading data: 82%|########2 | 5.83G/7.07G [00:46<00:09, 126MB/s]
Downloading data: 83%|########2 | 5.85G/7.07G [00:46<00:09, 126MB/s]
Downloading data: 83%|########2 | 5.86G/7.07G [00:46<00:09, 126MB/s]
Downloading data: 83%|########3 | 5.87G/7.07G [00:46<00:09, 126MB/s]
Downloading data: 83%|########3 | 5.88G/7.07G [00:46<00:09, 126MB/s]
Downloading data: 83%|########3 | 5.90G/7.07G [00:46<00:09, 126MB/s]
Downloading data: 84%|########3 | 5.91G/7.07G [00:46<00:09, 126MB/s]
Downloading data: 84%|########3 | 5.92G/7.07G [00:46<00:09, 126MB/s]
Downloading data: 84%|########3 | 5.93G/7.07G [00:47<00:09, 126MB/s]
Downloading data: 84%|########4 | 5.95G/7.07G [00:47<00:08, 126MB/s]
Downloading data: 84%|########4 | 5.96G/7.07G [00:47<00:08, 126MB/s]
Downloading data: 84%|########4 | 5.97G/7.07G [00:47<00:08, 126MB/s]
Downloading data: 85%|########4 | 5.98G/7.07G [00:47<00:08, 126MB/s]
Downloading data: 85%|########4 | 6.00G/7.07G [00:47<00:08, 126MB/s]
Downloading data: 85%|########4 | 6.01G/7.07G [00:47<00:08, 126MB/s]
Downloading data: 85%|########5 | 6.02G/7.07G [00:47<00:08, 126MB/s]
Downloading data: 85%|########5 | 6.04G/7.07G [00:47<00:08, 126MB/s]
Downloading data: 86%|########5 | 6.05G/7.07G [00:47<00:08, 126MB/s]
Downloading data: 86%|########5 | 6.06G/7.07G [00:48<00:08, 126MB/s]
Downloading data: 86%|########5 | 6.07G/7.07G [00:48<00:07, 126MB/s]
Downloading data: 86%|########6 | 6.09G/7.07G [00:48<00:07, 126MB/s]
Downloading data: 86%|########6 | 6.10G/7.07G [00:48<00:07, 126MB/s]
Downloading data: 86%|########6 | 6.11G/7.07G [00:48<00:07, 126MB/s]
Downloading data: 87%|########6 | 6.12G/7.07G [00:48<00:07, 126MB/s]
Downloading data: 87%|########6 | 6.14G/7.07G [00:48<00:07, 128MB/s]
Downloading data: 87%|########6 | 6.15G/7.07G [00:48<00:07, 130MB/s]
Downloading data: 87%|########7 | 6.16G/7.07G [00:48<00:06, 132MB/s]
Downloading data: 87%|########7 | 6.18G/7.07G [00:48<00:06, 133MB/s]
Downloading data: 88%|########7 | 6.19G/7.07G [00:49<00:06, 134MB/s]
Downloading data: 88%|########7 | 6.20G/7.07G [00:49<00:06, 133MB/s]
Downloading data: 88%|########7 | 6.22G/7.07G [00:49<00:06, 131MB/s]
Downloading data: 88%|########8 | 6.23G/7.07G [00:49<00:06, 130MB/s]
Downloading data: 88%|########8 | 6.24G/7.07G [00:49<00:06, 129MB/s]
Downloading data: 88%|########8 | 6.26G/7.07G [00:49<00:06, 128MB/s]
Downloading data: 89%|########8 | 6.27G/7.07G [00:49<00:06, 127MB/s]
Downloading data: 89%|########8 | 6.28G/7.07G [00:49<00:06, 127MB/s]
Downloading data: 89%|########9 | 6.30G/7.07G [00:49<00:06, 127MB/s]
Downloading data: 89%|########9 | 6.31G/7.07G [00:49<00:06, 127MB/s]
Downloading data: 89%|########9 | 6.32G/7.07G [00:50<00:09, 80.6MB/s]
Downloading data: 90%|########9 | 6.33G/7.07G [00:50<00:07, 92.4MB/s]
Downloading data: 90%|########9 | 6.35G/7.07G [00:50<00:07, 103MB/s]
Downloading data: 90%|########9 | 6.36G/7.07G [00:50<00:06, 111MB/s]
Downloading data: 90%|######### | 6.38G/7.07G [00:50<00:05, 117MB/s]
Downloading data: 90%|######### | 6.39G/7.07G [00:50<00:05, 123MB/s]
Downloading data: 91%|######### | 6.40G/7.07G [00:50<00:05, 127MB/s]
Downloading data: 91%|######### | 6.42G/7.07G [00:50<00:05, 129MB/s]
Downloading data: 91%|######### | 6.43G/7.07G [00:51<00:04, 131MB/s]
Downloading data: 91%|#########1| 6.44G/7.07G [00:51<00:04, 133MB/s]
Downloading data: 91%|#########1| 6.46G/7.07G [00:51<00:04, 134MB/s]
Downloading data: 91%|#########1| 6.47G/7.07G [00:51<00:04, 133MB/s]
Downloading data: 92%|#########1| 6.48G/7.07G [00:51<00:04, 132MB/s]
Downloading data: 92%|#########1| 6.50G/7.07G [00:51<00:04, 132MB/s]
Downloading data: 92%|#########2| 6.51G/7.07G [00:51<00:04, 132MB/s]
Downloading data: 92%|#########2| 6.52G/7.07G [00:51<00:04, 131MB/s]
Downloading data: 92%|#########2| 6.54G/7.07G [00:51<00:04, 132MB/s]
Downloading data: 93%|#########2| 6.55G/7.07G [00:51<00:03, 131MB/s]
Downloading data: 93%|#########2| 6.56G/7.07G [00:52<00:03, 131MB/s]
Downloading data: 93%|#########2| 6.58G/7.07G [00:52<00:03, 131MB/s]
Downloading data: 93%|#########3| 6.59G/7.07G [00:52<00:03, 131MB/s]
Downloading data: 93%|#########3| 6.60G/7.07G [00:52<00:03, 131MB/s]
Downloading data: 94%|#########3| 6.62G/7.07G [00:52<00:03, 131MB/s]
Downloading data: 94%|#########3| 6.63G/7.07G [00:52<00:03, 131MB/s]
Downloading data: 94%|#########3| 6.64G/7.07G [00:52<00:03, 131MB/s]
Downloading data: 94%|#########4| 6.66G/7.07G [00:52<00:03, 131MB/s]
Downloading data: 94%|#########4| 6.67G/7.07G [00:52<00:03, 133MB/s]
Downloading data: 94%|#########4| 6.68G/7.07G [00:52<00:02, 135MB/s]
Downloading data: 95%|#########4| 6.70G/7.07G [00:53<00:02, 136MB/s]
Downloading data: 95%|#########4| 6.71G/7.07G [00:53<00:02, 137MB/s]
Downloading data: 95%|#########5| 6.72G/7.07G [00:53<00:02, 138MB/s]
Downloading data: 95%|#########5| 6.74G/7.07G [00:53<00:02, 138MB/s]
Downloading data: 95%|#########5| 6.75G/7.07G [00:53<00:02, 139MB/s]
Downloading data: 96%|#########5| 6.77G/7.07G [00:53<00:02, 139MB/s]
Downloading data: 96%|#########5| 6.78G/7.07G [00:53<00:02, 139MB/s]
Downloading data: 96%|#########6| 6.79G/7.07G [00:53<00:02, 137MB/s]
Downloading data: 96%|#########6| 6.81G/7.07G [00:53<00:01, 136MB/s]
Downloading data: 96%|#########6| 6.82G/7.07G [00:53<00:01, 135MB/s]
Downloading data: 97%|#########6| 6.84G/7.07G [00:54<00:01, 135MB/s]
Downloading data: 97%|#########6| 6.85G/7.07G [00:54<00:01, 134MB/s]
Downloading data: 97%|#########7| 6.86G/7.07G [00:54<00:01, 134MB/s]
Downloading data: 97%|#########7| 6.88G/7.07G [00:54<00:01, 134MB/s]
Downloading data: 97%|#########7| 6.89G/7.07G [00:54<00:01, 134MB/s]
Downloading data: 98%|#########7| 6.90G/7.07G [00:54<00:01, 134MB/s]
Downloading data: 98%|#########7| 6.92G/7.07G [00:54<00:01, 133MB/s]
Downloading data: 98%|#########7| 6.93G/7.07G [00:54<00:01, 133MB/s]
Downloading data: 98%|#########8| 6.94G/7.07G [00:54<00:00, 133MB/s]
Downloading data: 98%|#########8| 6.96G/7.07G [00:54<00:00, 133MB/s]
Downloading data: 99%|#########8| 6.97G/7.07G [00:55<00:00, 133MB/s]
Downloading data: 99%|#########8| 6.98G/7.07G [00:55<00:00, 133MB/s]
Downloading data: 99%|#########8| 7.00G/7.07G [00:55<00:00, 133MB/s]
Downloading data: 99%|#########9| 7.01G/7.07G [00:55<00:00, 133MB/s]
Downloading data: 99%|#########9| 7.02G/7.07G [00:55<00:00, 133MB/s]
Downloading data: 99%|#########9| 7.04G/7.07G [00:55<00:00, 134MB/s]
Downloading data: 100%|#########9| 7.05G/7.07G [00:55<00:00, 134MB/s]
Downloading data: 100%|#########9| 7.06G/7.07G [00:55<00:00, 134MB/s]
Downloading data: 100%|##########| 7.07G/7.07G [00:55<00:00, 127MB/s]
Downloading data: 0%| | 0.00/970M [00:00<?, ?B/s]
Downloading data: 1%|1 | 13.3M/970M [00:00<00:07, 133MB/s]
Downloading data: 3%|2 | 27.0M/970M [00:00<00:06, 136MB/s]
Downloading data: 4%|4 | 40.8M/970M [00:00<00:06, 137MB/s]
Downloading data: 6%|5 | 54.6M/970M [00:00<00:06, 137MB/s]
Downloading data: 7%|7 | 68.3M/970M [00:00<00:06, 137MB/s]
Downloading data: 8%|8 | 82.0M/970M [00:00<00:06, 137MB/s]
Downloading data: 10%|9 | 95.8M/970M [00:00<00:06, 137MB/s]
Downloading data: 11%|#1 | 110M/970M [00:00<00:06, 137MB/s]
Downloading data: 13%|#2 | 123M/970M [00:00<00:06, 138MB/s]
Downloading data: 14%|#4 | 137M/970M [00:01<00:06, 137MB/s]
Downloading data: 16%|#5 | 151M/970M [00:01<00:05, 137MB/s]
Downloading data: 17%|#6 | 165M/970M [00:01<00:05, 137MB/s]
Downloading data: 18%|#8 | 178M/970M [00:01<00:05, 136MB/s]
Downloading data: 20%|#9 | 192M/970M [00:01<00:05, 136MB/s]
Downloading data: 21%|##1 | 206M/970M [00:01<00:05, 136MB/s]
Downloading data: 23%|##2 | 219M/970M [00:01<00:05, 135MB/s]
Downloading data: 24%|##4 | 233M/970M [00:01<00:05, 136MB/s]
Downloading data: 25%|##5 | 247M/970M [00:01<00:05, 136MB/s]
Downloading data: 27%|##6 | 260M/970M [00:01<00:05, 136MB/s]
Downloading data: 28%|##8 | 274M/970M [00:02<00:05, 137MB/s]
Downloading data: 30%|##9 | 288M/970M [00:02<00:04, 137MB/s]
Downloading data: 31%|###1 | 302M/970M [00:02<00:04, 137MB/s]
Downloading data: 32%|###2 | 315M/970M [00:02<00:04, 137MB/s]
Downloading data: 34%|###3 | 329M/970M [00:02<00:04, 137MB/s]
Downloading data: 35%|###5 | 343M/970M [00:02<00:04, 137MB/s]
Downloading data: 37%|###6 | 356M/970M [00:02<00:04, 137MB/s]
Downloading data: 38%|###8 | 370M/970M [00:02<00:04, 137MB/s]
Downloading data: 40%|###9 | 384M/970M [00:02<00:04, 137MB/s]
Downloading data: 41%|#### | 398M/970M [00:02<00:04, 137MB/s]
Downloading data: 42%|####2 | 411M/970M [00:03<00:04, 137MB/s]
Downloading data: 44%|####3 | 425M/970M [00:03<00:03, 137MB/s]
Downloading data: 45%|####5 | 439M/970M [00:03<00:03, 136MB/s]
Downloading data: 47%|####6 | 452M/970M [00:03<00:03, 136MB/s]
Downloading data: 48%|####8 | 466M/970M [00:03<00:03, 135MB/s]
Downloading data: 49%|####9 | 480M/970M [00:03<00:03, 136MB/s]
Downloading data: 51%|##### | 493M/970M [00:03<00:03, 136MB/s]
Downloading data: 52%|#####2 | 507M/970M [00:03<00:03, 136MB/s]
Downloading data: 54%|#####3 | 521M/970M [00:03<00:03, 137MB/s]
Downloading data: 55%|#####5 | 535M/970M [00:03<00:03, 137MB/s]
Downloading data: 57%|#####6 | 548M/970M [00:04<00:03, 137MB/s]
Downloading data: 58%|#####7 | 562M/970M [00:04<00:02, 137MB/s]
Downloading data: 59%|#####9 | 576M/970M [00:04<00:02, 137MB/s]
Downloading data: 61%|###### | 589M/970M [00:04<00:02, 137MB/s]
Downloading data: 62%|######2 | 603M/970M [00:04<00:02, 137MB/s]
Downloading data: 64%|######3 | 617M/970M [00:04<00:02, 137MB/s]
Downloading data: 65%|######4 | 631M/970M [00:04<00:02, 137MB/s]
Downloading data: 66%|######6 | 644M/970M [00:04<00:02, 137MB/s]
Downloading data: 68%|######7 | 658M/970M [00:04<00:02, 137MB/s]
Downloading data: 69%|######9 | 672M/970M [00:04<00:02, 137MB/s]
Downloading data: 71%|####### | 685M/970M [00:05<00:02, 137MB/s]
Downloading data: 72%|#######2 | 699M/970M [00:05<00:01, 137MB/s]
Downloading data: 73%|#######3 | 713M/970M [00:05<00:01, 137MB/s]
Downloading data: 75%|#######4 | 727M/970M [00:05<00:01, 137MB/s]
Downloading data: 76%|#######6 | 740M/970M [00:05<00:01, 137MB/s]
Downloading data: 78%|#######7 | 754M/970M [00:05<00:01, 137MB/s]
Downloading data: 79%|#######9 | 768M/970M [00:05<00:01, 137MB/s]
Downloading data: 81%|######## | 782M/970M [00:05<00:01, 137MB/s]
Downloading data: 82%|########1 | 795M/970M [00:05<00:01, 137MB/s]
Downloading data: 83%|########3 | 809M/970M [00:05<00:01, 137MB/s]
Downloading data: 85%|########4 | 823M/970M [00:06<00:01, 137MB/s]
Downloading data: 86%|########6 | 837M/970M [00:06<00:00, 137MB/s]
Downloading data: 88%|########7 | 850M/970M [00:06<00:00, 137MB/s]
Downloading data: 89%|########9 | 864M/970M [00:06<00:00, 137MB/s]
Downloading data: 90%|######### | 878M/970M [00:06<00:00, 137MB/s]
Downloading data: 92%|#########1| 892M/970M [00:06<00:00, 137MB/s]
Downloading data: 93%|#########3| 905M/970M [00:06<00:00, 137MB/s]
Downloading data: 95%|#########4| 919M/970M [00:06<00:00, 137MB/s]
Downloading data: 96%|#########6| 933M/970M [00:06<00:00, 137MB/s]
Downloading data: 98%|#########7| 947M/970M [00:06<00:00, 138MB/s]
Downloading data: 99%|#########8| 960M/970M [00:07<00:00, 138MB/s]
Downloading data: 100%|##########| 970M/970M [00:07<00:00, 137MB/s]
Generating train split: 0%| | 0/34602 [00:00<?, ? examples/s]
Generating train split: 0%| | 1/34602 [00:00<5:16:14, 1.82 examples/s]
Generating train split: 2%|2 | 756/34602 [00:00<00:21, 1561.42 examples/s]
Generating train split: 4%|4 | 1420/34602 [00:00<00:12, 2718.03 examples/s]
Generating train split: 6%|6 | 2133/34602 [00:00<00:08, 3800.53 examples/s]
Generating train split: 8%|8 | 2924/34602 [00:00<00:06, 4867.35 examples/s]
Generating train split: 10%|# | 3627/34602 [00:01<00:05, 5451.70 examples/s]
Generating train split: 13%|#2 | 4399/34602 [00:01<00:05, 5939.05 examples/s]
Generating train split: 15%|#4 | 5102/34602 [00:01<00:04, 6243.61 examples/s]
Generating train split: 17%|#7 | 5893/34602 [00:01<00:04, 6717.83 examples/s]
Generating train split: 20%|## | 6994/34602 [00:01<00:03, 6949.37 examples/s]
Generating train split: 23%|##3 | 8014/34602 [00:01<00:03, 6895.40 examples/s]
Generating train split: 25%|##5 | 8815/34602 [00:01<00:03, 7171.42 examples/s]
Generating train split: 29%|##8 | 9932/34602 [00:01<00:03, 7262.97 examples/s]
Generating train split: 32%|###1 | 11000/34602 [00:02<00:03, 7067.25 examples/s]
Generating train split: 34%|###4 | 11788/34602 [00:02<00:03, 7257.01 examples/s]
Generating train split: 37%|###7 | 12855/34602 [00:02<00:03, 7204.19 examples/s]
Generating train split: 40%|#### | 13983/34602 [00:02<00:02, 7304.43 examples/s]
Generating train split: 43%|####3 | 15000/34602 [00:02<00:02, 7110.31 examples/s]
Generating train split: 46%|####5 | 15807/34602 [00:02<00:02, 7330.40 examples/s]
Generating train split: 49%|####8 | 16939/34602 [00:02<00:02, 7399.15 examples/s]
Generating train split: 52%|#####2 | 18000/34602 [00:03<00:02, 7193.21 examples/s]
Generating train split: 54%|#####4 | 18788/34602 [00:03<00:02, 7349.53 examples/s]
Generating train split: 57%|#####7 | 19836/34602 [00:03<00:02, 7225.46 examples/s]
Generating train split: 60%|###### | 20874/34602 [00:03<00:01, 7123.86 examples/s]
Generating train split: 63%|######3 | 21898/34602 [00:03<00:01, 7026.79 examples/s]
Generating train split: 66%|######6 | 22917/34602 [00:03<00:01, 6951.42 examples/s]
Generating train split: 69%|######9 | 23938/34602 [00:03<00:01, 6904.00 examples/s]
Generating train split: 72%|#######2 | 24984/34602 [00:04<00:01, 6919.77 examples/s]
Generating train split: 75%|#######5 | 26000/34602 [00:04<00:01, 6794.36 examples/s]
Generating train split: 77%|#######7 | 26799/34602 [00:04<00:01, 7058.45 examples/s]
Generating train split: 81%|######## | 27916/34602 [00:04<00:00, 7178.85 examples/s]
Generating train split: 84%|########3 | 29000/34602 [00:04<00:00, 7025.24 examples/s]
Generating train split: 86%|########6 | 29781/34602 [00:04<00:00, 7200.83 examples/s]
Generating train split: 89%|########9 | 30873/34602 [00:04<00:00, 7224.30 examples/s]
Generating train split: 92%|#########2| 31972/34602 [00:04<00:00, 7255.00 examples/s]
Generating train split: 95%|#########5| 33000/34602 [00:05<00:00, 7066.81 examples/s]
Generating train split: 98%|#########7| 33769/34602 [00:05<00:00, 7206.59 examples/s]
Generating train split: 100%|##########| 34602/34602 [00:05<00:00, 6533.47 examples/s]
Generating train split: 100%|##########| 34602/34602 [00:05<00:00, 6384.03 examples/s]
Generating validation split: 0%| | 0/5000 [00:00<?, ? examples/s]
Generating validation split: 12%|#1 | 587/5000 [00:00<00:00, 5850.78 examples/s]
Generating validation split: 25%|##5 | 1266/5000 [00:00<00:00, 6396.96 examples/s]
Generating validation split: 40%|#### | 2000/5000 [00:00<00:00, 6660.35 examples/s]
Generating validation split: 56%|#####5 | 2784/5000 [00:00<00:00, 7115.67 examples/s]
Generating validation split: 77%|#######7 | 3867/5000 [00:00<00:00, 7162.50 examples/s]
Generating validation split: 99%|#########9| 4952/5000 [00:00<00:00, 7186.37 examples/s]
Generating validation split: 100%|##########| 5000/5000 [00:00<00:00, 6859.03 examples/s]
Generating test split: 0%| | 0/5734 [00:00<?, ? examples/s]
Generating test split: 12%|#1 | 673/5734 [00:00<00:00, 6704.45 examples/s]
Generating test split: 25%|##4 | 1411/5734 [00:00<00:00, 6930.83 examples/s]
Generating test split: 37%|###7 | 2133/5734 [00:00<00:00, 7058.04 examples/s]
Generating test split: 51%|#####1 | 2952/5734 [00:00<00:00, 7498.13 examples/s]
Generating test split: 70%|######9 | 4000/5734 [00:00<00:00, 7257.65 examples/s]
Generating test split: 84%|########3 | 4805/5734 [00:00<00:00, 7494.13 examples/s]
Generating test split: 100%|##########| 5734/5734 [00:00<00:00, 7405.69 examples/s]
Generating test split: 100%|##########| 5734/5734 [00:00<00:00, 7230.22 examples/s]
让我们显示数据集中的一个样本条目
import matplotlib.pyplot as plt
import numpy as np
idx = 5
print("Question: ", dataset["train"][idx]["question"])
print("Answers: " ,dataset["train"][idx]["answers"])
im = np.asarray(dataset["train"][idx]["image"].resize((500,500)))
plt.imshow(im)
plt.show()

Question: what year is shown in the photo?
Answers: ['2011', '2011', '2011', '2011', '2011', '2011', '2011', '2011', '2011', '2011']
3. 接下来,我们编写转换函数,将图像和文本转换为模型可使用的张量 - 对于图像,我们使用 torchvision 中的变换将其转换为张量并调整大小为统一尺寸 - 对于文本,我们使用 Hugging Face 的 BertTokenizer
对其进行分词(并填充) - 对于答案(即标签),我们选择出现频率最高的答案作为训练标签
import torch
from torchvision import transforms
from collections import defaultdict
from transformers import BertTokenizer
from functools import partial
def transform(tokenizer, input):
batch = {}
image_transform = transforms.Compose([transforms.ToTensor(), transforms.Resize([224,224])])
image = image_transform(input["image"][0].convert("RGB"))
batch["image"] = [image]
tokenized=tokenizer(input["question"],return_tensors='pt',padding="max_length",max_length=512)
batch.update(tokenized)
ans_to_count = defaultdict(int)
for ans in input["answers"][0]:
ans_to_count[ans] += 1
max_value = max(ans_to_count, key=ans_to_count.get)
ans_idx = answer_to_idx.get(max_value,0)
batch["answers"] = torch.as_tensor([ans_idx])
return batch
tokenizer=BertTokenizer.from_pretrained("bert-base-uncased",padding="max_length",max_length=512)
transform=partial(transform,tokenizer)
dataset.set_transform(transform)
4. 最后,我们从 torchmultimodal
中导入 flava_model_for_classification
。它默认加载预训练的 FLAVA 检查点,并包含一个分类头。
模型的正向传播函数将图像通过视觉编码器,问题通过文本编码器。图像和问题的嵌入随后通过多模态编码器。对应于 CLS token 的最终嵌入通过一个 MLP 头,该 MLP 头最终给出每个可能答案的概率分布。
from torchmultimodal.models.flava.model import flava_model_for_classification
model = flava_model_for_classification(num_classes=len(vocab))
flava_for_pretraining_unified_text_encoder.pt: 0.00B [00:00, ?B/s]
flava_for_pretraining_unified_text_encoder.pt: 1%| | 10.6M/1.43G [00:00<00:13, 105MB/s]
flava_for_pretraining_unified_text_encoder.pt: 2%|1 | 23.5M/1.43G [00:00<00:11, 119MB/s]
flava_for_pretraining_unified_text_encoder.pt: 4%|3 | 57.0M/1.43G [00:00<00:06, 218MB/s]
flava_for_pretraining_unified_text_encoder.pt: 7%|6 | 97.8M/1.43G [00:00<00:04, 293MB/s]
flava_for_pretraining_unified_text_encoder.pt: 10%|9 | 138M/1.43G [00:00<00:03, 334MB/s]
flava_for_pretraining_unified_text_encoder.pt: 13%|#2 | 179M/1.43G [00:00<00:03, 358MB/s]
flava_for_pretraining_unified_text_encoder.pt: 15%|#5 | 220M/1.43G [00:00<00:03, 374MB/s]
flava_for_pretraining_unified_text_encoder.pt: 18%|#8 | 260M/1.43G [00:00<00:03, 384MB/s]
flava_for_pretraining_unified_text_encoder.pt: 21%|##1 | 301M/1.43G [00:00<00:02, 391MB/s]
flava_for_pretraining_unified_text_encoder.pt: 24%|##3 | 342M/1.43G [00:01<00:02, 397MB/s]
flava_for_pretraining_unified_text_encoder.pt: 27%|##6 | 382M/1.43G [00:01<00:02, 400MB/s]
flava_for_pretraining_unified_text_encoder.pt: 30%|##9 | 423M/1.43G [00:01<00:02, 402MB/s]
flava_for_pretraining_unified_text_encoder.pt: 32%|###2 | 464M/1.43G [00:01<00:02, 404MB/s]
flava_for_pretraining_unified_text_encoder.pt: 35%|###5 | 504M/1.43G [00:01<00:02, 404MB/s]
flava_for_pretraining_unified_text_encoder.pt: 38%|###7 | 543M/1.43G [00:01<00:02, 398MB/s]
flava_for_pretraining_unified_text_encoder.pt: 41%|#### | 583M/1.43G [00:01<00:02, 400MB/s]
flava_for_pretraining_unified_text_encoder.pt: 44%|####3 | 624M/1.43G [00:01<00:02, 401MB/s]
flava_for_pretraining_unified_text_encoder.pt: 46%|####6 | 665M/1.43G [00:01<00:01, 404MB/s]
flava_for_pretraining_unified_text_encoder.pt: 49%|####9 | 706M/1.43G [00:01<00:01, 405MB/s]
flava_for_pretraining_unified_text_encoder.pt: 52%|#####2 | 746M/1.43G [00:02<00:01, 406MB/s]
flava_for_pretraining_unified_text_encoder.pt: 55%|#####4 | 785M/1.43G [00:02<00:01, 402MB/s]
flava_for_pretraining_unified_text_encoder.pt: 57%|#####6 | 811M/1.43G [00:02<00:01, 357MB/s]
flava_for_pretraining_unified_text_encoder.pt: 58%|#####7 | 829M/1.43G [00:02<00:01, 306MB/s]
flava_for_pretraining_unified_text_encoder.pt: 60%|###### | 862M/1.43G [00:02<00:01, 311MB/s]
flava_for_pretraining_unified_text_encoder.pt: 63%|######2 | 900M/1.43G [00:02<00:01, 331MB/s]
flava_for_pretraining_unified_text_encoder.pt: 66%|######5 | 940M/1.43G [00:02<00:01, 354MB/s]
flava_for_pretraining_unified_text_encoder.pt: 69%|######8 | 980M/1.43G [00:02<00:01, 368MB/s]
flava_for_pretraining_unified_text_encoder.pt: 71%|#######1 | 1.02G/1.43G [00:02<00:01, 365MB/s]
flava_for_pretraining_unified_text_encoder.pt: 74%|#######3 | 1.06G/1.43G [00:02<00:00, 376MB/s]
flava_for_pretraining_unified_text_encoder.pt: 77%|#######6 | 1.10G/1.43G [00:03<00:00, 384MB/s]
flava_for_pretraining_unified_text_encoder.pt: 79%|#######9 | 1.13G/1.43G [00:03<00:00, 379MB/s]
flava_for_pretraining_unified_text_encoder.pt: 82%|########1 | 1.17G/1.43G [00:03<00:00, 369MB/s]
flava_for_pretraining_unified_text_encoder.pt: 84%|########4 | 1.21G/1.43G [00:03<00:00, 380MB/s]
flava_for_pretraining_unified_text_encoder.pt: 87%|########7 | 1.25G/1.43G [00:03<00:00, 388MB/s]
flava_for_pretraining_unified_text_encoder.pt: 90%|########9 | 1.29G/1.43G [00:03<00:00, 385MB/s]
flava_for_pretraining_unified_text_encoder.pt: 93%|#########2| 1.33G/1.43G [00:03<00:00, 389MB/s]
flava_for_pretraining_unified_text_encoder.pt: 95%|#########5| 1.37G/1.43G [00:03<00:00, 391MB/s]
flava_for_pretraining_unified_text_encoder.pt: 98%|#########8| 1.41G/1.43G [00:03<00:00, 393MB/s]
flava_for_pretraining_unified_text_encoder.pt: 1.43GB [00:03, 371MB/s]
5. 我们将数据集和模型放在一个简单的训练循环中,以演示如何训练模型 3 个迭代
from torch import nn
BATCH_SIZE = 2
MAX_STEPS = 3
from torch.utils.data import DataLoader
train_dataloader = DataLoader(dataset["train"], batch_size= BATCH_SIZE)
optimizer = torch.optim.AdamW(model.parameters())
epochs = 1
for _ in range(epochs):
for idx, batch in enumerate(train_dataloader):
optimizer.zero_grad()
out = model(text = batch["input_ids"], image = batch["image"], labels = batch["answers"])
loss = out.loss
loss.backward()
optimizer.step()
print(f"Loss at step {idx} = {loss}")
if idx >= MAX_STEPS-1:
break
Loss at step 0 = 8.31214427947998
Loss at step 1 = 8.427092552185059
Loss at step 2 = 8.25987720489502