Skip to content

Latest commit

 

History

History
154 lines (97 loc) · 7.54 KB

File metadata and controls

154 lines (97 loc) · 7.54 KB

开放人工智能 GPT2

概述

OpenAI GPT-2模型由Alec Radford, Jeffrey Wu, Rewon Child, David Luan, Dario Amodei和Ilya Sutskever提出,详细内容请见语言模型是无监督的多任务学习器,来自OpenAI。它是一个因果(单向)变换器,使用了很大的语料库(约40GB的文本数据)进行了语言模型预训练。

论文摘要如下:

GPT-2是一个基于变换器的大型语言模型,具有15亿个参数,使用包含800万个网页的数据集[1]进行了训练。GPT-2的训练目标很简单:根据文本中之前的所有单词来预测下一个单词。数据集的多样性使得这个简单的目标包含了许多任务在不同领域中的自然示范。 GPT-2是GPT的直接扩大,参数数量是GPT的10倍以上,使用了10倍以上的数据进行训练。

提示:

  • GPT-2是一个具有绝对位置嵌入的模型,因此通常建议在右侧而不是左侧填充输入。
  • GPT-2是通过因果语言建模(CLM)目标进行训练的,因此在预测序列中的下一个标记时具有强大的能力。利用这个特性,GPT-2能够生成句法连贯的文本,可以在run_generation.py示例脚本中观察到。
  • 该模型可以接受past_key_values(对于PyTorch)或past(对于TF)作为输入,其中包含之前计算的键/值注意对。使用这个(past_key_valuespast)值可以防止模型在文本生成的上下文中重新计算已预先计算的值。有关使用说明,请参阅PyTorch的[GPT2Model.forward]方法的past_key_values参数,或TF的[TFGPT2Model.call]方法的past参数。
  • 启用scale_attn_by_inverse_layer_idxreorder_and_upcast_attn标志将应用Mistral的训练稳定性改进(仅适用于PyTorch)。

Write With Transformer是由Hugging Face创建和托管的网页应用程序,展示了多个模型的生成能力。GPT-2是其中之一,有五个不同的大小可用:small,medium,large,xl以及small模型的蒸馏版本:distilgpt-2

此模型由thomwolf贡献。原始代码可以在这里找到。

资源

以下是官方Hugging Face和社区(由🌎表示)资源列表,以帮助你开始使用GPT2。如果你希望提交资源以包含在此处,请随时提交Pull Request,我们将进行审核!资源应该是新颖的,而不是重复的现有资源。

GPT2Config

[[autodoc]] GPT2Config

GPT2Tokenizer

[[autodoc]] GPT2Tokenizer - save_vocabulary

GPT2TokenizerFast

[[autodoc]] GPT2TokenizerFast

GPT2特定的输出

[[autodoc]] models.gpt2.modeling_gpt2.GPT2DoubleHeadsModelOutput

[[autodoc]] models.gpt2.modeling_tf_gpt2.TFGPT2DoubleHeadsModelOutput

GPT2模型

[[autodoc]] GPT2Model - forward

GPT2LMHeadModel

[[autodoc]] GPT2LMHeadModel - forward

GPT2DoubleHeadsModel

[[autodoc]] GPT2DoubleHeadsModel - forward

GPT2ForQuestionAnswering

[[autodoc]] GPT2ForQuestionAnswering - forward

GPT2ForSequenceClassification

[[autodoc]] GPT2ForSequenceClassification - forward

GPT2ForTokenClassification

[[autodoc]] GPT2ForTokenClassification - forward

TFGPT2Model

[[autodoc]] TFGPT2Model - call

TFGPT2LMHeadModel

[[autodoc]] TFGPT2LMHeadModel - call

TFGPT2DoubleHeadsModel

[[autodoc]] TFGPT2DoubleHeadsModel - call

TFGPT2ForSequenceClassification

[[autodoc]] TFGPT2ForSequenceClassification - call

TFSequenceClassifierOutputWithPast

[[autodoc]] modeling_tf_outputs.TFSequenceClassifierOutputWithPast

TFGPT2Tokenizer

[[autodoc]] TFGPT2Tokenizer

FlaxGPT2Model

[[autodoc]] FlaxGPT2Model - call

FlaxGPT2LMHeadModel

[[autodoc]] FlaxGPT2LMHeadModel - call