论文:用GNN(化合物)和CNN(蛋白)进行CPI预测

2023-10-29 19:41

本文主要是介绍论文:用GNN(化合物)和CNN(蛋白)进行CPI预测,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

用GNN(化合物)和CNN(蛋白)进行CPI预测

github地址
题目:Compound-protein interaction (CPI) prediction using a GNN for compounds and a CNN for proteins
在这里插入图片描述
Furthermore, by using the obtained weights, the neural attention mechanism provides clear visualizations, which makes models easier to analyze (Fig. 9) even when modeling is performed using real-valued vector representations rather than discrete features.

总的来说,这篇文章使用的分子特征有:

1,每个原子的编号,每个原子是否有芳香性,
在这里插入图片描述
2,每个原子周围有几个几号原子,对应的分别是什么健类型
在这里插入图片描述
3,使用了分子指纹,Weisfeiler-Lehman(WL)算法算出来的,根据半径进行卷积,具体的原理我也不是特别清楚
在这里插入图片描述
4,使用了邻接矩阵
在这里插入图片描述
5,

示例分子:
在这里插入图片描述

遇到的知识点学习

1,from collections import defaultdict
Python defaultdict() 的理解
在这里插入图片描述
在这里插入图片描述
defaultdict lambda 用法
在这里插入图片描述

2,什么是Weisfeiler-Lehman(WL)算法和WL Test?
本文中用到了,但是我不清楚其具体的原理,目前先理解为进行了一下图卷积

3,这里有for循环的高阶用法

    words = [word_dict[sequence[i:i+ngram]]for i in range(len(sequence)-ngram+1)]
word_dict = defaultdict(lambda: len(word_dict))def split_sequence(sequence, ngram):sequence = '-' + sequence + '='words = [word_dict[sequence[i:i+ngram]]for i in range(len(sequence)-ngram+1)]return np.array(words)split_sequence('ab=aaabb=ababba=', 2)
output>>> array([0, 1, 2, 3, 4, 4, 1, 5, 2, 3, 1, 6, 1, 5, 6, 7, 8])

4,sys.argv[] 用法
这个实在是看不懂。。。
5,python 中 map函数的用法(超详细)
6, python enumerate用法总结
对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值
7,strip()函数使用方法
1.默认用法:去除空格
str.strip() : 去除字符串两边的空格 str.lstrip() : 去除字符串左边的空格 str.rstrip() : 去除字符串右边的空格
注:此处的空格包含’\n’, ‘\r’, ‘\t’, ’ ’
2、去除指定字符
str.strip(‘do’) :去除字符串两端指定的字符 str.lstrip(‘do’) :用于去除左边指定的字符 str.rstrip(‘do’) :用于去除右边指定的字符
8,复习pytorch构架
在这里插入图片描述

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

在这里插入图片描述
9,zip 函数
10,pytorch中squeeze()和unsqueeze()函数介绍
11,nn.moduleList 和Sequential由来、用法和实例 —— 写网络模型
12,torch.matmul()用法介绍

这篇关于论文:用GNN(化合物)和CNN(蛋白)进行CPI预测的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/302936

相关文章

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

Python使用date模块进行日期处理的终极指南

《Python使用date模块进行日期处理的终极指南》在处理与时间相关的数据时,Python的date模块是开发者最趁手的工具之一,本文将用通俗的语言,结合真实案例,带您掌握date模块的六大核心功能... 目录引言一、date模块的核心功能1.1 日期表示1.2 日期计算1.3 日期比较二、六大常用方法详

Python使用DrissionPage中ChromiumPage进行自动化网页操作

《Python使用DrissionPage中ChromiumPage进行自动化网页操作》DrissionPage作为一款轻量级且功能强大的浏览器自动化库,为开发者提供了丰富的功能支持,本文将使用Dri... 目录前言一、ChromiumPage基础操作1.初始化Drission 和 ChromiumPage

Jackson库进行JSON 序列化时遇到了无限递归(Infinite Recursion)的问题及解决方案

《Jackson库进行JSON序列化时遇到了无限递归(InfiniteRecursion)的问题及解决方案》使用Jackson库进行JSON序列化时遇到了无限递归(InfiniteRecursi... 目录解决方案‌1. 使用 @jsonIgnore 忽略一个方向的引用2. 使用 @JsonManagedR

使用Folium在Python中进行地图可视化的操作指南

《使用Folium在Python中进行地图可视化的操作指南》在数据分析和可视化领域,地图可视化是一项非常重要的技能,它能够帮助我们更直观地理解和展示地理空间数据,Folium是一个基于Python的地... 目录引言一、Folium简介与安装1. Folium简介2. 安装Folium二、基础使用1. 创建

Nginx如何进行流量按比例转发

《Nginx如何进行流量按比例转发》Nginx可以借助split_clients指令或通过weight参数以及Lua脚本实现流量按比例转发,下面小编就为大家介绍一下两种方式具体的操作步骤吧... 目录方式一:借助split_clients指令1. 配置split_clients2. 配置后端服务器组3. 配

Python使用DeepSeek进行联网搜索功能详解

《Python使用DeepSeek进行联网搜索功能详解》Python作为一种非常流行的编程语言,结合DeepSeek这一高性能的深度学习工具包,可以方便地处理各种深度学习任务,本文将介绍一下如何使用P... 目录一、环境准备与依赖安装二、DeepSeek简介三、联网搜索与数据集准备四、实践示例:图像分类1.

Go使用pprof进行CPU,内存和阻塞情况分析

《Go使用pprof进行CPU,内存和阻塞情况分析》Go语言提供了强大的pprof工具,用于分析CPU、内存、Goroutine阻塞等性能问题,帮助开发者优化程序,提高运行效率,下面我们就来深入了解下... 目录1. pprof 介绍2. 快速上手:启用 pprof3. CPU Profiling:分析 C

Java中有什么工具可以进行代码反编译详解

《Java中有什么工具可以进行代码反编译详解》:本文主要介绍Java中有什么工具可以进行代码反编译的相关资,料,包括JD-GUI、CFR、Procyon、Fernflower、Javap、Byte... 目录1.JD-GUI2.CFR3.Procyon Decompiler4.Fernflower5.Jav

Python进行PDF文件拆分的示例详解

《Python进行PDF文件拆分的示例详解》在日常生活中,我们常常会遇到大型的PDF文件,难以发送,将PDF拆分成多个小文件是一个实用的解决方案,下面我们就来看看如何使用Python实现PDF文件拆分... 目录使用工具将PDF按页数拆分将PDF的每一页拆分为单独的文件将PDF按指定页数拆分根据页码范围拆分