【论文笔记】| 蛋白质大模型ProLLaMA

【论文笔记】| 蛋白质大模型ProLLaMA

ProLLaMA: A Protein Large Language Model for Multi-Task Protein Language Processing
Peking University
Theme: Domain Specific LLM

在这里插入图片描述
在这里插入图片描述

Main work:

当前 ProLLM 的固有局限性:(i)缺乏自然语言能力,(ii)指令理解不足
利用低秩适应(LoRA)并采用两阶段训练方法,将任何通用 LLM 转换为能够同时处理多个 PLP 任务的 ProLLM,在无条件/可控蛋白质序列生成、蛋白质属性预测任务中取得了最先进的结果

Method:

1. Continual Learning on Protein Language

当前的 ProLLM 缺乏自然语言能力,这阻碍了多任务能力,利用预训练的 LLAMA2 对蛋白质语言执行持续学习(类比学习新语言,模型在保留原始自然语言能力的同时学习蛋白质语言)

基于 UniRef50 构建了一个数据集,并用特定的前缀和后缀对每个蛋白质序列进行预处理。

在 LLAMA2 的每个Decoder layer,我们将 LoRA 添加至 W q , W k , W v , W o , W u p , W g a t e , W d o w n W_q,W_k,W_v,W_o,W_{up},W_{gate},W_{down} Wq,Wk,Wv,Wo,Wup,Wgate,Wdown以及 E m b e d Embed Embed G e n e r a t i o n H e a d Generation \ Head Generation Head layers (token可能在蛋白质序列和自然语言中具有不同的含义,需要对同一token进行不同的embedding)

LoRA rank-128, AdamW optimizer, peak learning rate(cosine annealing scheduler)-0.05, training epoch-1.

2. Performing Various Tasks

对上一步中获得的 ProLLaMA 执行指令微调,采用自回归方式进行训练
L ( Θ ) = E x ∼ D [ − ∑ i log ⁡ p ( x i ∣ u , x 0 , x 1 , … , x i − 1 ; Θ ) ] \mathcal{L}(\Theta)=\mathbb{E}_{\boldsymbol{x}\sim\mathcal{D}}\left[-\sum_i\log p(x_i|\boldsymbol{u},x_0,x_1,\ldots,x_{i-1};\Theta)\right] L(Θ)=ExD[ilogp(xiu,x0,x1,,xi1;Θ)]
LoRA rank-64, AdamW optimizer, peak learning rate(cosine annealing scheduler)-0.05, training epoch-2.

3. Expanding to More Tasks

基于上述模型针对特定任务再次进行指令微调

参考文献

Lv L, Lin Z, Li H, et al. ProLLaMA: A Protein Large Language Model for Multi-Task Protein Language Processing[J]. arXiv preprint arXiv:2402.16445, 2024.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/14542.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis篇 在linux系统上安装Redis

安装Redis 在Ubuntu上安装Redis 在Ubuntu上安装Redis 在linux系统中,我们安装Redis,必须先使它有root权限. 那么在linux中,如何切换到root用户权限呢? sudo su 就可切换到用户权限了. 在切换到用户权限后,我们需要用一条命令来搜索Redis相关的软件包 apt search redis 会出现非…

ROS2学习——节点话题通信(2)

目录 一、ROS2节点 1.概念 2.实例 (1)ros2 run (2)ros2 node list (3)remapping重映射 (4)ros2 node info 二、话题 (1) ros2 topic list &#xf…

头歌openGauss-存储过程第1关:创建存储过程

编程要求 1、创建第1个存储过程,并调用; 1)创建存储过程,查询emp表数据; 2)调用存储过程; --创建存储过程,获得计算机(cs)系学生选课情况并将结果写入临时表t…

人脸识别:基于卷积神经网络(CNN)分类思想的人脸识别系统

本文来自公众号 “AI大道理” —————— 项目配套视频课程: 平台:荔枝微课 链接:十方教育 项目地址:https://github.com/AIBigTruth/CNN_faces_recognition 之前很多人来询问这个项目怎么做,代码跑不起来&#…

数据库读写分离

实现 MySQL 的读写分离主要可以通过以下几种方式: 一主多从架构: 设置一个主数据库(Master)来处理写操作(如 INSERT、UPDATE、DELETE)。 设置多个从数据库(Slave)来处理读操作&…

USB数据恢复软件:轻松找回U盘重要数据!

USB数据丢失的原因 USB数据丢失有一些常见原因,了解这些原因有利于恢复数据。 文件意外删除病毒攻击软件错误未安全弹出USB设备格式化USB设备 顺便一提,如果你通过快捷键“Ctrl D”删除了数据,那你可以从回收站中还原它们。如果你永久删除…

