ESM蛋白质语言模型系列
模型总览
-
第一篇《Biological structure and function emerge from scaling unsupervised learning to 250 million protein sequences 》ESM-1b
-
第二篇《MSA Transformer》在ESM-1b的基础上作出改进,将模型的输入从单一蛋白质序列改为MSA矩阵,并在Transformer中加入行、列两种轴向注意力机制,对位点分别计算第个序列和第个对齐位置的影响,充分利用二维输入的优势。
-
第三篇《Language models enable zero-shot prediction of the effects of mutations on protein function 》中提出了ESM-1v模型,该模型与ESM-1b模型构架相同,只是预训练数据集改为UR90(ESM-1b预训练数据集为UR50)
-
第四篇《Language models of protein sequences at the scale of evolution enable accurate structure prediction》,ESMFold,提出了ESM2,代替MSA部分和Structure Template部分,对Postion Embedding做了修改,可以支持更长的氨基酸序列编码
| 模型名称 | input | 普适性 | 模型 | 论文 |
|---|---|---|---|---|
| ESM-1b | single sequence | family-specific | transformer encoder | Biological structure and function emerge from scaling unsupervised learning to 250 million protein sequences |
| ESM-MSA-1b | MSA | few-shot | 加了两个行列注意力机制 | MSA Transformer |
| ESM-1v | single sequence | zero-shot | transformer encoder | Language models enable zero-shot prediction of the effects of mutations on protein function |
| ESM-2 | single sequence | zero-shot | transformer encoder | Language models of protein sequences at the scale of evolution enable accurate structure prediction |
ESM-1B的模型大小如下所示

ESM2模型大小如下所示(esm-github截图):

