Mol2Image: Improved Conditional Flow Models for Molecule to Image Synthesis

news2024/10/2 8:31:02

 Mol2Image: 连接药物分子与细胞显微图像的条件流模型【2021CVPR】

Mol2Image: Improved Conditional Flow Models for Molecule to Image Synthesis

paper:Improved Conditional Flow Models for Molecule to Image Synthesis | Papers With Code

code:GitHub - uhlerlab/mol2image


2021年,来自麻省理工和多伦多大学的团队在2021 CVPR发表文章,利用流模型(Flow Models)合成药物分子作用于细胞后的显微图像,以此模拟药物分子的加入对细胞形态的影响。

以下是全文主要内容。

摘要

本文的目标是合成不同药物分子作用下的细胞显微镜图像,以期在药物开发中产生实际应用。基于最近图神经网络在学习分子嵌入和基于流的图像生成模型方面取得的成功,我们提出了Mol2Image:一个连接药物分子和细胞图像的流模型。为了生成不同分辨率的细胞特征并扩展到高分辨率的图像,我们开发了一个基于Haar小波图像金字塔的新型多尺度流架构。为了最大化生成的图像和药物分子干预之间的相互信息,我们设计了一个基于对比学习的训练策略。为了评估我们的模型,我们提出了一套新的生物图像生成指标,这些指标是稳健的、可解释的,并且与从业者相关。我们的方法学习了药物分子作用下的有意义的嵌入,它被转化为反映生物效应的图像表示。

图1. 第一列为作用的药物分子,第二列为生成的细胞显微图像,第三列为真实的图像

前言

近年来,细胞显微镜检测越来越受到关注,与传统的靶向筛选相比,图像中丰富的形态学数据为药物发现提供了更多信息。在这些发展的推动下,我们的目标是建立第一个细胞显微图像(不同药物作用下的)的生成模型,将药物分子作用的信息转化为内容丰富和可解释的图像表示。这样的系统在药物开发中具有许多实际应用——例如,它可以使从业者能够根据化合物对细胞的预测形态学效应来虚拟筛选化合物,从而更有效地探索广阔的化学空间并减少进行大量实验所需的资源。小分子可以进入细胞并改变其生物学功能和途径,导致细胞形状、结构、组织等发生变化,并且这些改变是在显微镜图像中可见的。与预测特定化学性质的传统模型相比,分子图像合成模型有可能对药物的形态学效应提供不一样的视角,从而获得广泛的特性,例如作用机制和基因靶点的发现。

在生物的需求之外,还存在一些技术上的问题。已有的生成式流模型要求输入图像与隐变量同维度,如果输入一张高清图片,由于维度过高(这里指像素数)导致其超出显存而无法进行模型训练。以最近常用的生成式流模型Glow为代表,由于显存的限制,最大只能生成256 x 256像素的图像。此外,现有的条件生成式流模型,未能将条件与生成结果很好地结合,即生成结果与条件的相关性不大。

因此,本文利用Haar小波图像金字塔变换,构建了多尺度的流模型,使得模型能够生成512 x 512像素的图像;还利用对比学习的方法,增强输入条件(即药物分子作用)对生成图像的影响;最后提出了几个关于细胞显微图像形态学的指标,对Mol2Image这类任务提供评价。

方法

数据集

本文选用的数据集是Bray等人于2016年发表在Nature Protocol的Cell Painting数据集(数据的获取如下图)。这个数据集包括284K张分别经过10.5K种药物分子作用的细胞图像。涉及五种细胞/信息类型:核DNA、内质网、核/质RNA、线粒体及细胞骨架。每张图像对应五个彩色通道。在数据集分配方面,本文选取与8.5K药物分子作用的219K张细胞显微图像作为训练集;剩下的2K个及对应图像作为测试集。

图2. Cell Painting数据集的获取

模型介绍

模型的整体框架如下:

