一行代码提高大模型10%性能,开发者:免费午餐

facebook OPT试用 可能是试用的模型比较小,跟chatgpt的长篇大论的问答比,还是稍微弱了点。本次试用是在colab环境下完成的。其次,试用模型350m。 阅读详情

大模型微调有“免费的午餐”了,只要一行代码就能让性能提升至少10%。

在7B参数量的Llama 2上甚至出现了性能翻倍的结果,Mistral也有四分之一的增长。

虽然这种方法用在监督微调阶段,但RLHF模型也能从中受益。

图片

来自马里兰州大学、纽约大学等机构的研究人员提出了名为NEFT(une)的微调方式。

这是一种新的正则化技术,可以用于提高微调监督(SFT)模型的性能。

图片

这种方法已经被HuggingFace收录进了TRL库,只要import再加一行代码就能调用。

NEFT不仅操作简便,而且没有显著的成本增加,作者称看起来是个“免费的午餐”。

图片

有网友试着用这种方法微调了基于Guanaco(一种羊驼家族模型)的Mistral-7B,结果性能提升明显。

图片

那么,NEFTune是如何用一行代码给一众大模型“打鸡血”的呢?

向模型中加入噪声

NEFTune的全称是Noisy Embedding Fine Tuning,即“带噪声的嵌入式微调”。

开发者认为,过拟合现象是限制大模型性能的一大因素,因此采用在训练阶段向嵌入层中加入噪声的方式来避免过拟合的出现,从而提高性能。

图片

具体而言,训练数据库中的文本首先会被token化,并转化为嵌入向量。

然后,系统会随机生成一个噪声向量,并用缩放器将噪声调节成所设置的强度。

经过缩放后的噪声会加入到嵌入向量中,作为模型的输入,然后开始训练。

每次迭代训练时,都会生成新的噪声并加入到嵌入层中。

from torch.nn import functional as F

def NEFTune(model, noise_alpha=5)
    def noised_embed(orig_embed, noise_alpha):     
        def new_func(x):      
            if model.training:           
                embed_init = orig_embed(x)                
                dims = torch.tensor(embed_init.size(1) * embed_init.size(2))                
                mag_norm = noise_alpha/torch.sqrt(dims)                
                return embed_init + torch.zeros_like(embed_init).uniform_(-mag_norm, mag_norm)           
            else:            
                return orig_embed(x)        
        return new_func    
    model.base_model.model.model.embed_tokens.forward = noised_embed(model.base_model.model.model.embed_tokens, noise_alpha)
return model

这段代码中,NEFTune函数中的形参noise_alpha就是噪声强度(系数),mag_norm则为实际过程中的噪声范围。

而NEFT只有在训练过程中才会向模型中加入噪声,推理阶段无此过程,代码中的if语句起到的就是这个作用。

训练模式下,new_func函数的返回值即为加入噪声后的嵌入层。

贴出这段代码是为了讲解需要,如果只是想调用NEFT,可以不必使用上面的完整代码,直接从TRL库中调用就可以了。

下面的代码是微调OPT-350M模型的一个示例:
在这里插入图片描述

而数据集方面,开发者一共使用了Alpaca、ShareGPT等四种不同数据集进行了微调。

作者介绍,选择这些数据的原因包括它们比较著名、曾成为SOTA等等。

此外出于硬件性能考虑,实验过程中所选择的都是单轮对话数据集。

那么,用NEFT方法调校过后的大模型,表现到底怎么样呢?

性能最高提升1倍

研究团队主要测试了模型调校前后生成的文本质量和对话能力。

其中文本质量主要基于AplacaEval数据集,使用ChatGPT和GPT-4评估。

用作参照的模型是Text-Davinci-003,训练后的模型胜过TD3的比例即为评价指标。

为了节约资源,研究团队先用ChatGPT判断是自己来评价还是调用GPT-4,部分情况下还会人工评判。

结果在不同的训练数据集中,Llama 2调整后都有至少10%的性能提升,在Alpaca数据集上更是直接翻倍。

图片

推广到OPT和Llama 1,NEFT方法同样可以带来一定的性能提升。

图片

而用于评估模型聊天能力的,则是OpenLLM Leadorboard中的任务。

结果发现,NEFT调整后模型的聊天能力同样相比Evol-Instruct有进一步提升。

图片

在成本没有显著增加的情况下,提高文本质量和聊天能力,是否会导致其他能力的下降,作者对此也进行了评估。

