1.四种范式提示如何更好的和大语言模型对话peft涉及对模型参数的改变和学习如何得到更好的大语言模型下图有四种应用的范式第一种范式是直接用生成的内容只有之前学习的知识。第二种范式RAG把特定领域的知识交给大模型让大模型再重新组织一下。第三种范式思维链Cgain-of-Thought,CoT其中instructions就是prompt。第四种范式微调解决领域专业知识。那为什么要高效微调peft因为大语言模型的参数越来越大训练模型所需要的软件和硬件成本太大。peft只训练一部分参数来达到需要的效果。peft参数高效微调只训练微调小的神经网络roberta大模型冻住让我们的输出效果更好。通过小的神经网络控制这个大的roberta模型让输出的效果更好这就叫做peft参数高效微调2.peft常见的三种方法1prefix-tuning方法P-turning只加在输入端训练的参数量有限并且不能影响到每一层prefix-tuning把参数加到每一层有了更好的效果。这是第一种比较常见的peft的方法。2Adapter方法下面这篇是早期peft的论文Google公司针对bert的peft微调方式。软提示用虚拟token占了位置减少了输入的token。而且面对特定下游任务时如果进行full-fintuning即预训练模型中的所有参数都进行微调太过低效。为了摆脱虚拟token占位置的问题和full-fintuning太过低效的问题Google公司提出Adapter结构。在传统的transform的基础上加上Adapter结构在训练时固定transform的所有参数只更新Adapter。优点第一不占位置他是直接在层里面的。第二每一层都是transform架构都是一样的所以可以把参数加在每一层中。缺点把模型加深了在推理阶段需要更多的时间。而且绝大多数情况下效果不如full-fintuning。加上Adapter结构效果如下图所示。3LoRA方法这个是本次内容的重点也是后面要使用的peft的方法--LoRA。也是最主流的方法之一。低秩矩阵可以当作复杂度较低的矩阵。低秩矩阵可以变成两个较小矩阵的乘积大幅度提升计算效率。下图可以看出他是并行计算不增加模型深度不增加模型推理时延。可以应用在每一层不占用token位置。下图是lora的效果可以看出在前两个任务中精确度上lora和full几乎没有差别。loss方面lora比full收敛更快内存消耗更小。lora是微调大语言模型的技术微调大语言模型是为了解决生成任务。下面介绍生成任务是怎么训练。分成三步Pre-TrainingSFT和RLHF。第一步是学习说出通顺的语言但不管对不对也就是说人话。SFT是回答的准确。RLHF是回答的更舒服。我们要做的是SFT这一部分让我们生成的内容准确。SFT全称是Supervised Fine-tunning(有监督微调有监督就是有标签的意思。在介绍SFT之前先介绍Pre-Training。因为Pre-Training和SFT训练很类似。下面是Pre-Training假设我们的大语言模型只有一层因为多层过程是一样的。下图是大语言模型在预训练的过程。生成任务本质是分类任务把每个token分类到字典里面的每个位置。Pre-Training计算每个token的损失加在一起。预训练的输入的是一段文本。SFT的输入的内容是一问一答的形式。也就是promptinstructionanswer。SFT只计算answer的损失。为了让大语言模型有这个问题得到这个答案关注在回答拟合answer就可以了。