图中的x代表512 x 512像素的细胞显微图像,其经过一次Haar小波变换[3]后能够分成一张256 x 256像素的均值图像x1和三张256 x 256像素差值图像x0~。对于四张256 x 256的图像,可利用Haar小波逆变换将它们无损变换为512 x 512的高清图像。一张256 x 256像素的均值图像x1和三张256 x 256像素差值图像x0~可分别由高清图像经过如下卷积核卷积而成:

图4. 用于Haar小波变换的卷积核

有了Haar小波变换后,就能够将一张512 x 512像素的图像转成四张256 x 256像素的图像了。这样就能够利用流模型(最大能够256 x 256像素图像)去间接生成512 x 512像素的图片了。

以下阐述模型的训练过程:已知有一张512 x 512像素的细胞显微图像x及对应的分子输入。对512 x 512像素的细胞显微图像x做一次Haar小波变换,得到一张256 x 256像素的均值图像x1和三张256 x 256像素差值图像x0~;对于每一张256 x 256像素差值图像x0~,经过一系列可逆流变换(流变换具体操作同Glow模型[4])得到对应维度的隐变量z;对得到的x1,做一次Haar小波变换,得到得到一张128 x 128像素的均值图像x2和三张128 x 128像素差值图像x1~;对于每一张128 x 128像素差值图像x1~,经过一系列可逆流变换得到对应维度的隐变量z1;如此循环,直至做到16 x 16像素的均值图像x6;对于16 x 16像素的均值图像x6,直接对其进行一系列可逆流变换得到对应维度的隐变量z6。此时,流模型对应的似然函数为:

此外,为了使得扰动分子和生成图像的相关性足够大,即需要图像的隐变量与做出的分子编码(图3中绿色部分)尽可能相关,本文通过对比学习来实现。对比学习的损失函数为:

其中的h(x,y)指的是图像的隐变量z与扰动分子的编码g(y)的余弦相似度。

训练阶段的最终损失函数包括了负的似然函数和上述对比损失:

以下阐述细胞显微图像的生成过程:已知给定的扰动分子作为输入。对于给定的扰动分子,利用图神经网络做出分子的编码g(y);将分子编码作为条件,做出16 x 16像素图象x6对应隐变量z6的均值和方差:μ6=MLP(g(y));Σ6=MLP(g(y)),其中MLP()为简单的神经网络;得到均值方差后,z6可从此正态分布中进行采样;将z6经过逆的流变换可得到16 x 16像素图象x6;对于32 x 32像素图象x5对应的插值图像x5~(16 x 16像素),对应的隐变量的均值和方差μ5=MLP(x6,g(y));Σ5=MLP(x5,g(y))可以求得;z5从此正态分布采样得到,经过逆的流变换可得到16 x 16像素的差值图像x5~;由差值图像x5~和16 x 16像素图像x6即可通过Haar小波变换的逆变换得到32 x 32像素图象x5;如此循环,最终得到512 x 512像素图像x。

实验

将Mol2Image模型训练好之后,与其他及基准模型进行比较:

图5. Mol2Image模型与基准模型、真实图像的比较

对于此细胞显微图像生成任务,本文提出了几个细胞特征形态学指标:1、覆盖度(Coverage):被细胞占据的总的图像面积;2、细胞/核数量(Cell/Nuclei Count):图像中总的细胞/核的数量;3、细胞尺寸(Cell Size):图像中平均的细胞尺寸;4、Zernike Shape:用Zernike多项式描述细胞形状的30个特征;5、表达水平(Expression Level):一组5个特征,用于测量图像中不同细胞隔室的信号水平。以上指标都是越大越优,在下图表中,由于空间限制,对Zernike Shape和表达水平都取了均值。

此外,本文还针对分子和细胞图像的匹配程度,预训练了分类器。如果生成图像和扰动分子输入分类器的准确率与真实图像和扰动分子输入分类器的准确率相近时,表明在同一个扰动分子输入时,生成的图像和真实的细胞显微图像足够相似。此指标在下图标中为Correspondence Accuracy。为了衡量真实图像和生成图像的数据相似度,本文还引入了Sliced Wasserstein Distance (SWD)。对比数据如下图表:

