OceanGPT:面向海洋科学的大型语言模型初探


海洋覆盖了约 71% 的地球表面,对全球的气候调节、天气模式、生物多样性以及人类的经济发展都扮演着至关重要的角色。海洋科学专注于研究海洋的自然特性、其变化规律以及与海洋资源开发和利用相关的理论、方法与应用。


本文介绍一个为海洋领域打造的大型语言模型——OceanGPT。如图 1 所示,该模型可处理海洋科学的问答和内容生成任务。此外,本文还尝试验证大模型模拟操控水下机器人,探索大模型驱动的水下具身智能的实现。OceanGPT 提供预训练模型的开源下载。


论文标题:OceanGPT: A Large Language Model for Ocean Science Tasks

论文链接:

https://arxiv.org/abs/2310.02031

项目主页:

https://www.zjukg.org/project/OceanGPT

模型下载:

https://huggingface.co/zjunlp/oceangpt-7b

▲ 图1 OceanGPT海洋科学问答能力



OceanGPT训练


1.1 海洋领域预训练


为了训练 OceanGPT,本文构建了专门针对海洋领域的的预训练语料。首先,从开放获取的论文文献中收集文档作为原始语料库,并使用工具将文献文件的内容转化为纯文本。为确保数据的质量,对收集的数据集进行进一步使用正则表达式过滤掉了图表、标题、页眉、页脚、页码、URL 和引用。此外,还过滤了多余的空格、换行符和其他非文本字符。


处理后的文档涵盖了海洋科学的各个领域,如海洋物理学、海洋化学、海洋生物学、地质学、水文学等。此外采用了基于哈希的方法对数据进行去重,这有助于在预训练期间降低过拟合的风险,提高其泛化能力。


1.2 基于多智能体协同的指令数据生成与微调


在指令微调阶段,为了能够解决海洋领域数据难获取的问题,本文设计了一个全新的基于多智能体协同配合的指令数据生成与处理框架—DoInstruct,其能够自动化地收集和生成大量海洋领域指令数据。如图 2 所示,DoInstruct 的海洋数据生成框架依托于大模型多智能体的协作来自动化地生成大量海洋科学指令数据。

▲ 图2 海洋指令构建的算法框架


具体来说,每个海洋智能体会扮演对应海洋专家角色,比如扮演海洋生物、海洋气象等子领域的专家。整个框架分为两部分,一部分利用演化算法来不断迭代增加海洋种子数据的知识丰富度,另一部分则训练单独的智能体专门负责从海洋科学文献中抽取数据来提升知识专业度。最后,与海洋科学相关的人工规则被作为提示来确保智能体生成指令数据的质量。




OceanGPT评测


2.1 构建海洋领域大模型评测基准-OceanBench


本文构建了一个海洋领域评测基准数据集,它可以系统性地评估大语言模型在海洋领域的性能。如图 3 所示,经过自动化评估和人工评估,本文发现 OceanGPT 在 15 个海洋科学任务上表现出相对较好的性能。

▲ 图3 OceanBench实验效果对比


2.2 深入分析海洋大模型的能力 

▲ 图4 OceanGPT在海洋科学问答场景的效果


对于海洋科学问答场景,OceanGPT 在知识丰富度和专业度中展示出更好的效果。具体而言,OceanGPT 在描述如海洋放射性核素防护等研究内容时展现出相对更高的领域知识专长,其文本内容不仅结构清晰、组织有序,而且全面覆盖了放射性核素研究的各个方面,比如从实验设计到数据分析,再到风险评估和处置指南等。

▲ 图5 OceanGPT在模拟操作水下机器人的效果(基于Gazebo模拟器)


进一步的,本文探究了 OceanGPT 在模拟操作海洋机器人的能力。通过将代码指令整合到了模型的指令数据中,经训练后发现 OceanGPT 在一定程度上可依靠人类指令来操作水下机器人,使机器人执行基本的路径控制操作。OceanGPT 对海洋机器人的交互进行了初步尝试,可以为大模型驱动的水下具身智能的实现提供参考。




使用OceanGPT


本文在 Hugging Face (https://huggingface.co/zjunlp/OceanGPT-7b) 中提供了 OceanGPT 的使用简易教程。执行以下脚本即可加载和使用 OceanGPT。


>> from transformers import pipeline
>> pipe = pipeline("text-generation", model="zjunlp/OceanGPT-7b")
>> from transformers import AutoTokenizer, AutoModelForCausalLM
>> tokenizer = AutoTokenizer.from_pretrained("zjunlp/OceanGPT-7b")
>> model = AutoModelForCausalLM.from_pretrained("zjunlp/OceanGPT-7b")

OceanGPT 还提供了一个如图 6 所示的在线交互演示系统,并计划在未来更新模型以进一步提升海洋科学任务的能力。更多详情请参阅论文原文。


▲ 图6 OceanGPT演示系统

更多阅读



#投 稿 通 道#

 让你的文字被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。


📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算


📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿


△长按添加PaperWeekly小编



🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧


··

相关推荐

  • 年终盘点!2023年顶会论文合集(含CVPR、ECCV、NIPS、AAAI、ACL、KDD、ICML等)
  • SFT微调的数据组合及训练策略如何影响大模型性能:4个经典问题及实验结论分享
  • 24 个常见的 Docker 疑难杂症处理技巧
  • 我准备组队学习了
  • Java21 分代 ZGC 和虚拟线程上手体验
  • 算法的末日来了!阿里裁掉大量算法,数量远超其他岗位,因为算法拿着高薪,就知道调参发论文!
  • [211渣硕] 腾讯/阿里/携程 详细NLP算法实习 面经
  • Tree of Thoughts(ToT):让大模型能动地解决问题
  • 终于发表了第一篇 CCF A 类顶会!
  • 实现订单 30 分钟未支付则自动取消,我有五种方案!
  • Object o = new Object() 占用多少字节?
  • 美团一面:为什么 MySQL 不建议使用 NULL 作为列默认值?5 分钟彻底搞懂!
  • 语雀停服八小时,P0级事故!故障原因和补偿来了!!
  • 协同发展,生态聚合丨1024程序员节暨「源聚一堂」开源技术沙龙(北京站)成功举办
  • 周鸿祎称程序员节是唯一不能放假的节日;苹果官宣十月 Mac 发布会:来势凶猛;Firefox 119 发布|极客头条
  • 用了这些IDEA插件以后,我写代码快了10倍!
  • 浅谈多人游戏原理和简单实现
  • 【深度学习】激光雷达分割与测距SOTA算法!已开源!
  • 【深度学习】NIPS 2022 表格数据还需要深度学习吗?
  • 【学术相关】教育部:研究生,可以换导师!