捷徑

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()

文件

存取 PyTorch 的完整開發人員文件

檢視文件

教學課程

取得針對初學者和進階開發人員的深入教學課程

檢視教學課程

資源

尋找開發資源並獲得問題解答

檢視資源