huggingface - 在本地保存经过微调的模型 - 还有分词器?
huggingface - save fine tuned model locally - and tokenizer too?
我只是想知道如果微调 BERT 模型并保存它,分词器是否会受到某种影响或改变。以后使用保存的 BERT 模型时,是否也需要在本地保存分词器以重新加载它?
我就是这样:
bert_model.save_pretrained('./Fine_tune_BERT/')
然后
bert_model = TFBertModel.from_pretrained('./Fine_tune_BERT/')
但是我也需要保存分词器吗?或者我可以像这样以正常方式使用它:
tokenizer = BertTokenizer.from_pretrained('bert-base-cased')
分词器不受微调的影响。 tokenizer 将 token 转换为词汇表索引,这些索引在训练期间需要保持不变,否则,将无法在 BERT 计算开始时训练静态嵌入。
在您的情况下,分词器不需要保存,因为您没有更改分词器或添加新的分词。 Huggingface tokenizer 提供了添加新标记或重新定义特殊标记(例如 [MASK]
、[CLS]
等)的选项。如果您进行此类修改,则可能必须保存标记器以便稍后重用。
我只是想知道如果微调 BERT 模型并保存它,分词器是否会受到某种影响或改变。以后使用保存的 BERT 模型时,是否也需要在本地保存分词器以重新加载它?
我就是这样:
bert_model.save_pretrained('./Fine_tune_BERT/')
然后
bert_model = TFBertModel.from_pretrained('./Fine_tune_BERT/')
但是我也需要保存分词器吗?或者我可以像这样以正常方式使用它:
tokenizer = BertTokenizer.from_pretrained('bert-base-cased')
分词器不受微调的影响。 tokenizer 将 token 转换为词汇表索引,这些索引在训练期间需要保持不变,否则,将无法在 BERT 计算开始时训练静态嵌入。
在您的情况下,分词器不需要保存,因为您没有更改分词器或添加新的分词。 Huggingface tokenizer 提供了添加新标记或重新定义特殊标记(例如 [MASK]
、[CLS]
等)的选项。如果您进行此类修改,则可能必须保存标记器以便稍后重用。