结果显示,NEFT方法在不同的数据集和模型上,对模型的其他能力均没有显著影响。

图片

实验过程中,作者还发现,模型生成的文本和并不是照搬训练数据,提示了模型具有一定泛化能力。

为了证实这一点,作者对模型损失进行了评估,结果发现测试数据集损失低于训练数据,证实了这一观点。

图片

此外作者发现,经NEFT调整之后,模型生成的文本不仅质量提高,长度也有所增加,而且增加的并非重复内容。

为了确认文本质量的提高是加入噪声的作用而不是由文本长度的增加所导致,研究人员又进行了消融实验。

结果显示,只是强制模型生成更长的文本无法达到NEFT的效果。

图片

论文地址:
https://arxiv.org/abs/2310.05914

— 完 —

​

如何学习大模型

现在社会上大模型越来越普及了,已经有很多人都想往这里面扎,但是却找不到适合的方法去学习。

作为一名资深码农,初入大模型时也吃了很多亏,踩了无数坑。现在我想把我的经验和知识分享给你们,帮助你们学习AI大模型,能够解决你们学习中的困难。

我已将重要的AI大模型资料包括市面上AI大模型各大白皮书、AGI大模型系统学习路线、AI大模型视频教程、实战学习,等录播视频免费分享出来,需要的小伙伴可以扫取。

一、AGI大模型系统学习路线

很多人学习大模型的时候没有方向,东学一点西学一点,像只无头苍蝇乱撞,我下面分享的这个学习路线希望能够帮助到你们学习AI大模型。

在这里插入图片描述

二、AI大模型视频教程

在这里插入图片描述

三、AI大模型各大学习书籍

在这里插入图片描述

四、AI大模型各大场景实战案例

在这里插入图片描述

五、结束语

学习AI大模型是当前科技发展的趋势,它不仅能够为我们提供更多的机会和挑战,还能够让我们更好地理解和应用人工智能技术。通过学习AI大模型,我们可以深入了解深度学习、神经网络等核心概念,并将其应用于自然语言处理、计算机视觉、语音识别等领域。同时,掌握AI大模型还能够为我们的职业发展增添竞争力,成为未来技术领域的领导者。

再者,学习AI大模型也能为我们自己创造更多的价值,提供更多的岗位以及副业创收,让自己的生活更上一层楼。

因此,学习AI大模型是一项有前景且值得投入的时间和精力的重要选择。

两天速成sft微调大模型(LoRA) Q:lora的预训练矩阵是不是下载的原模型的原来的参数矩阵,然后lora在这个基础上再加了一层矩阵? 阅读详情

相关推荐

DeepSeek DSpark投机解码技术解析:如何将大模型推理速度提升85%

如果你正在使用或部署大语言模型,特别是DeepSeek-V4-Pro这类千亿参数级别的模型,最头疼的问题是什么?不是模型能力不够强,而是 推理速度太慢,成本太高 。一次生成几百个token,用户等得心急,服务器账单也让人心惊。这几乎是所有AI应用从“玩具”走向“生产”时,必须跨过的工程鸿沟。 最近,DeepSeek推出的“DSpark”更新,宣称能将推理速度提升高达85%。这听起来像是一次常规的性能优化,但如果你仔细看,会发现它的核心并非对模型本身进行“魔改”,而是引入了一项名为“投机解码”的技术。这恰恰是

FLY_THINK2012的博客 466

大模型 | NEFTune之引入随机噪声对大模型训练的收益

注意,原先传入model的是input_ids,而当下由于我们将inputs_embeds增加了噪声,因此传入model的将直接替换为inputs_embeds,代码如下。进度:直接对模型进行如下封装,原理是对model.embed_tokens.forward()进行改写,经实践,这种方法不管用,会报堆栈溢出的error。在AlpacaEval榜单上,利用GPT4作为评分器,在多个数据上微调Llama2-7B模型,NEFTune方法相较于直接微调方法,均有显著提高。

RichardsZ_的博客 1320

TEE运行AI推理性能实测:延迟增加<8.3%,内存开销可控