Isaac Sim仿真平台学习(1)认识Isaac Sim

0.前言 上一个教程中我们下载好了Isaac Sim,这一章我们将来简单了解一下Isaac Sim平台。 isaac Sim仿真平台安装-CSDN博客 1.Isaac Sim是啥? What Is Isaac Sim? — Omniverse IsaacSim latest documentation Isaac Sim是NVDIA Omniverse平台的机器…

【编译原理复习笔记】属性文法

属性文法 也称为属性翻译文法,由 Knuth 提出,以上下文无关文法为基础 (1)为每个文法符号(终结符与非终结符)配备相关的属性,代表与该文法符号相关的信息 (2)属性文法对于…

【LSTM】基于Matlab的LSTM模型建模(代码)

训练目标:用LSTM训练数据 数据:随时间递增,患者患病的概率(横坐标1个单位代表1个时间单位) 以下代码可直接运行 clc clear close all warning off % 关闭报警信息 %% 1.数据操作 % 1.1.导入数据&#x…

数据链路层协议——以太网协议

1. 数据链路层 网络层用于将数据从一台主机发送到另一台主机。传输层用于将数据可靠的从一台主机发送到另一台主机。(网络层没有保证可靠性的策略,传输过程中可能会出现各种意外,例如:丢包,网络拥塞等。通过传输层可以…

跨域问题的4种解决方案

文章导读 前言 跨域问题指的是在Web开发中,由于浏览器的同源策略限制,当一个网页尝试访问与它不同源(协议、域名或端口不同)的资源时,可能会遇到安全限制导致无法正常访问的问题。这种策略旨在防止恶意网站读取或修改其…

yarn的基本命令和用法

Yarn通过并行安装、离线模式、确定性安装以及更好的依赖解析算法,为开发者提供了更快、更稳定、更安全的包管理体验。它保留了npm的大部分功能,并在此基础上做了大量优化,下面我们就来详述Yarn的核心命令和实用技巧。📚 安装Yarn…

【MySQL精通之路】InnoDB(7)-锁和事务模型(2)-事务模型

主博客: 【MySQL精通之路】InnoDB(7)-锁和事务模型-CSDN博客 上一篇: 【MySQL精通之路】InnoDB(7)-锁和事务模型(1)-锁-CSDN博客 下一篇: 目录 1.事务隔离级别 2.1 可重复读 2.2 读已提交 2.3 读取未提交 2.4 序列化读 2.自动提交、…

订餐系统总结、

应用层: SpringBoot:快速构建Spring项目,采用“约定大于配置”的思想,简化Spring项目的配置开发。 SpringMvc:Spring框架的一个模块,springmvc和spring无需通过中间整合层进行整合,可以无缝集成。 Sprin…

完整的数据可视化方法集

在当前的大数据时代,了解如何可视化数据是UI/UX设计师技能的重要组成部分。如今,几乎所有的公司都需要良好的数据可视化作为确定业务方向和决策的参考。数据的可视化结果越好,用户的决策就越科学。 1、什么是数据可视化 数据可视化是将信息…

张量 t-product 积(matlab代码)

参考文献:Tensor Robust Principal Component Analysis with a New Tensor Nuclear Norm 首先是文章2.3节中 t-product 的定义: 块循环矩阵: 参考知乎博主的例子及代码:(t-product与t-QR分解,另一篇傅里叶对…

HTML5 设备访问及输入输出设备交互

目录 设备访问输入设备交互输出设备交互设备访问 设备信息访问 navigator.userAgent:获取浏览器的用户代理字符串,从中可以解析出设备类型、操作系统、浏览器版本等信息。 const userAgent = navigator.userAgent; console.log(userAgent); // 输出类似 "Mozilla/5.0…

算法(Algorithm)

算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,代表着用系统的方法描述解决问题的策略机制。也就是说,算法能够对一定规范的输入,在有限时间内获得所要求的输出。算法应该具有…

【python004】miniforge可行替代方案实战总结(最近更新中)

1.熟悉、梳理、总结项目研发实战中的miniforge日常使用中的问题。随着版本更新,做了一些变动,如商业化限制,取消一些语法等。 2.欢迎点赞、关注、批评、指正,互三走起来,小手动起来!

vue通过for循环生成input框后双向绑定失效问题

有些时候页面上有太多的表单元素&#xff0c;一个个的写太过繁琐&#xff0c;拿 input 框举例&#xff0c;众多的 input 框&#xff0c;无非就是输入框前的说明和 input 框的 name 属性不一样 <el-form :inline"true" :model"formInline" size"mi…