化学语言模型在创新型药物设计中的挑战与机遇

化学语言模型在创新型药物设计中的挑战与机遇

研究背景

化学生物学领域借用了语言学的类比,将基因密码转录和翻译为蛋白质,细胞通过化学信号进行相互沟通。分子可以被看作构成"化学语言"的基本单元(见图1a)。类似于人类语言,化学语言具有特定的语法结构,有限的元素(例如原子,类似于语言中的词汇)只能以特定的方式相互关联,形成"化学上合理"的分子结构。此外,分子还具有语义属性,根据存在的元素和连接方式,不同的性质(如物理化学和生物学性质)呈现出多样性(见图1b)。

img

图1 化学语言

在药物发现中,深度学习方法中的化学语言模型(CLMs)在AI驱动的全新设计中扮演重要角色。CLMs借鉴和调整了为自然语言处理开发的算法,以学习化学语言。使用字符串表示法,如简化分子线性输入规范(SMILES)字符串(图2),CLMs能够学习和生成化学分子。在过去几年中,CLMs在设计经过实验证实的生物活性分子方面取得了成功,并且越来越多的证据表明它们具有探索未知生物化学领域的能力。

本综述将重点关注基于深度学习的CLMs在全新分子设计方面的应用。在讨论了CLM驱动的全新设计的最新进展之后,综述将描述药物发现领域目前存在的差距以及未来的机会。

img

图2 用于从头药物设计的化学语言模型 (CLM) 概述

分子字符串表示法:优势与局限性

分子字符串表示法最初是为了数据库存储和分子识别而开发的,但由于深度学习算法在序列处理方面的应用,目前正在经历一次复兴。不同的表示方法在不同应用场景下的性能有所差异,但SMILES仍然是最广泛使用的一种表示方法。

1)简化分子线性输入规范(SMILES)是一种将分子图(不包含氢)转换为字符串的方法。在SMILES中,原子使用其字母表示,符号表示键和分支,数字表示环的开合。需要注意的是,SMILES字符串并不是一一对应的,可以从任何非氢原子开始,在选择的方向上遍历分子图来获取它们。为了确保获得一种一一对应的SMILES字符串,需要进行规范化算法,以确保不同的表达方式被映射为相同的规范化SMILES。在化学语言模型的训练中,多项研究表明,人工增加使用同一分子的多个SMILES字符串(称为"数据增强")对于增加样本数量和提高模型性能具有益处。

2)DeepSMILES是一种改进的SMILES方法,旨在解决传统SMILES中的一些语法问题,如不平衡括号和环闭合对导致的无效语法。DeepSMILES通过引入特殊的字符和规则来处理这些问题,使生成的字符串具有有效的语法结构。DeepSMILES的设计目标是提供一个更一致和可解析的分子表示方法,以便在机器学习和深度学习任务中应用。它已成功用于许多应用,包括药物-靶蛋白结合亲和力的预测。然而,与传统的SMILES字符串相比,DeepSMILES的语法更为复杂。这种复杂性可能会对分子的生成和处理产生一定的限制。

3)自参考嵌入字符串(SELFIES)是一种基于"语义约束图"的方法,用于将字符串转换为唯一的化学图形表示。相比于传统的SMILES表示,SELFIES提供了更严格的语义约束和更高的一致性。每个有效的SELFIES字符串都对应着一个有效的化学图。大部分生成的SELFIES字符串都是有效的,但在某些情况下,可能会出现语义上无效的表示,例如没有正确闭合的环或未连接的原子。为了确保SELFIES的有效性,可以通过后期字符串截断(“折叠”)的方式进行修正,以解决无效表示的问题。

img

表1 分子的字符表示方法

使用化学语言模型进行从头设计

深度学习的各种变体被广泛应用于化学语言建模。其中,**带有记忆单元的循环神经网络(RNNs)是常用的模型,用于生成分子字符串。除了RNNs,还有变分自编码器(VAE)生成对抗网络(GANs)**等流行的化学语言模型架构。VAE通过将分子字符串转换为潜在向量并再转换回分子字符串来实现分子的生成和重构。GANs则通过生成新颖的分子字符串并与现有分子进行区分来推动全新设计的研究

分子生成的三个主要方法包括分布学习目标导向生成条件生成。在分布学习中,通过生成新分子来填充训练集的化学空间。每种方法都有其优势和挑战,选择适当的方法取决于具体的应用场景和设计目标(图3)。

1)分布式学习(Distribution-learning):这种方法允许端到端学习和生成,不需要依赖评分函数来指导分子设计。模型通过比较生成分子的性质与训练集中的分子性质来进行评估。但是,这种方法需要进行人工的判定和过滤。

2)导向式生成(Goal-directed generation):通过评分函数直接指导整体和单个分子的质量,通常通过预训练模型实现。然而,这种方法面临将复杂的化学性质压缩为单一评分函数的挑战,同时可能存在有限的结构多样性和模型函数定义问题。