可信执行环境(TEE)作为硬件级安全解决方案,通过在CPU内构建隔离的“飞地”来保护代码与数据的机密性和完整性。其核心原理依赖于硬件辅助的内存加密与隔离机制,为云端和边缘计算提供了可信的根。这项技术的核心价值在于,它使得在不可信基础设施上处理敏感数据(如AI模型权重和用户隐私信息)成为可能,而无需完全信任云服务提供商。在AI推理、金融风控、医疗诊断等对数据安全要求极高的应用场景中,TEE正成为平衡安全与性能的关键技术。本次实测聚焦于量化TEE在运行AI推理任务时的性能开销,通过对比Intel SGX、AMD

chouzu8463的博客 417

Trainer中的训练细节之自动评估

do_eval来判断是否需要进行eval,evaluation_strategy表示eval的策略,其中evaluation_strategy的优先度更高(即if evaluation_strategy!)后面在配置文件中改成do_eval:Flase,eval_strategy=no,也无效,最好的方法是直接将两者注释掉这样的话也不会进行评估。代码将args = training_args传入了(training_args正是和eval相关的参数)。大胆的猜测和上面的参数相关。

huijigo的博客 1942

LLM - 使用原生 Transformer 库的 SFTTrainer 类 LoRA 微调大模型

SFTTrainer 是 Hugging Face TRL 库所提供的有监督微调类,适用于高效微调,适配下游任务,通过大模型结合 LoRA 等参数高效方法,更新少量参数以最小化资源开销。使用原生 Transformer 库的 SFTTrainer 类,也可以更好的熟悉大模型的训练细节,有助于提升大模型领域的认知。

AGI 1829

OpenRouter免费大模型横向评测:Nemotron、Gemma、Trinity Mini谁更胜一筹?

大语言模型(LLM)作为当前人工智能领域的核心技术,通过在海量文本数据上进行预训练,具备了强大的语言理解和生成能力。其工作原理基于Transformer架构,通过自注意力机制捕捉长距离依赖关系,从而实现对复杂语义的建模。这项技术的核心价值在于能够将自然语言转化为可执行的任务,极大地降低了人机交互的门槛,提升了信息处理和内容创作的效率。在工程实践中,LLM被广泛应用于智能对话、代码生成、文档摘要、多语言翻译等场景。开发者常通过API网关集成多个模型,以平衡性能、成本与稳定性。本次评测聚焦于OpenRouter

weixin_27031001的博客 413

一行代码提高大模型10%性能,开发者:免费午餐!大模型 调优调用

大模型微调有“免费的午餐”了,只要一行代码就能让性能提升至少10%。在7B参数量的Llama 2上甚至出现了性能翻倍的结果,Mistral也有四分之一的增长。虽然这种方法用在监督微调阶段,但RLHF模型也能从中受益。来自马里兰州大学、纽约大学等机构的研究人员提出了名为NEFT(une)的微调方式。这是一种新的正则化技术,可以用于提高微调监督(SFT)模型的性能。这种方法已经被HuggingFace收录进了TRL库,只要import再加一行代码就能调用。

h1453586413的博客 1102

基于HPM5E00的EtherCAT从站开发实战:从硬件解析到软件调试

实时工业以太网通信是工业自动化与运动控制领域的核心技术,它通过硬件与协议栈的协同,实现了微秒级的高确定性数据交换。其技术价值在于为多轴同步、机器人控制等复杂场景提供了高实时性、高同步精度的通信基础。在应用场景上,广泛服务于数控机床、包装机械、半导体设备等高端制造领域。本文聚焦于EtherCAT从站开发,深入解析了基于先楫HPM5E00高性能MCU与专用从站控制器(ESC)的硬件架构设计,并详细阐述了开源协议栈SOES的移植、对象字典配置以及过程数据(PDO)映射等核心软件实践,为开发者快速构建稳定可靠的实时

weixin_30915951的博客 501

AI大模型收费变局下,开发者如何应对成本攀升与效率挑战?

在人工智能技术快速发展的今天,大语言模型(LLM)已成为提升开发效率的重要工具。其核心原理是基于海量数据训练,通过Transformer架构理解并生成人类语言。这项技术的价值在于能够自动化处理代码生成、文本分析等任务,显著降低重复劳动。随着技术普及,其应用场景已从实验探索扩展到大规模工程实践。然而,近期行业动态显示,AI服务的“免费午餐”时代正在终结,精细化运营与成本控制成为关键。以GitHub Copilot模型调整、通义千问API计费模式变革等事件为例,模型提供商正面临巨大的商业变现压力。这直接促使开发

weixin_33860553的博客 565