图6. 各模型与真值的比较结果

结论

本文为从药物分子到图像合成开发了一种新的基于多尺度流的架构和训练策略,并展示了此方法在为生物细胞图像生成量身定制的新评估指标上的好处。我们的工作代表了基于图像的化学物质虚拟筛选的第一步,并为研究分子结构和细胞形态中的信息奠定了基础。未来工作的一个有希望的途径是整合辅助信息(例如,已知的化学性质或药物剂量),对分子嵌入空间施加限制并提高对以前看不见的分子的泛化。

CVPR|Mol2Image:连接药物分子与细胞显微图像的条件流模型_腾讯新闻

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

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

相关文章

谷粒商城之高级篇(3)

2 商城业务 2.7 订单服务 2.7.22 创建业务交换机&队列 这里承接 知识补充篇 6 RabbitMQ 订单分布式主体逻辑 订单超时未支付触发订单过期状态修改与库存解锁 创建订单时消息会被发送至队列order.delay.queue,经过TTL的时间后消息会变成死信以order.release…

如何配置 SLO

前言 无论是对外提供 IaaS PaaS SaaS 的云公司,还是提供信息技术服务的乙方公司,亦或是金融 制造等各行各业的数据中心、运维部门,我们的一个非常重要的合同承诺或考核评估指标就是:SLA(即:Service-Level …

蓝桥杯算法训练:FBI树(c++实现+图文详解)

文章目录FBI树C代码示例FBI树 题目要求 我们可以把由“0”和“1”组成的字符串分为三类:全“0”串称为B串,全“1”串称为I串,既含“0”又含“1”的串则称为F串。 FBI树是一种二叉树,它的结点类型也包括F结点,B结点和I…

某公司高管疾呼:底层程序员离职率太高,有人入职不到半年就走!建议把恶意离职加入征信,让年轻人对公司有起码的尊重!...

许多人入职后才发现公司有各种难以忍受的问题,入职时间很短就被迫离职,这本是无可奈何的事,但一位公司高管却对此非常愤怒,指出“目前基层程序员离职率太高,有人入职不到半年就走了”,还建议把恶意离职加入…

MVC开发模式

1、JSP演变历史 1、早期只有servlet,只能使用response输出标签数据,非常麻烦 2、后来又有了jsp,简化了Servlet的开发,但如果过度使用jsp,在jsp中即写大量的Java代码,又有HTML,会造成难以维护&am…

【红黑树】

红黑树红黑树的概念红黑树的性质红黑树结点的定义红黑树的插入红黑树的验证红黑树的查找红黑树与AVL树的比较红黑树的概念 红黑树是一种二叉搜索树,但在每个结点上增加了一个存储位用于表示结点的颜色,这个颜色可以是红色的,也可以是黑色的&a…

主存储器扩展技术(计组)

用已有的存储器芯片构造一个需要的存储空间。 位扩展–扩展字长 构成内存的存储器芯片的字长小于内存单元要求的字长时–需要进行位扩展。实例: 位扩展的连线特点: 将每片的地址线、控制线并联,数据线分别引出。 效果: 存…

JavaSE笔记——函数式编程(流)

文章目录前言一、从外部迭代到内部迭代二、实现机制三、常用的流操作1.collect(toList())2.map3.filter4.flatMap5.max和min6.reduce四、多次调用流操作五、高阶函数总结前言 流是一系列与特定存储机制无关的元素——实际上,流并没有 “存储” 之说。利用流&#x…

如何用python打造新年氛围组?【内含html源码赠送】

嗨害大家好鸭!我是小熊猫~ 离正式过新年还有24天~ 这次给大家整一个花活~ 就是每时每秒都提醒离新年还有多久 我这里还有一些中国结的python代码, 大家可以文末名片自行领取鸭~ 倒计时 效果展示 有什么python相关报错解答自己不会的、或者源码资料/…

操作系统——计算机系统概述

操作系统——计算机系统概述一、操作系统的概念1、定义2、功能和目标二 、操作系统特征1、并发性2、共享性3、虚拟性4、异步性三、操作系统的发展1、手工操作阶段2、批处理阶段——单道批处理系统2、批处理阶段——多道批处理系统3、实时操作系统四、运行机制和体系结构1、运行…

EnvironmentAware 接口的使用

文章目录1、EnvironmentAware 接口作用2、实际应用3、代码演示1)基本配置准备2)增加属性配置文件 application.properties3)增加配置类实现 EnvironmentAware 接口4、编写 main 方法的类 SpringTest.java5、运行 main 方法查看结果1、Environ…

