-1

我有 deeppavlov 微调模型。有没有办法转换为变形金刚可以使用的模型(https://github.com/huggingface/transformers)?

4

1 回答 1

0

以下是如何从 DeepPavlov 模型中获取 HF Transformers 模型的方法:

from deeppavlov import build_model, configs
m = build_model(configs.classifiers.insults_kaggle_bert_torch, download=True)

m.pipe包含管道的所有元素:

[(([], ['x']),
  ['bert_features'],
  <deeppavlov.models.preprocessors.torch_transformers_preprocessor.TorchTransformersPreprocessor at 0x7f9b0414e550>),
 (([], ['bert_features']),
  ['y_pred_probas'],
  <deeppavlov.models.torch_bert.torch_transformers_classifier.TorchTransformersClassifierModel at 0x7f9ae5625ac8>),
 (([], ['y_pred_probas']),
  ['y_pred_ids'],
  <deeppavlov.models.classifiers.proba2labels.Proba2Labels at 0x7f9ae56221d0>),
 (([], ['y_pred_ids']),
  ['y_pred_labels'],
  <deeppavlov.core.data.simple_vocab.SimpleVocabulary at 0x7f9abddfe470>)]

所以,你可以得到 TorchTransformersClassifierModel

m.pipe[1][2]

并从中获取 HF Transformers 模型:

hf_model = m.pipe[1][2].model

hf_model是一个 PyTorch nn.Module,你可以像往常一样使用它。

于 2021-08-10T16:41:35.567 回答