efficient evolution 抗体进化模型笔记

使用到的六个esm模型:

python bin/recommend.py
        '--model-names',
        default=[ 'esm1b', 'esm1v1', 'esm1v2', 'esm1v3', 'esm1v4', 'esm1v5', ]

  1. 计算概率分布

    • logits = model.predict_sequence_prob(seq): 通过模型对输入序列 seq 进行预测,得到每个位置上各种氨基酸的对数概率值。
    • probs = scipy.special.softmax(logits, axis=1): 对这些对数概率值进行 softmax 操作,将其转换为概率分布。在这里,probs 是一个概率矩阵,表示每个位置上各种氨基酸的概率。
  2. 确定突变

    • 对于每个位置 i(从第二个位置开始,因为第一个位置通常是起始位置):
      • 获取该位置的原始氨基酸 wt_j = model.alphabet_.tok_to_idx[seq[pos]] 和其对应的概率 wt_prob = probs[i, wt_j]
      • 遍历该位置可能的所有氨基酸 j
        • 排除在 exclude 集合中的氨基酸和特殊标记(如 <)的氨基酸。
        • 如果当前氨基酸不是原始氨基酸 wt_j
          • 计算当前氨基酸的概率 mt_prob = probs[i, j]
          • 如果当前氨基酸的概率大于阈值 alpha * wt_prob,则将该突变记录为 (位置, 原始氨基酸, 突变后的氨基酸)
  3. 返回突变列表

    • 将满足条件的突变记录在 mutations 列表中,并最终返回该列表。

代码中的 reconstruct_multi_models 函数的作用是针对给定的野生型序列 wt_seq,通过不同的模型(例如:'esm1b', 'esm1v1', 'esm1v2' 等)进行重构,并比较每个模型生成的突变。具体流程如下:

  1. 对于每个模型名称 model_name

    • 获取相应的模型 model = get_model_name(model_name)
    • 如果 alpha 为 None,则使用 reconstruct 函数对野生型序列进行重构,得到 wt_new,并计算与原始序列的差异 mutations_model = diff(wt_seq, wt_new)
    • 如果 alpha 不为 None,则使用 soft_reconstruct 函数进行软重构,得到 mutations_model
    • 对于每个突变 mutation 在 mutations_model 中:
      • 如果 mutation 不在 mutations_models 中,则将其添加,并初始化计数为 0。
      • 增加该突变的计数,并将该模型的名称添加到 mutations_model_names 中。
  2. 如果 return_names 为 True,则返回包含突变计数和模型名称的元组 (mutations_models, mutations_model_names);否则,仅返回突变计数 mutations_models

此外,还包含了使用 eval_sapiens函数  评价人源相似度 

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

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

相关文章

2023年下半年软考网络规划设计师论文真题

论文一 论虚拟化网络架构的规划与建设 随着信息技术的发展,网络以及软件厂商的产品、企业网络的规划按照NaaS模型进行演进已经成为一种共识。在NaaS的理念下,企业的IT专业人员将能够从选项菜单中订购网络基础设施组件,根据业务需求进行设计,并在短时间内交付和运行整个网…

RK3568驱动指南|第十五篇 I2C-第182章 使用Linux中默认的模拟I2C驱动程序

瑞芯微RK3568芯片是一款定位中高端的通用型SOC&#xff0c;采用22nm制程工艺&#xff0c;搭载一颗四核Cortex-A55处理器和Mali G52 2EE 图形处理器。RK3568 支持4K 解码和 1080P 编码&#xff0c;支持SATA/PCIE/USB3.0 外围接口。RK3568内置独立NPU&#xff0c;可用于轻量级人工…

线性代数笔记

行列式 求高阶行列式 可以划上三角 上三角 余子式 范德蒙行列式 拉普拉斯公式 行列式行列对换值不变 矩阵 矩阵的运算 同型矩阵加减 对应位置相加减 矩阵的乘法 左边第 i 行 一次 相乘求和 右边 第 j 列 eg 中间相等 两边规模 矩阵的幂运算 解题思路 找规律 数学归纳…

用C语言做一个web站,富文本写入与展示,用户登录,文本目录划分

目录 1. 基础准备必备工具&#xff1a; 2. 目录结构3. 用户登录&#xff08;使用简单的文件系统管理&#xff09;4. 富文本编辑器和展示5. 样式文件6. 配置 Web 服务器7. 运行和测试 构建一个简单的 Web 站点实现富文本写入和展示、用户登录以及文本目录划分需要结合多个技术&a…

CVE-2024-6387 分析

文章目录 1. 漏洞成因2. 漏洞利用前置知识2.1 相关 SSH 协议报文格式2.2 Glibc 内存分配相关规则 3. POC3.1 堆内存布局3.2 服务端解析数据时间测量3.3 条件竞争3.4 FSOP 4. 相关挑战 原文链接&#xff1a;个人博客 近几天&#xff0c;OpenSSH爆出了一个非常严重的安全漏洞&am…

重生奇迹mu精灵之心怎么搭配

玩家可以通过召唤来召唤多种精灵之心&#xff0c;每种精灵之心增加的属性也不同。精灵之心的作用是为了提升各种各样的属性。我们可以通过召唤获得精灵之心&#xff0c;前面的解锁费用较低&#xff0c;而后面的解锁需要大量的金币来解锁。 召唤精灵之心后&#xff0c;我们可以…

OpenResty Nginx:详细对比与部署指南