用Multisim和74192芯片复刻经典:手把手教你搭建篮球24秒违例计时器(附仿真文件)

本文详细介绍了如何使用Multisim仿真平台和74192芯片构建篮球24秒违例计时器,涵盖时序逻辑电路设计、核心器件选型、仿真环境搭建及调试技巧。通过分步指导,帮助读者掌握数字电路设计的关键技术,并附赠仿真文件供实践参考。

weixin_27014595的博客 279

《UE4游戏开发》之 《查cook资源失败,问题记录》

当项目打包时,cook出错,但是从原始引擎提供的信息中,没有提示具体的那个资源出错,要查到出错资源,还是非常麻烦。 下面就材质cook出错,增加一些日志,方便查找问题做简单记录 材质cook的一个阶段,是收集MaterialShaderMap,如果在这个阶段收集的信息出错,将会在FShaderMapContent::GetOutdatedTypes函数中,因为Shaders指针指向的内存有问题而出错,通过断点发现,FShaderMapContent这个类对象指针为null,而这个类对象的来源于AllMat.

qq_21919621的博客 2580

真正开源才是大模型的未来?

当然,无论是开源还是闭源,重要的是持续创新、提升透明度和安全性,以及实现AI技术的社会价值和经济价值的最大化。比起断定谁会是大模型的未来,不如去关注如何合理利用这两种模式,去塑造一个更加智能、开放、安全和可持续的AI未来。

2401_85373898的博客 1188

MATLAB机械臂建模实战:标准D-H法与改进D-H法到底选哪个?(附代码对比)

本文深入解析MATLAB中机械臂建模的标准D-H法与改进D-H法的本质区别,提供详细的代码对比和可视化结果。通过实际案例,帮助读者根据应用场景选择合适方法,并避免常见建模陷阱。特别关注Link函数和SerialLink工具的使用技巧,提升机械臂建模效率。

grape的博客 1121

开源才是大模型的未来?

LLaMA 2的出现,无疑对闭源大模型是一个打击,而在这之后,越来越多科技企业也加入了开源大模型的浪潮中。那么,开源是不是大模型的未来呢?这篇文章里,作者尝试谈了谈他的看法,一起来看看吧。

ZCYS2023的博客 1005

YOLOv8-Pose NCNN Android部署优化实践

本文探讨了在Android设备上高效部署YOLOv8-Pose姿态检测模型的优化实践。通过修改Pose头部导出逻辑,分离后处理到C++端实现,并替换SiLU激活函数为ReLU,显著提升了计算效率。具体步骤包括模型结构优化、ONNX导出、NCNN转换与算子融合,最终在Android端实现了30FPS的稳定推理性能。项目提供了完整的优化思路和实现方案,对移动端AI应用开发具有参考价值。

FJN110的博客 323

基于Spring Boot + Vue 3构建高并发华为数码商城交易平台:全栈架构设计与实现

内容将涵盖系统架构、数据库设计、核心模块开发(用户、商品、订单、购物车)、安全认证、性能优化以及前后端分离部署等关键环节,并提供详尽的代码示例,旨在为开发者提供一个可落地的企业级项目实战指南。<el-button text class="button" @click.stop="addToCart(product)">加入购物车</el-button>.antMatchers("/api/user/login", "/api/user/register").permitAll() // 公开接口。

2201_76125393的博客 306

科技云报道:开源才是大模型的未来?

快速超越还是平分秋色?

科技云报道 462

Allegro如何使用Cross Copy命令快速复制器件的位号和丝印外形其他层

在Allegro做PCB设计的时候,如果需要复制器件的位号到其它层是无法直接实现的,如果直接拷贝器件的位号的话,效果如下。但是Allegro的Cross Copy命令是支持复制任何属性的图形到其它层的,下面以复制器件位号和丝印外框为例说明。同样如果使用Z-copy命令,也是无法Z-copy text的,Finds下方texts是灰色的。如何使用Cross Copy命令快速复制器件的位号和丝印外形其他层。另外cap处可以选择线段的端点是圆形,八角形,或者方形的铜皮。拷贝C1013,出现的是C*

weixin_54787054的博客 2671
上一篇: 本科生60行代码教你手搓GPT大模型,技术介绍堪比教程
下一篇: 80%的人都不知道这个ai工具提升80%工作效率,从此告别苦逼加班
AI程序猿人
博客等级 码龄3年 6517粉丝 561原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值