nature communications论文 解读

server/2024/11/26 0:07:10/

题目《Transfer learning with graph neural networks for improved molecular property prediction in the multi-fidelity setting》

这篇文章主要讨论了如何在多保真数据环境(multi-fidelity setting)下,利用图神经网络(GNNs)结合迁移学习技术,改进分子性质预测的效果。

研究背景:

在分子性质预测中,不同来源的数据通常具有不同的保真度

  • 低保真数据:便宜、容易获取,但预测精度较低(如粗粒度模拟数据)。
  • 高保真数据:更准确,但代价昂贵(如实验测量或高精度量子化学计算)

  • 迁移学习的基本方法

  • 迁移学习(Transfer Learning)是解决多保真问题的一种策略,分为两个步骤:

  • 预训练(Pre-training)

    • 在低保真数据集 DSD_SDS​ 上训练模型,学习低保真领域的特征。
    • 结果是一个在低保真任务上的预测器 fSf_SfS​。
  • 微调(Fine-tuning)

    • 将预训练模型的部分权重迁移到高保真任务的模型 fTf_TfT​,并在高保真数据集 DTD_TDT​ 上进行微调。
    • 通常,模型的一些层会被冻结(如图卷积层),只训练其余部分,以避免过拟合并减少计算复杂度。

 

图神经网络中的实现

在 GNN 框架下,模型可以分为两部分:

  • 图卷积层(GCN layers):提取图结构的特征。
  • 读出层(Readout layers):将图卷积层的输出转换为最终预测。
冻结策略:

GNN 的迁移学习可以根据冻结部分的不同分为以下三种方法:

  1. 冻结图卷积层,训练读出层:只更新输出部分,适合低保真和高保真领域特征相似的场景。
  2. 训练图卷积层,冻结读出层:对图结构进行进一步调整。
  3. 全部可训练:不冻结任何层,适合当领域间差异较大时。

文章中的实验结果表明,冻结图卷积层、训练读出层的效果最好。

 方法:

迁移学习

带自适应读出层的图神经网络(GNN)监督式变分图自动编码器(VGAE)

 

基于图神经网络的多保真度数据迁移学习结构图

图神经网络中的标准读出函数(如求和、求平均和求最大值)没有任何参数,因此不适合迁移学习任务。本文提出了一种新的神经网络架构读出函数,它能够将学习到的节点表示聚合为图嵌入。在微调阶段,固定图神经网络中负责学习节点表示的部分,并在小样本的下游任务中微调读出层。本文采用了集合Transformer读出函数,保留了标准读出函数的排列不变性特性。因为图可以看作节点的集合,本文利用这种架构作为图神经网络的读出函数。

在该Transformer中,编码器由多个经典的多头注意力块组成,但没有位置编码。解码器组件由投影的多头注意力块组成,经过多个自注意力模块链和线性投影块进行进一步处理。与典型的基于集合的神经网络结构只能单独处理单个元素不同,本文提出的自适应读出函数能够建模由邻域聚合方案生成的所有节点表示之间的相互作用。该架构的一个特点是,图表示的维度可以从节点输出的维度和聚合方案中分离出来。

变分图自编码器(VGAE)

变分图自编码器(VGAE)由概率编码器和概率解码器组成。与在向量值输入上操作的标准变分自编码器(VAE)架构不同,VGAE通过图卷积层的叠加得到编码器部分,学习表示隐空间编码高斯分布的参数矩阵μ和σ。该模型通常假设图中存在自环,即邻接矩阵的对角线由1组成。解码器通过sigmoid函数传递隐变量之间的内积,从而重构邻接矩阵中的元素。通过优化证据下界(ELBO)损失函数来训练VGAE,该损失函数由表示学习的重建误差和变分分布q(⋅)与先验p(⋅)之间的Kullback-Leibler散度(KL散度)正则化项组成。由于图的邻接矩阵通常是稀疏的(即Aij=0的元素远多于Aij=1的元素),因此在训练过程中通常对Aij=0的样本进行采样,而不是取所有的负样本。

作者通过在VGAE的表示空间中加入前馈组件,将标签信息引入VGAE的训练优化过程,从而实现了有监督的变分图自编码器。实际上,从传统的VAE过渡到图上的VGAE,再到建模分子结构的VGAE并非简单的过程,主要有以下两个原因:一是原始VGAE只重建图的连通性信息,而不重建节点(原子)特征。这与传统的VAE不同,后者的潜在表示直接针对实际输入数据进行优化。二是对于分子级别的预测任务和潜在空间表示,VGAE的读出功能至关重要。标准读出函数会导致类似完全无监督训练的无信息表示,在迁移学习任务中表现较差。因此,本文提出的监督变分图自编码器在图表示学习方面是一个重要进步,尤其适用于建模具有挑战性的分子任务。


http://www.ppmy.cn/server/144934.html

相关文章

HarmonyOS(57) UI性能优化

性能优化是APP开发绕不过的话题,那么在HarmonyOS开发过程中怎么进行性能优化呢?今天就来总结下相关知识点。 UI性能优化 1、避免在组件的生命周期内执行高耗时操作2、合理使用ResourceManager3、优先使用Builder方法代替自定义组件4、参考资料 1、避免在…

学习路之phpstudy--安装mysql5.7后在my.ini文件中无法修改sql_mode

windows环境下使用phpstudy安装mysql5.7后需要修改mysql中的sql_mode配置,但是在phpstudy中打开mysql配置文件my.ini后, 通过查找找不到sql_mode或sql-mode, 此时无法在my.ini文件中直接进行修改,可以使用mysql命令进行修改&#…

单片机电路基本知识

单片机电路基本知识 MCU(C51) 概念:应用实例家用电子,汽车电子,嵌入式系统,低成本,低功耗,小型化,通常使用c语言或者汇编语言,用于家用电器控制,智能家居,汽…

移动端自动化环境搭建_Android

adb的安装与使用 adb安装adb环境变量adb使用adb常用命令adb简介adb作用 adb安装 选择对应系统进入下载界面,选中版本下载即可: Windows版本:Windows Mac版本:Mac Linux版本:Linux 安装完成后,进行压缩&…

MyBatis的resultType和resultMap区别

resultType和resultMap是在使用 MyBatis 框架时,映射查询结果到对象时使用的两个不同的配置元素。它们的主要区别在于它们如何映射 SQL 查询的结果集到 Java 对象。 1. resultType resultType是一个简单的类型别名或者是一个完全限定的类名。 它用于将查询结果直接…

SpringBoot集成多个rabbitmq

1、pom文件 <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-amqp --> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId><versio…

【unity小技巧】unity 什么是反射?反射的作用?反射的使用场景?反射的缺点?常用的反射操作?反射常见示例

文章目录 什么是反射反射的作用?反射的使用场景示例 反射的缺点常用的反射操作常见反射方法总结 反射常见示例示例 1: 动态调用方法示例 2: 自动化属性赋值示例 3: 动态创建对象示例 4: 序列化与反序列化示例 5: 自动化测试框架 完结 什么是反射 在 Unity 中&#xff0c;反射…

redis的map底层数据结构 分别什么时候使用哈希表(Hash Table)和压缩列表(ZipList)

在Redis中&#xff0c;Hash数据类型的底层数据结构可以是压缩列表&#xff08;ZipList&#xff09;或者哈希表&#xff08;HashTable&#xff09;。这两种结构的使用取决于特定的条件&#xff1a; 1. **使用ZipList的条件**&#xff1a; - 当Hash中的数据项&#xff08;即f…