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]¶
- Example - Pretrained base xlmr encoder
>>> 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])
- Example - Pretrained large xlmr encoder attached to un-initialized classification head
>>> 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])
- Example - User-specified configuration and checkpoint
>>> 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) torctext.models.RobertaModel[source]¶
- Parameters:
头部 (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模型在Unsupervised Cross-lingual Representation Learning at Scale <https://arxiv.org/abs/1911.02116>中被提出。它是一个大型多语言语言模型,基于RoBERTa模型架构,并在2.5TB的过滤后的CommonCrawl数据上进行了训练。
最初由XLM-RoBERTa的作者根据MIT许可证发布,并以相同的许可证重新分发。 [许可证, 源代码]
有关用法,请参阅
torchtext.models.RobertaBundle()。
XLMR_LARGE_ENCODER¶
- torchtext.models.XLMR_LARGE_ENCODER¶
带有大型配置的XLM-R编码器
XLM-RoBERTa模型在Unsupervised Cross-lingual Representation Learning at Scale <https://arxiv.org/abs/1911.02116>中被提出。它是一个大型多语言语言模型,基于RoBERTa模型架构,并在2.5TB的过滤后的CommonCrawl数据上进行了训练。
最初由XLM-RoBERTa的作者根据MIT许可证发布,并以相同的许可证重新分发。 [许可证, 源代码]
有关用法,请参阅
torchtext.models.RobertaBundle()。
ROBERTA_BASE_ENCODER¶
- torchtext.models.ROBERTA_BASE_ENCODER¶
罗伯塔编码器(Base配置)
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()。