PeptidesFunctionalDataset(helpers.dataset_classes文件中的lrgb.py)

任务类型:多任务二分类任务
用途:`PeptidesFunctionalDataset` 处理肽的分子图,并为肽的功能类别进行10种多任务二分类,任务目标是根据肽的分子图预测它们是否属于特定的功能类别(如抗癌、抗病毒等)。

from helpers.dataset_classes.lrgb import PeptidesFunctionalDataset

'''
Adapted from https://github.com/vijaydwivedi75/lrgb.git
https://github.com/HySonLab/Multires-Graph-Transformer.git
https://github.com/hamed1375/Exphormer.git
'''
import hashlib
import os.path as osp
import pickle
import shutilimport pandas as pd
import torch
from ogb.utils import smiles2graph
from ogb.utils.torch_util import replace_numpy_with_torchtensor
from ogb.utils.url import decide_download
from torch_geometric.data import (InMemoryDataset, Data, download_url,extract_zip)
from tqdm import tqdm
import osclass PeptidesFunctionalDataset(InMemoryDataset):def __init__(self, root='data', smiles2graph=smiles2graph,transform=None, pre_transform=None):"""PyG dataset of 15,535 peptides represented as their molecular graph(SMILES) with 10-way multi-task binary classification of theirfunctional classes.The goal is use the molecular representation of peptides insteadof amino acid sequence representation ('peptide_seq' field in the file,provided for possible baseline benchmarking but not used here) to testGNNs' representation capability.The 10 classes represent the following functional classes (in order):['antifungal', 'cell_cell_communication', 'anticancer','drug_delivery_vehicle', 'antimicrobial', 'antiviral','antihypertensive', 'antibacterial', 'antiparasitic', 'toxic']Args:root (string): Root directory where the dataset should be saved.smiles2graph (callable): A callable function that converts a SMILESstring into a graph object. We use the OGB featurization.* The default smiles2graph requires rdkit to be installed *"""self.original_root = rootself.smiles2graph = smiles2graphself.folder = osp.join(root, 'peptides-functional')self.url = 'https://www.dropbox.com/s/ol2v01usvaxbsr8/peptide_multi_class_dataset.csv.gz?dl=1'self.version = '701eb743e899f4d793f0e13c8fa5a1b4'  # MD5 hash of the intended dataset fileself.url_stratified_split = 'https://www.dropbox.com/s/j4zcnx2eipuo0xz/splits_random_stratified_peptide.pickle?dl=1'self.md5sum_stratified_split = '5a0114bdadc80b94fc7ae974f13ef061'# Check version and update if necessary.release_tag = osp.join(self.folder, self.version)if osp.isdir(self.folder) and (not osp.exists(release_tag)):print(f"{self.__class__.__name__} has been updated.")if input("Will you update the dataset now? (y/N)\n").lower() == 'y':shutil.rmtree(self.folder)super().__init__(self.folder, transform, pre_transform)self.data, self.slices = torch.load(self.processed_paths[0])@propertydef raw_file_names(self):return 'peptide_multi_class_dataset.csv.gz'@propertydef processed_file_names(self):return 'geometric_data_processed.pt'def _md5sum(self, path):hash_md5 = hashlib.md5()with open(path, 'rb') as f:buffer = f.read()hash_md5.update(buffer)return hash_md5.hexdigest()def download(self):if decide_download(self.url):path = download_url(self.url, self.raw_dir)# Save to disk the MD5 hash of the downloaded file.hash = self._md5sum(path)if hash != self.version:

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

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

相关文章

datawhale大模型bot应用开发--task4:图片流

一、图像流是专门用于图像处理的一个流程工具 在图像流中,你可以通过可视化的操作方式灵活添加各种用于图像处理的节点,构建一个图像处理流程来最终生成一个图像。图像流发布后,支持在 Bot 或工作流中使用。 二、图像流的能力范围 类型 图…

【Linux】进程--详细解释进程

目录 1、冯诺依曼体系结构 2、操作系统 3、进程 4、环境变量 5、进程地址空间 6、页表(简单初步理解) 1、冯诺依曼体系结构 a、存储器指的是:内存 外设: b、输入设备:鼠标,键盘,摄像头&am…

宠物用品在线交易:SpringBoot开发实战

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统,它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等,非常…

Python入门(一)

心血来潮就干:python课程走起 和你一起学习 Python 语言的基础语法。你将会系统性地学习 Python 基础知识; 直接开始吧~ 本篇文章将了解编程的几个基础概念。并且,你将学到如何在电脑屏幕上输出数字、文字,并敲出你…

ChatGLM4重磅开源! 连忙实操测试一波,效果惊艳,真的好用!附带最新相关资料和喂饭级实操推理教程!!

本文目录 GLM4重磅开源啦 GLM4系列版本介绍 GLM4大模型能力测评结果 经典测评任务结果 长文本能力 工具调用能力 多模态能力 手把手实操GLM-4-9B-Chat推理预测&&效果展示 GLM4运行硬件和环境要求 配置对应的库环境 使用peftbitsandbytes 进行4位量化推理 进…

Java基础12-特殊文件和日志技术

十二、特殊文件和日志技术 1、特殊文件 properties:用来存储键值对数据。 xml:用来存储有关系的数据。 1.1 properties文件 特点:存储键值对,键不能重复,文件后缀一般是.properties结尾的。 properties:是…

