蛋白质残基的距离计算以及径向基函数变换中的维度变化

embedded/2024/10/24 12:11:03/

1. 计算Ca距离的函数

def _dist(self, X, mask, eps=1E-6):mask_2D = torch.unsqueeze(mask,1) * torch.unsqueeze(mask,2)dX = torch.unsqueeze(X,1) - torch.unsqueeze(X,2)D = mask_2D * torch.sqrt(torch.sum(dX**2, 3) + eps)D_max, _ = torch.max(D, -1, keepdim=True)D_adjust = D + (1. - mask_2D) * D_maxsampled_top_k = self.top_kD_neighbors, E_idx = torch.topk(D_adjust, np.minimum(self.top_k, X.shape[1]), dim=-1, largest=False)return D_neighbors, E_idx

_dist 函数主要用于计算一批数据中每个残基的邻居距离以及相应的邻居索引。输入的 X 是每个残基的 Ca 原子坐标,维度为 (B, L, 3)mask 的维度为 (B, L),用于标记有效的残基。下面解释每个张量的维度变化过程:

输入

  • X 的维度是 (B, L, 3),其中:
    • B 是 batch size。
    • L 是残基的数量。
    • 3 是 Ca 原子的三维坐标。
  • mask 的维度是 (B, L),表示每个残基的有效性(0 或 1)。

计算步骤与维度变化

  1. mask_2D = torch.unsqueeze(mask, 1) * torch.unsqueeze(mask, 2)

    • mask 通过 unsqueeze 变成 (B, 1, L) 和 (B, L, 1) 两个张量。
    • 这两个张量相乘后得到 mask_2D,维度为 (B, L, L)

http://www.ppmy.cn/embedded/130070.html

相关文章

【贪心算法】(第十篇)

目录 加油站(medium) 题目解析 讲解算法原理 编写代码 单调递增的数字(medium) 题目解析 讲解算法原理 编写代码 加油站(medium) 题目解析 1.题目链接:. - 力扣(LeetCode&a…

XML Schema 复合空元素

XML Schema 复合空元素 XML Schema 是一种用于定义 XML 文档结构和内容的语言。在 XML Schema 中,元素可以被定义为简单类型或复杂类型。简单类型元素不能包含其他元素或属性,而复杂类型元素可以包含其他元素、属性或两者都有。复合空元素是一种特殊类型…

VScode远程服务器之远程 远程容器 进行开发(五)

VScode远程服务器之远程 远程容器 进行开发(五) 刚才只是在本地容器进行开发,很多时候,本地对我们来说就是8G内存,这显然是不够的,应该我们要用远程服务器的容器进行开发,这就是所谓的 远程远程…

【C++STL】list的模拟实现

✨ Blog’s 主页: 白乐天_ξ( ✿>◡❛) 🌈 个人Motto:他强任他强,清风拂山冈! 🔥 所属专栏:C深入学习笔记 💫 欢迎来到我的学习笔记! 一、三个类与成员函数接口 在list.…

新探索研究生英语读写教程pdf答案(基础级)

《新探索研究生英语读写教程》的设计和编写充分考虑国内研究生人才培养目标和研究生公共英语的教学需求, 教学内容符合研究生认知水平, 学术特征突出;教学设计紧密围绕学术阅读、学术写作和学术研究能力培养;教学资源立体多元&…

MongoDB 安装教程(MAC版本)

1.官网地址 https://www.mongodb.com/ 下载社区版,并且解压即可 2.安装位置 没有固定位置,将解压后的文件拷贝到任意位置,这里将以 /usr/locall为例。 3.配置环境变量 ## 1.打开环境配置文件 open .bash_profile ## 2.添加环境配置&#…

UWA Gears:Frame Capture模式 - 着色器查看器

UWA Gears 是UWA最新发布的无SDK性能分析工具。针对移动平台,提供了实时监测和截帧分析功能,帮助您精准定位性能热点,提升应用的整体表现。 在上周的文章中,我们详细介绍了网格查看器的功能,介绍如何通过网格数据优化…

一、Python基础语法(有C语言基础速成版)

在python中,变量是没有类型的,变量存储的数据是有类型的 可以把变量当做一个存放物品的盒子 一、字面量 字面量:在代码中,被写下来的 固定的值 python中常见的值的类型 二、注释 # 我是单行注释,一般要加个空格&a…