简介 Nginx 和 OpenResty 都是高性能的 Web 服务器和反向代理服务器&#xff0c;但它们有着不同的特性和应用场景。Nginx 是一个轻量级的、高性能的 HTTP 和反向代理服务器&#xff0c;而 OpenResty 是基于 Nginx 的集成软件平台&#xff0c;增强了 Nginx 的功能&#xff0c;特…

数据结构(JAVA)—代码题

01-数据结构—判断题 02-数据结构—选择题 03 数据结构—多选填空程序填空 ​ 01-顺序表的建立及遍历 import java.util.Iterator; import java.util.LinkedList; import java.util.ListIterator; import java.util.Scanner;public class Main {public static void main(St…

百万数据量修改数据思路及方法

场景 公司定时任务因数据量过大运行时间太久&#xff0c;大约3-4个小时&#xff0c;需要优化代码。数据量一旦变大&#xff0c;普通的修改操作也会变得复杂。 原代码 OpsPriceServiceImpl Override public ExpireProductPriceRefeshResponse refeshExpireProductPrice(Expir…

Hadoop-09-HDFS集群 JavaClient 代码上手实战!详细附代码 安装依赖 上传下载文件 扫描列表 PUT GET 进度条显示

章节内容 上一节完成&#xff1a; HDFS的集群启动HDFS的命令行操作HDFS 上传下载移动重命名等操作 背景介绍 这里是三台公网云服务器&#xff0c;每台 2C4G&#xff0c;搭建一个Hadoop的学习环境&#xff0c;供我学习。 之前已经在 VM 虚拟机上搭建过一次&#xff0c;但是没…

QT 绘制多阶贝塞尔曲线bezier

#include "bezierline.h"BezierLine::BezierLine(QWidget *parent) {this->setParent(parent);/*阶数 &#xff1a; 公式order 2: P (1-t)^2*P0 2(1-t)*t*P1 t^2*P2order 3: P (1-t)^3*P0 3(1-t)^2*t*P1 3(1-t)*t^2*P2 t^3*P3order 4: P (1-t)^4*P0 4…

Arthas常见使用姿势

文章目录 Arthas常见使用姿势官网基本命令通用参数解释表达式核心变量说明常用命令一些常用特殊案例举例其他技巧关于OGNLOGNL的常见使用OGNL的一些特殊用法与说明OGNL内置的虚拟属性OGNL的个人思考OGNL的杂碎&#xff0c;收集未做验证 Arthas常见使用姿势 官网 https://arth…

基于FPGA的DDS信号发生器

前言 此处仅为基于Vivado实现DDS信号发生器的仿真实现&#xff0c;Vivado的安装请看下面的文章&#xff0c;这里我只是安装了一个标准版本&#xff0c;只要能够仿真波形即可。 FPGA开发Vivado安装教程_vivado安装 csdn-CSDN博客 DDS原理 DDS技术是一种通过数字计算生成波形…

Pandas_DataFrame读写详解:案例解析(第24天)

系列文章目录 一、 读写文件数据 二、df查询数据操作 三、df增加列操作 四、df删除行列操作 五、df数据去重操作 六、df数据修改操作 提示&#xff1a;写完文章后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 系列文章目录前言一、 读写文…

Web 基础与 HTTP 协议

Web 基础与 HTTP 协议 一、Web 基础1.1域名和 DNS域名的概念Hosts 文件DNS&#xff08;Domain Name System 域名系统&#xff09;域名注册 1.2网页与 HTML网页概述HTML 概述网站和主页Web1.0 与 Web2.0 1.3静态网页与动态网页静态网页动态网页 二、HTTP 协议1.1HTTP 协议概述1.…

秋招——MySQL补充——MySQL是如何加行级锁

文章目录 引言正文什么SQL语句会加行级锁查询操作增加对应的行级锁事务的写法 update和delete修改操作也会增加行级锁 行级锁有哪些种类记录锁间隙锁Next-Key锁 MySQL是如何加行级锁&#xff1f;唯一索引等值查询查询记录是存在的查询记录是不存在的 唯一索引范围查找针对大于或…

《梦醒蝶飞:释放Excel函数与公式的力量》8.4 COUNTIF函数

8.4 COUNTIF函数 COUNTIF函数是Excel中常用的统计函数之一&#xff0c;用于统计指定条件下的单元格数量。通过COUNTIF函数&#xff0c;我们可以轻松地对数据进行条件筛选和统计分析。下面将从函数简介、语法、基本用法、注意事项、高级应用、实战练习和小节几个方面展开介绍。…

爬虫笔记19——代理IP的使用

访问网站时IP被阻止 有些网站会设置特定规则来限制用户的访问&#xff0c;例如频率限制、单一账户多次登录等。 网站为了保护自身安全和用户体验&#xff0c;会设置防御机制&#xff0c;将涉嫌恶意行为的IP地址加入黑名单并屏蔽访问。如果用户在使用网站时违反了这些规则&…

格式化选NTFS还是exFAT 格式化NTFS后Mac不能用怎么办 移动硬盘格式化ntfs和exfat的区别

面对硬盘、U盘或移动硬盘的格式化决策&#xff0c;NTFS与exFAT作为主流的文件系统&#xff0c;用户在选择时可以根据它们的不同特点来选择适用场景。下面我们来看看格式化选NTFS还是exFAT&#xff0c;格式化NTFS后Mac不能用怎么办的相关内容。 一、格式化选NTFS还是exFAT 在数…