Docker设置日志滚动

问题描述 Docker 容器中的进程会将打印到控制台(console)的日志保存到容器的目录下,默认的 Docker 配置不带有日志的回滚。会在自己的容器目录下往同一个日志文件中不停写入,最后会导致磁盘空间占满的问题。 解决方案 方案一:全局范围内修…

利用Docker搭建一套Mycat2+MySQL8一主一从、读写分离的最简单集群(保姆教程)

文章目录 1、Mycat介绍1.1、mycat简介1.2、mycat重要概念1.3、Mycat1.x与Mycat2功能对比1.2、主从复制原理 2、前提准备3、集群规划4、安装和配置mysql主从复制4.1、master节点安装mysql8容器4.2、slave节点安装mysql8容器4.2、配置主从复制4.3、测试主从复制配置 5、安装mycat…

微信小程序canvas 生成二维码图片,画图片,生成图片,将两个canvas结合并保存图片

**需求实现步骤如下 先定义两个canvas一个canvas myQrcode画二维码的图片另一个canvas mycanvas画一个背景图,并把二维码画到这个canvas上,mycanvas这个canvas生成一张图片,返回图片的临时路径最后保存图片到手机** 首先wxml,新版微信小程序…

【SpringCloud】04-Gateway网关登录校验

1. 网关请求处理流程 2. 网关过滤器 3. 网关实现登录校验 Component // 参数构造器 RequiredArgsConstructor public class AuthGlobalFilter implements GlobalFilter, Ordered {private final AuthProperties authProperties;private final JwtTool jwtTool;private final A…

数据结构——笛卡尔树详解

数据结构——笛卡尔树 1,笛卡尔树的介绍2,笛卡尔树的构建3,笛卡尔树的代码实现 1,笛卡尔树的介绍 前面我们讲过《堆》和《二叉搜索树》,能不能把这两种数据结构的特性结合起来构造一棵新的树呢?当然是可以…

Qt-界面优化控件样式设置(72)

目录 描述 QPushButton 自定义复选框 输入框 列表框 菜单 实现登入界面 设置背景图 改变样式表 描述 这里介绍一些控件的样式设置 QPushButton 相关属性 font-size设置⽂字⼤⼩.border-radius设置圆⻆矩形. 数值设置的越⼤, ⻆就 "越圆".background-colo…

离散数学 第二讲 特殊集合和集合间关系 笔记 [电子科大]王丽杰

1.2 特殊集合与集合间关系 空集 不含任何元素的集合叫做空集(empty set),记作∅. 空集可以符号化为 ∅ { x ∣ x ≠ x } ∅ \{ x|x ≠ x\} ∅{x∣xx} . 空集是绝对唯一的。 全集 针对一个具体范围,我们考虑的所有对象的集合叫做全集(universal se…

vulnhub-Kioptrix4靶机的测试报告

目录 一、测试环境 1、系统环境 2、使用工具/软件 二、测试目的 三、操作过程 1、信息搜集 2、Getshell 3、提权 udf提权 四、结论 一、测试环境 1、系统环境 渗透机:kali2021.1(192.168.202.134) 靶 机:Linux 2.6.24 2、使用工具/软件 …

Oracle分布式数据库的安装遇到的问题【已解决】:找不到scott用户、出现【INS-30014】错误、oracle登录适配器错误

Oracle分布式数据库的安装遇到的问题【已解决】:找不到scott用户、出现【INS-30014】错误、oracle登录适配器错误 安装oracle19c软件利用Database Configuration Assistant,创建orcl数据库第一步:在开始菜单找到Oracle,点击“Data…

SpringColoud GateWay 核心组件

优质博文:IT-BLOG-CN 【1】Route路由: Gateway的基本构建模块,它由ID、目标URL、断言集合和过滤器集合组成。如果聚合断言结果为真,则匹配到该路由。 Route路由-动态路由实现原理: 配置变化Apollo 服务地址实例变化…

Axure使用echarts详细教程

本次使用的axure版本为rp9,下面是效果图。 接下来是详细步骤 【步骤1】在axure上拖一个矩形进来,命名为myChart(这个根据实际情况来,和后面的代码对应就好) 【步骤2】 点击交互->选择加载时->选择打开链接->链接外部地址 点击fx这个符号 【步骤3】在弹…

前端学习笔记(1.0)

在开发项目时,需要使用符号来代替书写./和../等麻烦的路径书写,所以就遇到了下面的问题。 输入没有路径提示 我们都知道,设置是通过配置vite等脚手架工具的配置文件,设置别名即可。 但是如果需要在使用的时候需要出现路径提示&…

虚拟滚动列表如何实现?

highlight: a11y-dark 虚拟滚动列表&#xff0c;虚拟滚动的关键在于只渲染当前视口内可见的数据项&#xff0c;而不是一次性渲染所有数据项。这可以显著提高性能&#xff0c;尤其是在处理大量数据时。 以下是一个完整的虚拟滚动列表的示例代码&#xff1a; <!DOCTYPE htm…

React高级Hook

useReducer useReducer 是 React 提供的一个 Hook&#xff0c;用于在函数组件中使用 reducer 函数来管理组件的 state。它类似于 Redux 中的 reducer&#xff0c;但仅用于组件内部的状态管理。useReducer 可以使复杂的状态逻辑更加清晰和可维护。 基本用法 useReducer 接收…