本文详细解析了GPT模型的预训练与微调机制。预训练阶段通过自监督单向语言模型学习通用语义表示;微调阶段利用标注数据适配特定任务,但需解决灾难性遗忘问题。文章提出的混合损失函数方法,通过调节预训练与微调损失的权重平衡,有效提升模型在特定任务上的性能同时保持通用性。


引言

计算机视觉领域,借助ImageNet数据集对模型开展预训练,让模型能从海量图像中充分掌握特征提取方法,之后再依据具体任务目标进行微调,这种范式给自然语言处理领域带来了启发。

以ELMo为代表的动态词向量模型,为语言模型预训练奠定了基础。

随后,GPT和BERT等基于Transformer的大规模预训练语言模型应运而生,推动自然语言处理领域全面迈入预训练微调范式的新时代。

通过预训练语言模型具备了强大的通用自然语言表示能力,能够高效学习词汇、语法和语义信息。在应用于下游任务时,无需深入了解任务细节和设计特定神经网络结构,仅通过“微调”,即利用具体任务的标注数据在预训练模型上进行监督训练,就能显著提升任务性能。

OpenAI于2018年提出的生成式预训练语言模型(GPT),是该类模型的典型代表。其模型结构由多层Transformer构成,属于单向语言模型,主要包含输入层、编码层和输出层三个部分。

一、自监督预训练

GPT采用生成式预训练方式,具有单向建模特性,即模型只能按照从左到右或从右到左的顺序对文本序列进行建模。其Transformer结构与解码策略,确保了输入文本每个位置的信息只能依赖于过去时刻的信息。

    1. 输入层编码:给定文本序列,GPT在输入层会将每个词映射为稠密向量,计算公式为:。

    其中,代表词的词向量,是词的位置向量,则是第个位置的单词经过输入层(第0层)后的输出。

    由于Transformer结构本身无法感知位置信息,所以输入层必须额外添加位置向量来补充这一关键信息,这也是GPT输入层与传统神经网络语言模型的重要区别。

    1. 编码层处理:经过输入层编码后,模型会得到表示向量序列,并将其送入编码层。编码层由个Transformer模块组成,在自注意力机制的作用下,每一层的每个表示向量都会整合之前位置表示向量的信息,从而使每个表示向量都具备丰富的上下文信息。

    经过多层编码后,GPT能够获得每个单词的层次化组合式表示,其计算过程可表示为:。

    其中,表示第层的表示向量序列,为序列长度,为模型隐藏层维度,为模型总层数。

    1. 输出层预测:GPT模型的输出层基于最后一层的表示,预测每个位置上的条件概率,计算式为:

    其中,为词向量矩阵,为词表大小。

    1. 目标函数优化:单向语言模型按照阅读顺序输入文本序列,通过优化的最大似然估计,使模型能够根据输入历史序列准确预测当前词,目标函数为:。

    其中代表模型参数,也可基于马尔可夫假设,仅使用部分过去词进行训练。预训练阶段通常采用随机梯度下降法进行反向传播,以优化该负对数似然函数。

二、有监督下游任务微调

通过自监督语言模型预训练,GPT模型已具备一定的通用语义表示能力。下游任务微调的核心目的,是在这一通用语义表示的基础上,根据下游具体任务的特性进行针对性适配,以提升模型在特定任务上的性能。

下游任务通常依赖有标注数据集进行训练,每个样例包含输入长度为的文本序列以及对应的标签。

    1. 模型输出获取:将文本序列输入GPT模型,获取最后一层最后一个词对应的隐藏层输出。
    1. 标签预测:基于,通过全连接层变换并结合Softmax函数,得到标签预测结果,计算公式为:。其中,为全连接层参数,为标签个数。
    1. 目标函数优化:通过对整个标注数据集优化以下目标函数来微调下游任务:。

在微调过程中,下游任务针对自身目标进行优化,容易导致模型遗忘预训练阶段学到的通用语义知识表示,进而损失模型的通用性和泛化能力,即出现灾难性遗忘问题。

为缓解这一问题,通常采用混合预训练任务损失和下游微调损失的方法,具体使用以下公式进行下游任务微调:。其中,的取值范围为,用于调节预训练任务损失在总损失中的占比。

如何学习AI大模型?

如果你对AI大模型入门感兴趣,那么你需要的话可以点击这里大模型重磅福利:入门进阶全套104G学习资源包免费分享!

这份完整版的大模型 AI 学习和面试资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

这是一份大模型从零基础到进阶的学习路线大纲全览,小伙伴们记得点个收藏!

请添加图片描述
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

100套AI大模型商业化落地方案

请添加图片描述

大模型全套视频教程

请添加图片描述

200本大模型PDF书籍

请添加图片描述

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

LLM面试题合集

请添加图片描述

大模型产品经理资源合集

请添加图片描述

大模型项目实战合集

请添加图片描述

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

在这里插入图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