Model的简介
一.模型类型
目前基于Transformer的模型主要存在以下三种:
1.仅仅包含Transformer的编码器模型(自编码模型):,使用Encoder,可以从两个方向进行编码,拥有双向的注意力机制,即计算每一个词的特征时都看到完整上下文。常见仅仅存在编码器的预训练模型有:ALBERT,BERT,DistilBERT,RoBERTa等。经常被用于的任务:文本分类,命名实体识别,阅读理解等
2.仅仅存在Transformer的解码器模型:(自回归模型),使用Decoder,拥有单向的注意力机制,即计算每一个词的特征时都只能看到上文,无法看到下文。常见的预训练模型:GPT,GPT-2,GPT-3,Bloom,LLaMA等。经常被用于文本生成中。
3.具有Transformers的编码器-解码器:(序列到序列模型),使用Encoder+Decoder,Encoder部分使用双向的注意力,Decoder部分使用单向注意力。常见的预训练模型为:BART,T5,mBART,GLM等。被用于文本摘要和机器翻译中。
二.Transformers中的Model Head
- *model模型本身
- *ForCausalLM
如果你的任务是基于因果语言建模(Causal Language Modeling),你可能会使用像 GPT(Generative Pre-trained Transformer)这样的模型。 - *ForMaskedLM
Hugging Face Transformers 提供了用于掩码语言建模(Masked Language Modeling,MLM)的预训练模型,这些模型通常用于填充缺失的令牌并从上下文中预测缺失的令牌。 - *ForSeq2SeqLM
Hugging Face Transformers 提供了许多用于序列到序列学习(Seq2Seq Learning)任务的预训练模型,这些模型用于翻译、摘要、对话生成等应用。 - *ForMultiplechoice
“ForMultipleChoice” 是 Hugging Face Transformers 库中用于多项选择任务(Multiple Choice Task)的模型或任务处理类之一。Hugging Face Transformers 提供了各种预训练的自然语言处理模型和相关工具,使得在多项选择任务中使用这些模型变得更加方便。 - *ForQuestionAnswering
ForQuestionAnswering 是 Hugging Face Transformers 库中用于问答任务(Question Answering Task)的类。这个类通常用于加载预训练的模型,以便在给定的文本段落中回答特定问题。 - *ForSequenceClassification
ForSequenceClassification 是 Hugging Face Transformers 库中用于序列分类任务的类。这个类通常用于加载预训练的模型,以便在给定的文本序列中执行分类任务。 - *ForTokenClassification
Hugging Face Transformers 库中用于令牌级别分类任务(Token Classification Task)的类。这个类通常用于加载预训练的模型,以便在给定的文本序列中执行对每个令牌进行分类的任务,比如命名实体识别(NER)。
三.总结
随着预训练语言模型的发展,可以说2023年是大模型飞速发展的时代,目前已经出现多种大预言模型,比如LLaMA,LLaMa-2,ChatGPT4等。有空会整理最近一些大模型的论文。