七月审稿之提升模型效果的三大要素:prompt、数据质量、训练策略(附PeerRead)

本文主要是介绍七月审稿之提升模型效果的三大要素:prompt、数据质量、训练策略(附PeerRead),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

我带队的整个大模型项目团队超过40人了,分六个项目组,每个项目组都是全职带兼职,且都会每周确定任务/目标/计划,然后各项目组各自做任务拆解,有时同组内任务多时 则2-4人一组 方便并行和讨论,每周文档记录当周工作内容,平时群内随时讨论 1-2周一次语音会,最后通过相关课程不断招募各项目组成员 ​​​

比如在我司审稿项目之前的工作中,我们依次想尽各种办法微调以下模型(我之外,包括且不限于阿荀、朝阳、三太子、文弱、鸿飞、apple、不染、贾斯丁等)

  1. 七月论文审稿GPT第1版:通过3万多篇paper和10多万的review数据微调RWKV
  2. 七月论文审稿GPT第2版:用一万多条paper-review数据集微调LLaMA2 7B最终反超GPT4
  3. 七月论文审稿GPT第2.5和第3版:分别微调GPT3.5、Llama2 13B以扩大对GPT4的优势
  4. 七月论文审稿GPT第3.2版和第3.5版:通过paper-review数据集分别微调Mistral、gemma
  5. 七月论文审稿GPT第4版:通过paper-review数据集微调Mixtral-8x7b,对GPT4胜率超过80%

如上文文末回复一读者的评论所说,“近期 我们一方面 等llama2 70b的结果,一方面 准备提高下数据的质量了”,故有了本文,而如何提高数据质量呢,便是我和我司审稿项目组在3月底登杜甫江阁时所确定的:一个是提高review的质量(从而考虑到可以提高GPT对一篇篇paper的多个review做多聚一摘要出来的大review的质量,由于是设计prompt从而让GPT做多聚一的摘要操作,故可以优化下该prompt),一个是看有没办法可以拿到review出来之前更早期的论文版本

第一部分 提升模型效果的三大要素:prompt、数据质量、训练策略

1.1 让GPT对Review做多聚一操作的摘要prompt的优化

如本文开头所说,当我们把各种模型都微调一遍之后,发现最终还是得回归到数据上,其中一个便是提高review的质量

在我们之前的一系列工作中,我们针对一篇篇论文的多个review做多聚一,且摘要出多个要点,从而,一篇paper 一条review,最后,就可以弄成qa对 去微调开源模型

而之前5k 15k条paper-review数据对中的review,就是根据旧prompt 通过GPT3.5 16K摘要出来的,但之前的旧prompt 比较简单,就4个点

  1. 重要性和新颖性
  2. 可能被接收的原因
  3. 可能被拒绝的原因
  4. 其他改进建议

现在,想把review摘要的更好些,好提高微调效果,说白了,如果摘要出来的review质量不够高,会非常影响咱们微调模型的效果

总之,咱们的核心目标还是

不断逼近顶会审稿人的视角,以一针见血指出论文的问题、闪光点,从而侧面帮助作者修订论文

在经过反复看一系列论文的review意见之后我个人的反复琢磨,以及七月平台上一系列顶会审稿人对审稿的意见,外加和审稿项目组阿荀、朝阳等人的反复讨论之后,暂定把摘要prompt优化如下(至于完整的prompt设计见七月官网的:大模型商用项目之审稿GPT实战)

  1. ** How to evaluate the idea of the paper **, 
  2. ** Compared to previous similar works, what are the essential differences **, 
  3. ** How to evaluate the experimental results in the paper **, 
  4. ** Possible reasons for its acceptance **, 
  5. ** Possible reasons for its rejection **, 
  6. ** Other suggestions for improving the quality of the paper **, 
  7. and ** Other important review comments **.

总的思路就是,对于一篇paper,先看它的重要性、新颖性以及与众不同之处;接着看实验是否充分有说服力,然后总结闪光点、不足;最后看如果改进,看往哪几个方面做改进

1.2 论文早期版本的爬取

把各种模型都微调对比一遍之后,最后还是要再次回归到数据上,所以4.3日,我又开始反复琢磨之前阿荀爬下来的review数据

结果当晚意外解决了困扰我和我司审稿项目组一两月的一个问题,即之前没有找到review所对应的论文早期版本(review是旧review 但论文是新论文),而那晚在反复琢磨review数据时,发现可爬到review对应的论文早期版本 ​​​

