Prompt-Tuning基础

一、什么是NLP四范式:

        学术界一般将NLP任务的发展分为四个阶段,即NLP四范式:

  • 第一范式:基于传统机器学习模型,如TF-IDF特征+朴素贝叶斯。
  • 第二范式:基于深度学习的模型,如word2vec特征+LSTM。
  • 第三范式:预训练模型+fine-tuning的范式,如Bert+fine-tuning。
  • 第四范式:预训练模型+Prompt+预测的范式,如Bert+Prompt。

整个发展历程是朝着精度更高、少监督,甚至无监督的方向发展的。

二、Fine-Tuning

        Fine-Tuning是用于将预训练的语言模型适应于特定任务的领域。Fine-Tuning的基本思想是采用已经在大量文本上进行训练的预训练语言模型,然后在小模型的任务特定文本上继续训练它。

弱点:

  • 1)下游任务的目标和预训练的目标差距过大,可能导致过拟合
  • 2)微调过程中需要依赖大量的监督语料等等。

解决方法:

        Prompt-Tuning通过添加模板的方法

三、Prompt-Tuning的入门路线:

        Fine-Tuning是让预训练的模型迁就下游任务。

        Prompt-Tuning是让下游任务迁就预训练模型,其目的是将Fine-tuning的下游任务目标转换为Pre-training的任务。

        Prompt-tuning执行步骤:

                1)构建模板(Template)。

                2)标签词映射(Verbalizer)。

                3)训练。

        什么是Prompt-Tuning?

        通过添加模版的方法来避免引入额外的参数,从而让模型可以在小样本(few-shot)或者零样本(Zero-Shot)场景下达到理想的效果。

四、Prompt-Tuning的方法

        1)  GPT-3

        2) PET模型

                主要组件LPattern(模版)与Verbalizer(标签词映射)

        3)P-tuning V1的核心思想:

                P-tuning固定LLM参数,利用多层感知机(MLP)和LSTM对Prompt进行编码,编码之后与其他向量进行拼接之后正常输入LLM

五、Prompt-Tuning方法进阶

1)超大规模参数模型Prompt-Tuning方法

        1.上下文学习In-Context Learning:直接挑选少量的训练样本作为该任务的提示。

                zero-shot learning:给定任务的描述,然后提供测试数据对齐进行预测,直接让训练好的模型去进行任务测试。

                one-shot learning给定任务的描述,在进行新数据预测前,插入一个样本做指导,相当于给一个例子让模型理解,然后再提供测试数据对其进行预测。

                few-shot learning:给定任务的描述,在进行新数据预测前,插入N个样本做指导,相当于给N个例子让模型理解,然后再提供测试数据对其进行预测。

        2.指令学习 Instruction-Tuning:构建任务指令集,促使模型根据任务指令做出反馈。

        3.思维链 Chain of Thought:给予或激发模型具有推理和解释的信息,通过线性链式的模式指导模型生成合理的结果。

2)指令学习方法的应用:指令学习是通过更明显的指令和指示,让模型去理解并做出正确的action。

        1、Instruction-Tuning:做判别比做生成更容易。和Prompt-Tuning的核心一样,就是去发掘语言模型本身具备的知识

3)思维链方法的实现

        思维链(CoT)是一种改进的提示策略,用于提高LLM在复杂推理任务中的性能,如算术推理、常识推理和符号推理。

         Chain of Thought分为Few shot CoT和Zero shot CoT。

        Few shot CoT:ICL的一种特殊情况,它通过融合CoT推理步骤,将每个演示<input,output>扩充为<input,CoT,output>

        Zero shot CoT:直接生成推理步骤,然后使用生成的CoT来导出答案。

4)PEFT(Parameter Efficient Fine Tuning)大模型参数搞笑微调方法原理

        PEFT方法仅微调少量或额外的模型参数,固定大部分预训练参数,大大降低了计算和存储成本,同时最先进的PEFT技术也能实现了与全量微调(Full Fine-Tuning)相当的性能。

        PEFT方法分类:

        1、Prefix/Prompt-Tuning:在模型的输入或隐层添加k个额外可训练的前缀伪token,只训练这些前缀参数。

        2、Adapter-Tuning:将较小的神经网络层或模块插入预训练模型的每一层,这些新插入的神经模块称为adapter(适配器),下游任务微调时也只训练这些适配器参数。

        3、LoRA(Low-Rank Adaptation):通过学习小参数的低秩矩阵来近似模型权重矩阵w的参数更新,训练时只优化低秩矩阵参数。

        LoRA原理:冻结预训练模型的权重,并在每个Transformer块中注入可训练层(称为秩分解矩阵),即在模型的Liner层的旁边增加一个"旁支"A和B,其中,A将数据从d维降到r维,这个r是LoRA的秩,是一个重要的超参数;B将数据从r维升到d维,B部分的参数初始为0。模型训练结束后,需要将A+B部分的参数与原大模型的参数合并在一起使用。

        

  • 7
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值