Java之线程状态

目录一、简介二、线程状态1、新建状态(New)2、运行状态(Runnable)3、阻塞状态(Blocked/Waiting/TimeWaiting)(1)被阻塞状态(Blocked)(2&#xff0…

新新新~Revit插件【建模助手】7大模块介绍

年底了,大家是不是都在喝茶、聊天、等跨年;而我,建模助手,则在——总结、规划、PPT。 不盘不知道,一盘可吓了我一大跳!没想到咱们在过去一年居然建设了这么多丰功伟绩: 说点标志性的&#xff…

到底什么是电子管(真空管)?

1883年,著名发明家托马斯爱迪生(Thomas Edison)在一次实验中,观察到一种奇怪现象。当时,他正在进行灯丝(碳丝)的寿命测试。在灯丝旁边,他放置了一根铜丝,但铜丝并没有接在…

WebRTC系列-视频VideoBroadcaster与视频流

文章目录 1. VideoBroadcaster 添加sink2. VideoBroadcaster 视频数据分发OnFrame方法在前面的文章视频的采集流程中,视频数据采集完成后到编码器之前,如果需要渲染处理那里需要两路视频,WebRTC是实现了一个视频分发器VideoBroadcaster;用来分发采集的视频帧; 这篇文章主要…

Nginx网页配置工具nginxWebUI

今天应该是我们公司 2022 年最后一天上班了,给自己做个简单的年度总结吧: 1月:做核酸 2月:做核酸 3月:做核酸,半个月左右居家办公 4月:做核酸,静态管理 5月:做核酸&…

贪吃蛇基础·框架版(简单)开头有原码

更新不易,麻烦多多点赞,欢迎你的提问,感谢你的转发, 最后的最后,关注我,关注我,关注我,你会看到更多有趣的博客哦!!! 喵喵喵,你对我…

XStream < 1.4.20 栈缓冲区溢出漏洞

漏洞描述 XStream 是一个轻量级的、简单易用的开源Java类库,它主要用于将对象序列化成XML(JSON)或反序列化为对象。 在1.4.20之前的版本中存在栈缓冲区溢出漏洞,从而导致通过操纵已处理的输入流来造成拒绝服务。 在使用集合和映…

一文掌握FastDeploy Serving服务化部署(打造线上证件照制作系统,含完整代码)

目录一、概述1.1 服务化部署1.2 FastDeploy简介二、搭建线上证件照制作系统2.1 准备环境2.1.1 安装Docker2.1.2 安装NVIDIA Container Toolkit2.1.3 获取FastDeploy Serving镜像2.2 部署模型2.2.1 准备模型仓库2.2.2 编写配置文件config.pbtxt2.2.3 服务启动2.3.4 测试访问2.3 …

盒子模型、CSS 中选择器优先级以及权重计算、px、em 和 rem 的区别

CSS 的盒模型? 盒子模型(Box Modle)可以用来对元素进行布局,包括内边距,边框,外边距,和实际 内容这几个部分 盒子模型分为两种 第一种是 W3C 标准的盒子模型(标准盒模型)…