3)条件式生成(Conditional generation):它通过形成潜在关联来捕捉复杂的结构目标关系,并保留了分布学习算法的端到端学习特性。尽管具有一定的潜力,但该方法在实验应用方面仍需进一步验证其在未充分表示的化学空间中的性能。

img

图3 用于分子生成的 CLM 类别

化学语言建模:挑战与机遇

CLMs具有灵活性和易于生成分子字符串的特点,使其在药物发现中能够探索未知的生物化学领域,并在多个任务中发挥作用。然而,评估CLMs的能力常常局限于优化简单特性,无法捕捉真实世界药物发现的复杂性。目前已经提出了一些全新设计基准,但仍需要进一步改进,以确保生成的化合物质量。虽然计算评估全新设计的质量复杂,但最终仍需要进行实验验证。尽管CLMs在药物发现中具有巨大潜力,但由于需要跨学科合作和大量时间和成本投入,目前只有少数前瞻性应用被发表。深度学习从业者、化学信息学家和药物化学家之间的跨学科合作将是推动CLMs在实际应用中取得突破的关键。此外,自动化合成平台可能成为加速基于CLMs的全新设计的解决方案,尽管这可能会对可合成的化学空间范围产生一定限制。

在未来几年中,条件生成算法将变得更加重要。这些算法可能克服现有评分函数的局限性,并通过设计生成符合特定条件的分子。其中,基于结构的设计具有特别的潜力,可以生成与某些结合口袋的电荷和形状特征匹配的分子,并有可能用于未知的大分子靶点的全新设计。然而,基于结构的全新设计在前瞻性应用中进展不如预期,可能是由于现有蛋白质-配体亲和力数据集的限制和偏见。结合大规模预训练的化学语言模型和**"few-shot"学习方法**预计将进一步推动CLMs的前瞻性应用。此外,改进CLMs生成可合成分子的能力将增加其在药物发现中的实际相关性。扩展化学语言模型以涵盖更复杂的分子实体(如含有非天然氨基酸的蛋白质和肽),对于推动化学中生成式深度学习的潜力具有巨大的希望。近期对SELFIES的未来扩展进行了广泛讨论,这也可能启发了SMILES和DeepSMILES等常用表示方法的变体。

**深度学习模型(如CLMs)**在药物发现中预计将发挥越来越重要的作用。除了提高时间和成本效益外,深度学习还将加速探索化学空间中未知领域的能力,并为药物发现提出和验证新的科学假设。未来,人工智能专家、化学家和生物学家的合作能够设计融入科学知识的创新算法,并通过人工智能推动对人类生物学的新科学洞见。

参考文献

Grisoni F. Chemical language models for de novo drug design: Challenges and opportunities. Curr Opin Struct Biol. 2023 Apr;79:102527. doi: 10.1016/j.sbi.2023.102527. Epub 2023 Feb 2. PMID: 36738564.

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

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

相关文章

第4章 kafka broker

4.1 Kafka Broker 工作流程 4.1.1 Zookeeper 存储的 Kafka 信息 4.1.2 Kafka Broker 总体工作流程 4.1.3 Broker 重要参数 4.2 生产经验——节点服役和退役 4.2.1 服役新节点 4.2.2 退役旧节点 4.3 Kafka 副本 4.3.1 副本基本信息 4.3.2 Leader 选举流程 4.3.3 Leader …

【力扣打卡系列】滑动窗口与双指针(三数之和)

坚持按题型打卡&刷&梳理力扣算法题系列,语言为go,Day11 搜索旋转排序数组 题目描述 解题思路 单独开一个函数来判断是否被染成蓝色 以与最后一个元素的大小比较来确定在哪个段上分类讨论target、nums[key]、end的大小情况,来确定此处…

LabVIEW汽车状态监测系统

LabVIEW汽车状态监测系统通过模拟车辆运行状态,有效地辅助工程师进行故障预测和维护计划优化,从而提高汽车的可靠性和安全性。 项目背景: 现代汽车工业面临着日益增长的安全要求和客户对于车辆性能的高期望。汽车状态监测系统旨在实时监控汽…

函数基础,定义与调用。作用域,闭包函数

一、函数的定义与调用 函数是一段可重复使用的代码块,用于执行特定任务或计算等功能。它可以接受输入参数(形参),并根据参数执行操作后返回结果。 函数的定义 例如在 JavaScript 中可以这样定义函数: function fun…

python代码中通过pymobiledevice3访问iOS沙盒目录获取app日志

【背景】 在进行业务操作过程中,即在app上的一些操作,在日志中会有对应的节点,例如,下面是查看设备实时视频过程对应的一些关键节点: 1、TxDeviceAwakeLogicHelper:wakeStart deviceId CxD2BA11000xxxx …

ffmpeg拉流分段存储到文件-笔记

通过ffmpeg可以从rtsp网络流拉取数据并存储到本地文件里,如下命令。做个笔记 ffmpeg -rtsp_transport tcp -i rtsp://192.168.1.168:6880/live -c copy -f segment -segment_time 60 stream_piece_%d.mp4//码流包含音频时用下面命令: ffmpeg -rtsp_trans…

