模型:

google/electra-small-generator

英文

警告 :这是官方生成器检查点,如在 ELECTRA original codebase 中所示。然而,此模型的规模与 google/electra-small-discriminator 的预训练不匹配。根据该论文推荐,在这种情况下,鉴别器和生成器之间的超参数乘法器应为 1/4 ,以避免训练不稳定。使用 google/electra-small-generator 和 google/electra-small-discriminator 时情况则不同,它们的规模相似。

ELECTRA:将文本编码器作为鉴别器而非生成器进行预训练

ELECTRA 是一种用于自监督语言表示学习的新方法。它可以使用较少的计算资源预训练变压器网络。ELECTRA 模型的训练目标是区分由另一个神经网络生成的“真实”输入标记和“伪造”输入标记,类似于 GAN 的鉴别器。在小规模下,即使在单个 GPU 上训练,ELECTRA 也能取得很好的结果。在大规模下,ELECTRA 在 SQuAD 2.0 数据集上取得了最先进的结果。

有关详细描述和实验结果,请参阅我们的论文 ELECTRA: Pre-training Text Encoders as Discriminators Rather Than Generators

此代码库包含了预训练 ELECTRA 的代码,包括在单个 GPU 上训练的小型 ELECTRA 模型。它还支持在下游任务上微调 ELECTRA,包括分类任务(例如 GLUE ),问答任务(例如 SQuAD )和序列标记任务(例如 text chunking )。

如何在 transformers 中使用生成器

from transformers import pipeline

fill_mask = pipeline(
    "fill-mask",
    model="google/electra-small-generator",
    tokenizer="google/electra-small-generator"
)

print(
    fill_mask(f"HuggingFace is creating a {nlp.tokenizer.mask_token} that the community uses to solve NLP tasks.")
)