ESM-2 embedding(不同于word2vec,和BERT一样?):
Bert输入Embeddings包含三个部分,第一部分为token的embeddings,第二部分为位置编码的embeddings,第三部分为token所属段落编码的embeddings
- tokenizer(由wordpiece创建)对输入蛋白会头尾添加cls、eos特殊字符,占两个字符长度 ,加Padding Token [PAD]
- tokenizer会创建固定大小的词汇表,进行分词,查词汇表将token转化成索引列表
tokenizer首先检查整个单词是否在词汇表中。如果没有,则尝试将单词分解为词汇表中包含的尽可能大的子单词,最后将单词分解为单个字符。注意,由于这个原因,我们总是可以将一个单词表示为至少是它的单个字符的集合
self.word_embeddings = nn.Embedding(config.vocab_size, config.hidden_size, padding_idx=0),相同位置输出相同
将这3个ID序列输入到BERT中就会按照BERT模型的定义依次将各种ID转换为对应的embedding
Token Embeddings, (1, n, 768) ,词的向量表示
Segment Embeddings, (1, n, 768),辅助BERT区别句子对中的两个句子的向量表示,EMS2将蛋白质视为几个句子?
Position Embeddings ,(1, n, 768) ,让BERT学习到输入的顺序属性
- 分词后送入token embedding层从而将每一个词转换成向量形式
ESM-2 output:
和BERT一样
相关文章:
ESM蛋白质语言模型系列
模型总览 第一篇《Biological structure and function emerge from scaling unsupervised learning to 250 million protein sequences 》ESM-1b 第二篇《MSA Transformer》在ESM-1b的基础上作出改进,将模型的输入从单一蛋白质序列改为MSA矩阵,并在Tran…...
RHCE-------Day1
存储管理 标准存储管理 1、分区 fdisk /dev/nume0n1 交互式指令 2、格式化 mkfs.xfs /dev/nume0n1p1 直接指定分区类型 mkfs -t xfs /dev/nume0n1p1 3、挂载 mount /dev/nume0n1p1 /mnt 取消挂载: umont …...
Linux(Centos7)防火墙端口操作记录
1、nginx -t #Nginx配置文件检查 上述截图代表检查没问题 上述截图检查配置文件配置错误,并提示错误文件位置 2、systemctl restart nginx #重启Nginx 重启Nginx失败 3、systemctl status nginx.service #查看Nginx服务状态 80端口被占导致服务启动失败 4、n…...
【MySQL数据库】初识MySQL数据库、安装MySQL
文章目录 前言一、什么是 MySQL?二、MySQL 的强大之处三、Ubuntu安装MySQL步骤 1: 更新包列表步骤 2: 安装 MySQL步骤 3: 启动 MySQL 服务步骤 4: 验证 MySQL 安装步骤 5: 确保 MySQL 安全性 总结 前言 在今天的数字化世界中,数据是企业和个人的重要资产…...
Keil Map信息解析
基本功能: 1.在Keil里面,通过App.Map复制所有信息。然后解析剪辑版内容。 2.随意输入一个函数内存地址,即可遍历出该内存地址属于哪个.c或者函数名。或者能遍历出变量。 强化功能: 1.通过Keil5 命令 Save xxxxxxx\1.Hex 0x200173…...
在重生奇迹MU中如何选择最佳的挂机点?
如何寻找最适合自己的挂机地点呢?小编建议玩家朋友从以下几点着手加以抉择。 怪物的等级不能过高 你的最佳挂机点要结合自己的实际情况来定,如果你刷怪比较吃力的话,那么此游戏地图并不适合你挂机,一旦挂机过程中,你…...
IT行业中的热门职业及前景展望
目录 一、IT技术发展背景及历程 二、IT行业热门职业 三、前景展望 一、IT技术发展背景及历程 随着科技的不断发展和创新,IT技术也在不断更新和完善。从计算机的出现到互联网的普及,再到现代云计算、人工智能等技术的兴起,IT技术已经成为了…...
linux练习
linux练习 vim编辑器有哪几种工作模式? 命令模式、末行模式、编辑模式 yum的配置文件在什么目录下?具体有哪些字段? 目录:cat /etc/yum.repos.d/*.repo 字段: [] name baseurl enabled gpgcheck 规划分区的命令是什么…...
【【带有握手信号的无符号数乘法verilog+ testbench 代码】】
带有握手信号的无符号数乘法verilog testbench 代码 uumultiplier.v module uumultiplier #(parameter NUMBER1 8 ,parameter NUMBER2 …...
【Python机器学习】零基础掌握BayesianRidge贝叶斯回归
如何准确预测房价? 在现实生活中,购买房产可能是最大的一笔投资。因此,准确预测房价变得尤为重要。通常,房价受到多个因素的影响,包括地段、房龄、房屋面积等。但如何综合这些因素来做出准确预测呢? 这里介绍一种机器学习算法:贝叶斯岭回归(Bayesian Ridge Regressio…...
【机器学习】朴素贝叶斯算法基本原理与计算案例
朴素贝叶斯算法基本原理与计算案例 文章目录 朴素贝叶斯算法基本原理与计算案例1. 朴素贝叶斯算法的基本原理2. 概率基础3. 朴素贝叶斯简单计算案例4. 朴素贝叶斯算法对文本进行分类5. 拉普拉斯平滑系数6. 案例:20类新闻分类7. 总结 1. 朴素贝叶斯算法的基本原理 朴…...
redis6.0源码分析:简单动态字符串sds
文章目录 sds简介与特性(面试)sds结构模型数据结构苛刻的数据优化数据结构优化uintX_t对齐填充 sds优势O(1)时间复杂度获取字符串长度二进制安全杜绝缓冲区溢出自动扩容机制——sdsMakeRoomFor方法 内存重分配次数优化 sds最长是多少部分API源码解读创建sds释放sds sds简介与特…...
1.7 攻击面和攻击树
思维导图: 1.7 攻击面与攻击树 攻击面: 描述计算机和网络系统面对的安全威胁和攻击。 定义: 攻击面是由系统中可访问和可利用的漏洞所组成。常见攻击面: 向外部Web及其他服务器开放的端口和相应代码。防火墙内部的服务。处理入站数据、电子邮件、XML文件、Office文档…...
解决input在谷歌浏览器自动填充问题
解决input在谷歌浏览器自动填充问题 <input typepassword readonly onfocus"this.removeAttribute(readonly);" />...
Java字节码技术
Java 字节码简介 Java 中的字节码,英文名为 bytecode, 是 Java 代码编译后的中间代码格式。JVM 需要读取并解析字节码才能执行相应的任务。 从技术人员的角度看,Java 字节码是 JVM 的指令集。JVM 加载字节码格式的 class 文件,校验之后通过 J…...
Java SE 学习笔记(十八)—— 注解、动态代理
目录 1 注解1.1 注解概述1.2 自定义注解1.3 元注解1.4 注解解析1.5 注解应用于 junit 框架 2 动态代理2.1 问题引入2.2 动态代理实现 1 注解 1.1 注解概述 Java 注解(Annotation)又称Java标注,是JDK 5.0引入的一种注释机制,Java语…...
虚拟内存之请求分页管理
一、与基本分页存储管理的区别 程序执行过程中,访问信息不在内存时,OS需要从外存调入内存。——>调页功能 内存空间不够时,OS需要将内存中暂时用不到的信息换出到外存。——>页面置换功能 二、页表机制 1.页表:需要知道页面…...
lazarus开发:提升sqlite数据插入速度
目录 1 前言 2 优化数据容器 3 开启事务插入数据 4 其他方面优化 1 前言 近期有一个需求是向数据库中插入excel文件中的10万多条数据,接近70个字段。最初整个插入数据时间是大约40分钟,经过优化调整后,大幅优化为大约5分钟。这里简单介绍…...
瑞萨RH850-P1X ECM和英飞凌TC3xx SMU对比
1.1 基本结构 P1X ECM(Error Control Module)收集从不同的错误源和监控电路发来的错误信号,并通过error pin(ERROROUTZ)对外输出、产生中断并发出ECM reset信号。 P1x-C系列根据产品型号不同,ECM个数也不相同,如下: 对应寄存器基地…...
Ajax学习笔记第三天
做决定之前仔细考虑,一旦作了决定就要勇往直前、坚持到底! 【1 ikunGG邮箱注册】 整个流程展示: 1.文件目录 2.页面效果展示及代码 mysql数据库中的初始表 2.1 主页 09.html:里面代码部分解释 display: inline-block; 让块元素h1变成行内…...
(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)
题目:3442. 奇偶频次间的最大差值 I 思路 :哈希,时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况,哈希表这里用数组即可实现。 C版本: class Solution { public:int maxDifference(string s) {int a[26]…...
【Linux】shell脚本忽略错误继续执行
在 shell 脚本中,可以使用 set -e 命令来设置脚本在遇到错误时退出执行。如果你希望脚本忽略错误并继续执行,可以在脚本开头添加 set e 命令来取消该设置。 举例1 #!/bin/bash# 取消 set -e 的设置 set e# 执行命令,并忽略错误 rm somefile…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...
《Playwright:微软的自动化测试工具详解》
Playwright 简介:声明内容来自网络,将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具,支持 Chrome、Firefox、Safari 等主流浏览器,提供多语言 API(Python、JavaScript、Java、.NET)。它的特点包括&a…...
[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...
基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...
工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配
AI3D视觉的工业赋能者 迁移科技成立于2017年,作为行业领先的3D工业相机及视觉系统供应商,累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成,通过稳定、易用、高回报的AI3D视觉系统,为汽车、新能源、金属制造等行…...
【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)
1.获取 authorizationCode: 2.利用 authorizationCode 获取 accessToken:文档中心 3.获取手机:文档中心 4.获取昵称头像:文档中心 首先创建 request 若要获取手机号,scope必填 phone,permissions 必填 …...
QT3D学习笔记——圆台、圆锥
类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体(对象或容器)QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质(定义颜色、反光等)QFirstPersonC…...
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要: 近期,在使用较新版本的OpenSSH客户端连接老旧SSH服务器时,会遇到 "no matching key exchange method found", "n…...
