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)[原始碼]¶
- 範例 - 預先訓練好的 base 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])
- 範例 - 附加到未初始化分類頭部的預先訓練好的 large 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 [原始碼]¶
- 參數:
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¶
具有 Base 配置的 XLM-R 編碼器
XLM-RoBERTa 模型是在 Unsupervised Cross-lingual Representation Learning at Scale <https://arxiv.org/abs/1911.02116> 中提出的。它是一個大型多語言語言模型,在 2.5TB 的過濾後的 CommonCrawl 資料上訓練,並基於 RoBERTa 模型架構。
最初由 XLM-RoBERTa 的作者根據 MIT 許可證發佈,並以相同許可證重新發佈。[許可證,來源]
有關用法,請參閱
torchtext.models.RobertaBundle()
。
XLMR_LARGE_ENCODER¶
- torchtext.models.XLMR_LARGE_ENCODER¶
具有 Large 配置的 XLM-R 編碼器
XLM-RoBERTa 模型是在 Unsupervised Cross-lingual Representation Learning at Scale <https://arxiv.org/abs/1911.02116> 中提出的。它是一個大型多語言語言模型,在 2.5TB 的過濾後的 CommonCrawl 資料上訓練,並基於 RoBERTa 模型架構。
最初由 XLM-RoBERTa 的作者根據 MIT 許可證發佈,並以相同許可證重新發佈。[許可證,來源]
有關用法,請參閱
torchtext.models.RobertaBundle()
。
ROBERTA_BASE_ENCODER¶
- torchtext.models.ROBERTA_BASE_ENCODER¶
具有 Base 配置的 Roberta 編碼器
RoBERTa 迭代了 BERT 的預先訓練程序,包括在更多資料上以更大的批次訓練模型更長時間;移除下一個句子預測目標;訓練更長的序列;以及動態地改變應用於訓練資料的遮罩模式。
RoBERTa 模型在五個資料集的合併上進行了預先訓練:BookCorpus、英文維基百科、CC-News、OpenWebText 和 STORIES。這些資料集總共包含超過 160GB 的文字。
最初由 RoBERTa 的作者根據 MIT 許可證發佈,並以相同許可證重新發佈。[許可證,來源]
有關用法,請參閱
torchtext.models.RobertaBundle()
。
ROBERTA_LARGE_ENCODER¶
- torchtext.models.ROBERTA_LARGE_ENCODER¶
具有 Large 配置的 Roberta 編碼器
RoBERTa 迭代了 BERT 的預先訓練程序,包括在更多資料上以更大的批次訓練模型更長時間;移除下一個句子預測目標;訓練更長的序列;以及動態地改變應用於訓練資料的遮罩模式。
RoBERTa 模型在五個資料集的合併上進行了預先訓練:BookCorpus、英文維基百科、CC-News、OpenWebText 和 STORIES。這些資料集總共包含超過 160GB 的文字。
最初由 RoBERTa 的作者根據 MIT 許可證發佈,並以相同許可證重新發佈。[許可證,來源]
有關用法,請參閱
torchtext.models.RobertaBundle()
。