nad*_*nad 8 machine-learning pytorch huggingface-transformers
我使用 Huggingface Transformer 在 Pytorch 中微调了一个预训练的 BERT 模型。所有的训练/验证都是在云端的 GPU 上完成的。
在训练结束时,我保存模型和标记器,如下所示:
best_model.save_pretrained('./saved_model/')
tokenizer.save_pretrained('./saved_model/')
Run Code Online (Sandbox Code Playgroud)
这将在saved_model目录中创建以下文件:
config.json
added_token.json
special_tokens_map.json
tokenizer_config.json
vocab.txt
pytorch_model.bin
Run Code Online (Sandbox Code Playgroud)
现在,我saved_model在我的计算机中下载该目录并想要加载模型和标记器。我可以像下面这样加载模型
model = torch.load('./saved_model/pytorch_model.bin',map_location=torch.device('cpu'))
但是我如何加载标记器?我是 pytorch 的新手,不确定因为有多个文件。可能我没有以正确的方式保存模型?
Ash*_*'Sa 10
如果您查看语法,它是您应该传递的预训练模型的目录。因此,加载分词器的正确方法必须是:
tokenizer = BertTokenizer.from_pretrained(<Path to the directory containing pretrained model/tokenizer>)
Run Code Online (Sandbox Code Playgroud)
在你的情况下:
tokenizer = BertTokenizer.from_pretrained('./saved_model/')
Run Code Online (Sandbox Code Playgroud)
./saved_model 这是您将保存预训练模型和标记器的目录。