快捷方式

torchtext.models

RobertaBundle

class torchtext.models.RobertaBundle(_params: torchtext.models.RobertaEncoderParams, _path: Optional[str] = None, _head: Optional[torch.nn.Module] = None, transform: Optional[Callable] = None)[source]
示例 - 预训练的 xlmr 基础编码器
>>> import torch, torchtext
>>> from torchtext.functional import to_tensor
>>> xlmr_base = torchtext.models.XLMR_BASE_ENCODER
>>> model = xlmr_base.get_model()
>>> transform = xlmr_base.transform()
>>> input_batch = ["Hello world", "How are you!"]
>>> model_input = to_tensor(transform(input_batch), padding_value=1)
>>> output = model(model_input)
>>> output.shape
torch.Size([2, 6, 768])
示例 - 预训练的大型 xlmr 编码器连接到未初始化的分类头部
>>> import torch, torchtext
>>> from torchtext.models import RobertaClassificationHead
>>> from torchtext.functional import to_tensor
>>> xlmr_large = torchtext.models.XLMR_LARGE_ENCODER
>>> classifier_head = torchtext.models.RobertaClassificationHead(num_classes=2, input_dim = 1024)
>>> model = xlmr_large.get_model(head=classifier_head)
>>> transform = xlmr_large.transform()
>>> input_batch = ["Hello world", "How are you!"]
>>> model_input = to_tensor(transform(input_batch), padding_value=1)
>>> output = model(model_input)
>>> output.shape
torch.Size([1, 2])
示例 - 用户指定的配置和检查点
>>> from torchtext.models import RobertaEncoderConf, RobertaBundle, RobertaClassificationHead
>>> model_weights_path = "https://download.pytorch.org/models/text/xlmr.base.encoder.pt"
>>> encoder_conf = RobertaEncoderConf(vocab_size=250002)
>>> classifier_head = RobertaClassificationHead(num_classes=2, input_dim=768)
>>> model = RobertaBundle.build_model(encoder_conf=encoder_conf, head=classifier_head, checkpoint=model_weights_path)
get_model(head: Optional[torch.nn.Module] = None, load_weights: bool = True, freeze_encoder: bool = False, *, dl_kwargs=None) torchtext.models.RobertaModel[source]
参数:
  • head (nn.Module) – 要附加到编码器以执行特定任务的模块。如果提供,它将替换默认的成员头 (默认值:None)

  • load_weights (bool) – 指示是否加载权重(如果可用)。(默认值:True)

  • freeze_encoder (bool) – 指示是否冻结编码器权重。(默认值:False)

  • dl_kwargs (关键字参数字典) – 传递给 torch.hub.load_state_dict_from_url()。(默认值:None)

XLMR_BASE_ENCODER

torchtext.models.XLMR_BASE_ENCODER

具有基础配置的 XLM-R 编码器

XLM-RoBERTa 模型在 大规模无监督跨语言表示学习 <https://arxiv.org/abs/1911.02116> 中提出。它是一个大型多语言语言模型,在 2.5TB 的过滤后的 CommonCrawl 数据上进行训练,并基于 RoBERTa 模型架构。

最初由 XLM-RoBERTa 的作者在 MIT 许可证下发布,并以相同许可证重新分发。[许可证, 来源]

请参考 torchtext.models.RobertaBundle() 以了解用法。

XLMR_LARGE_ENCODER

torchtext.models.XLMR_LARGE_ENCODER

具有大型配置的 XLM-R 编码器

XLM-RoBERTa 模型在 大规模无监督跨语言表示学习 <https://arxiv.org/abs/1911.02116> 中提出。它是一个大型多语言语言模型,在 2.5TB 的过滤后的 CommonCrawl 数据上进行训练,并基于 RoBERTa 模型架构。

最初由 XLM-RoBERTa 的作者在 MIT 许可证下发布,并以相同许可证重新分发。[许可证, 来源]

请参考 torchtext.models.RobertaBundle() 以了解用法。

ROBERTA_BASE_ENCODER

torchtext.models.ROBERTA_BASE_ENCODER

具有基础配置的 Roberta 编码器

RoBERTa 迭代了 BERT 的预训练过程,包括更长时间的训练、更大的批次处理更多数据;删除下一个句子预测目标;在更长的序列上进行训练;以及动态更改应用于训练数据的掩码模式。

RoBERTa 模型在五个数据集的联合上进行预训练:BookCorpus、英文维基百科、CC-News、OpenWebText 和 STORIES。这些数据集总共包含超过 160GB 的文本。

最初由 RoBERTa 的作者在 MIT 许可证下发布,并以相同许可证重新分发。[许可证, 来源]

请参考 torchtext.models.RobertaBundle() 以了解用法。

ROBERTA_LARGE_ENCODER

torchtext.models.ROBERTA_LARGE_ENCODER

具有大型配置的 Roberta 编码器

RoBERTa 迭代了 BERT 的预训练过程,包括更长时间的训练、更大的批次处理更多数据;删除下一个句子预测目标;在更长的序列上进行训练;以及动态更改应用于训练数据的掩码模式。

RoBERTa 模型在五个数据集的联合上进行预训练:BookCorpus、英文维基百科、CC-News、OpenWebText 和 STORIES。这些数据集总共包含超过 160GB 的文本。

最初由 RoBERTa 的作者在 MIT 许可证下发布,并以相同许可证重新分发。[许可证, 来源]

请参考 torchtext.models.RobertaBundle() 以了解用法。

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取针对初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获得问题的解答

查看资源