从而,也就解决了审稿项目的一个大问题,毕竟我们要的就是这种论文所对应的 最早的审稿版本,这样和review的匹配程度 才能达到100%((至于如何具体爬取见七月官网的:大模型商用项目之审稿GPT实战)

1.3 训练策略

在大模型时代

  • 一个技术人保持竞争力的最佳方式就两点:保持对最新技术/paper的跟踪,每天各种大量实践/折腾/实验
  • ​对于一个组织也是如此,通过项目(大队伍 + 小队伍双重协作),是提高组织战斗力的最佳方式,不然各自为战 ​​​

// 待更

第二部分 相关工作之PeerRead:根据review给paper的各方面要点打分

paper读多了,便不再唯一关注阅读速度 因为大部分情况下 读的快没啥用(但少部分情况下 还是有用的),更多时候,更重要的是理解效率和理解深度,有时多看看参考文献中的论文,都会很有收获

读多了,便能在某一个时间点达到“量变引起质变”的效果,也就是在面对一个个新技术点时的开窍速度,会越来越快

2.1 康奈尔大学关于论文审稿的工作:特异性很强

  1. 用PGE方法从人工review中生成预设问题数据
    相当于paper =》 人工review =》通过PGE:即llama2 70B提炼预设问题 =》预设问题
  2. 使用 [paper, 预设问题] 数据训练得到一个能根据不同paper提出不同问题的模型A
    相当于让模型A学会根据不同的paper提问(毕竟,每篇review的预设问题不太一样),毕竟提问是门艺术
  3. 使用 [paper + A产生的预设问题, review] 训练得到模型B
    用的时候就是把不同的paper输入模型A来产生对应的预设问题,然后再把paper和预设问题输入模型B来得到review
  4. 和人工review对比词的叠度

// 待更

2.2 PeerRead:根据review给paper的各方面要点打分

昨晚在思考:如何评判一篇论文是否是好论文,或是否可以中稿顶会,然后无意中看到这篇论文:A Dataset of Peer Reviews (PeerRead): Collection, Insights and NLP Applications

可以好好读一下

// 待更

这篇关于七月审稿之提升模型效果的三大要素:prompt、数据质量、训练策略(附PeerRead)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/897117

相关文章

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

PHP轻松处理千万行数据的方法详解

《PHP轻松处理千万行数据的方法详解》说到处理大数据集,PHP通常不是第一个想到的语言,但如果你曾经需要处理数百万行数据而不让服务器崩溃或内存耗尽,你就会知道PHP用对了工具有多强大,下面小编就... 目录问题的本质php 中的数据流处理:为什么必不可少生成器:内存高效的迭代方式流量控制:避免系统过载一次性

C#实现千万数据秒级导入的代码

《C#实现千万数据秒级导入的代码》在实际开发中excel导入很常见,现代社会中很容易遇到大数据处理业务,所以本文我就给大家分享一下千万数据秒级导入怎么实现,文中有详细的代码示例供大家参考,需要的朋友可... 目录前言一、数据存储二、处理逻辑优化前代码处理逻辑优化后的代码总结前言在实际开发中excel导入很

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

GSON框架下将百度天气JSON数据转JavaBean

《GSON框架下将百度天气JSON数据转JavaBean》这篇文章主要为大家详细介绍了如何在GSON框架下实现将百度天气JSON数据转JavaBean,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录前言一、百度天气jsON1、请求参数2、返回参数3、属性映射二、GSON属性映射实战1、类对象映

C# LiteDB处理时间序列数据的高性能解决方案

《C#LiteDB处理时间序列数据的高性能解决方案》LiteDB作为.NET生态下的轻量级嵌入式NoSQL数据库,一直是时间序列处理的优选方案,本文将为大家大家简单介绍一下LiteDB处理时间序列数... 目录为什么选择LiteDB处理时间序列数据第一章:LiteDB时间序列数据模型设计1.1 核心设计原则

Java+AI驱动实现PDF文件数据提取与解析

《Java+AI驱动实现PDF文件数据提取与解析》本文将和大家分享一套基于AI的体检报告智能评估方案,详细介绍从PDF上传、内容提取到AI分析、数据存储的全流程自动化实现方法,感兴趣的可以了解下... 目录一、核心流程:从上传到评估的完整链路二、第一步:解析 PDF,提取体检报告内容1. 引入依赖2. 封装

深度剖析SpringBoot日志性能提升的原因与解决

《深度剖析SpringBoot日志性能提升的原因与解决》日志记录本该是辅助工具,却为何成了性能瓶颈,SpringBoot如何用代码彻底破解日志导致的高延迟问题,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言第一章:日志性能陷阱的底层原理1.1 日志级别的“双刃剑”效应1.2 同步日志的“吞吐量杀手”

Java利用@SneakyThrows注解提升异常处理效率详解

《Java利用@SneakyThrows注解提升异常处理效率详解》这篇文章将深度剖析@SneakyThrows的原理,用法,适用场景以及隐藏的陷阱,看看它如何让Java异常处理效率飙升50%,感兴趣的... 目录前言一、检查型异常的“诅咒”:为什么Java开发者讨厌它1.1 检查型异常的痛点1.2 为什么说

MySQL中查询和展示LONGBLOB类型数据的技巧总结

《MySQL中查询和展示LONGBLOB类型数据的技巧总结》在MySQL中LONGBLOB是一种二进制大对象(BLOB)数据类型,用于存储大量的二进制数据,:本文主要介绍MySQL中查询和展示LO... 目录前言1. 查询 LONGBLOB 数据的大小2. 查询并展示 LONGBLOB 数据2.1 转换为十