C# OpenCvSharp DNN UNet 推理

目录 效果 模型 项目 代码 下载 效果 模型 Inputs ------------------------- name:data tensor:Float[1, 3, 256, 256] --------------------------------------------------------------- Outputs ------------------------- name:p…

2024网鼎杯青龙组初赛 web2

进入靶机之后是一个登录页面。随便登录就能进入 即使使用相同的账号密码,每次登录进去得到的接口也不一样 目录扫描可以发现存在一个/flag接口。但是需要boss身份才能读取到内容登录进去后的页面有更新计划功能,允许我们将js代码插入当前页面中同时将页…

Flutter仿京东商城APP实战 用户中心基础布局

用户中心界面 pages/tabs/user/user.dart import package:flutter/material.dart; import package:jdshop/utils/zdp_screen.dart; import package:provider/provider.dart;import ../../../store/counter_store.dart;class UserPage extends StatefulWidget {const UserPage…

D52【python 接口自动化学习】- python基础之模块与标准库

day52 标准库 学习日期:20241029 学习目标:模块与标准库 -- 67 标准库:Python默认提供的便携功能有哪些? 学习笔记 标准库中的常见组件 如何通过官方文档学习标准 from urllib.request import urlopen with urlopen(http://ww…

芒果YOLO11改进:免费|注意力机制SKNet:选择性内核网络结构,不同关注会产生融合层神经元有效感受野

💡🚀🚀🚀本博客 改进源代码改进 适用于 YOLO11 按步骤操作运行改进后的代码即可 YOLO11改进:注意力机制|YOLO11SKAttention改进内容🚀🚀🚀 文章目录 1. SKAttention 论文…

顺序表排序相关算法题|负数移到正数前面|奇数移到偶数前面|小于x的数移到大于x的数前面|快排思想(C)

负数移到正数前面 已知顺序表 ( a 1 , … , a n ) (a_{1},\dots,a_{n}) (a1​,…,an​),每个元素都是整数,把所有值为负数的元素移到全部正数值元素前边 算法思想 快排的前后指针版本 排序|冒泡排序|快速排序|霍尔版本|挖坑版本|前后指针版本|非递归版…

如何在Linux系统中使用LVM进行磁盘管理

如何在Linux系统中使用LVM进行磁盘管理 LVM简介 安装LVM 在Debian/Ubuntu系统中安装 在CentOS/RHEL系统中安装 创建物理卷 准备磁盘 创建卷组 创建逻辑卷 格式化逻辑卷 挂载逻辑卷 扩展逻辑卷 扩展现有物理卷 添加新的物理卷 调整卷组 调整卷组大小 使用LVM快照 LVM监控 查…

kaggle 数据集下载

文章目录 kaggle 数据集下载(1) 数据集下载(2) 手机号验证 kaggle 数据集下载 这两天想学习 kaggle 赛事 把深度学习相关的内容自己给过一遍,快忘得差不多了,惭愧。 参考了好多帖子,使用命令行…

力扣题86~90

题86(中等): python代码 # Definition for singly-linked list. # class ListNode: # def __init__(self, val0, nextNone): # self.val val # self.next next class Solution:def partition(self, head: Optional[Li…

rhcsa、ce复习(每日编辑,复习完为止)

红帽认证考试内容可以划分为以下几个主要模块: 1. 红帽认证系统管理员(RHCSA) 系统管理基础:包括安装和部署红帽企业Linux(RHEL),磁盘分区,以及软件包的选择和管理。 用户和组…

探索 JavaScript 事件机制(四):React 合成事件系统

前言 在前端开发中,事件处理是不可或缺的一部分。在众多的前端框架中,React 凭借其高效和灵活性受到众多开发者的喜爱。React 的事件处理系统,即“合成事件系统”,是其性能优化的一大亮点。 本文将带你深入浅出地探索 React 的合…

反悔贪心学习笔记[浅谈]

贪心是信息学竞赛常考内容,一般来说为选择当前情况下最优情况的算法,非常好写,但部分贪心题目无法使用普通贪心解决,在这些题目中就有一类为反悔贪心。 反悔贪心经常会用到堆来为主答案,例题: Work Schedu…

java-web-day6-下-知识点小结

JDBC JDBC --是sun公司定义的一套操作所有关系型数据库的规范, 也就是接口api 数据库驱动 --是各个数据库厂家根据JDBC规范的具体实现, 例如mysql的驱动依赖 Lombok 简介 Lombok是一个实用的java类库, 通过注解的方式自动生成构造器, getter/setter, equals, hashcode, toStr…

Http 状态码 301 Permanent Rediret 302 Temporary Redirect、 重定向 重写

HTTP状态码301和302是什么? 1、HTTP状态码301 HTTP状态码301表示永久性转移(Permanent Redirect),这意味着请求的资源已经被分配了一个新的URI,以后的引用应该使用资源现在所指的URI。 HTTP 301状态码表示请求的资源…