药物发现及其缺陷
数据驱动药物发现面临的挑战是什么?
- 整合 - 难以获取和整合复杂的生物数据网络 第一个挑战始于原始数据。这些与生物学概念和关系有关的数据散布在世界各地,由各种形式和标准的众多机构以前所未有的速度生成。这也被称为大数据中断范例,其中高吞吐量数据管道正在为分析和处理该数据创造瓶颈。摄取和集成这些多格式和不同的数据集非常困难。
- 规范化 - 难以将生物医学数据中的关系置于语境中 第二个挑战源于这些数据集中包含的原始数据没有结构这一事实。这种结构的缺乏使得难以维护和确保这些数据的完整性,准确性和一致性。当集成这些异构数据源时,它还导致对数据有效性的控制不足。总而言之,这使得难以对数据中包含的关系进行语境化或理解。
- 发现 - 难以以可扩展的方式研究数据量级的洞察力 最后,由于数据量的大小,以可扩展的方式生成或调查洞察力变得非常繁琐。当然,可以手动为单个数据实例发现有价值的见解,但这种方法无法跨越数百万个数据点进行扩展。而且,在大多数情况下,手动执行此操作实际上是不可能的。那我们做什么?
什么解决方案解决了这些挑战?
Gene Ontology
NCBI
ClinVar
CTD
DisGeNET
Gene Expression Omnibus
IntAct
PubMed
规范化原始数据
既然我们有原始数据,我们需要解决第二个问题; 正常化。为此,Grakn利用 实体关系模型 将每个概念分组为实体,属性或关系。这意味着我们所要做的就是将每个概念映射到 模式概念类型 并识别它们之间的关系。让我们看一个例子来说明我们将如何做到这一点。 首先,让我们假设我们有两个原始数据集代表一个数据集中的基因实例,另一个代表疾病:如果我们想象上述两个概念及它们之间的关系,它将如下所示:
可以使用Graql表示此结构,如下所示:
gene
和 a
disease
作为一个实体,分别拥有
symbol
和
name
。然后,我们定义了我们所谓的
gene
和之间的关系:关系中的角色扮演者是和。
person
gene-disease-association
associated-gene
diagnosed-disease
为了约束每个概念的属性,我们还需要表示它们遵循的数据类型。在这种情况下,我们定义了它们的
string
类型。
将原始数据迁移到Grakn
现在我们已经获得了来自我们数据源的数据,以及强加于此数据的结构,下一步是将其迁移到Grakn中。请注意,有许多不同的方法可以进行迁移,但在这里,我想特别谈谈如何使用Java,NodeJS和python。 为此,我们可以轻松地使用这些语言中的任何一种来读取/解析原始数据文件,并迭代这些文件中的每个条目。下图描述了如何使用以下三种语言中的任何一种将具有名称和符号的基因的单个实例插入到Grakn中:发现可扩展的见解
迁移后,我们可以开始发现新的见解。发现洞察力是指寻找可能对我们正在努力实现的目标有价值的新数据。为了做到这一点,我们需要先看或要求一些东西。换句话说,我们从一个问题开始 - 我们要求在药物发现中找到答案的问题。
让我们看一个例子,看看我们的药物发现知识图如何为它们提供答案:
问题:黑色素瘤的潜在目标是什么?
回答:
答案返回的是蛋白质列表,通常是潜在的目标。对于被鉴定为可行靶标的蛋白质,它们必须以某种方式与疾病相关。让我们说在这种情况下,它们是蛋白质 - 蛋白质相互作用途径的一部分:
那时出现的问题是 - 格兰克如何识别与疾病没有直接关系的蛋白质?
Grakn以规则的形式利用自动推理的力量来推断所有落入导致疾病的途径中的蛋白质可被识别为药物靶标。在启用此功能的知识图中编码了两个规则。
首先,我们使用了一种规则,它形成了在protein-protein-association它们之间具有传递关系的蛋白质之间的关系。左侧的Graql语法显示此规则,而下图显示此规则的工作方式:
顶部的虚线关系protein-protein-association是由Grakn创建的推断关系。该规则源于途径中的所有蛋白质并且彼此连接。
第二条规则使用了一些类似的规则,以形成protein-target-identification观察中的疾病和潜在的目标蛋白质之间的初始关系。
该规则的语法可以在左侧看到,我们现在使用与疾病直接相关的蛋白质和与直接相关蛋白质相关的蛋白质。
该规则的直观表示如下:
protein-protein-association
是由于第一规则的逻辑而创建的推断关系,而底部的
protein-target-identification
关系是由第二规则创建的推断关系。
尽管我们想要它,但生物学并不像上面假设的那么简单。途径本质上不是线性的,但揭示了更复杂的关系集。参与疾病途径的蛋白质也是引起各种正常细胞功能的原因。稍微更现实的模型如下所示:
问题:鉴于此模型,黑色素瘤的潜在目标是什么,不参与任何正常细胞功能途径?
这个问题可以在否定的帮助下翻译成Graql,这使我们能够询问不遵守某些陈述的概念,在这种情况下,使我们能够检索与任何正常细胞功能无关的蛋白质。
答:返回的是识别不会导致任何正常细胞功能的蛋白质。
但是,如果所有蛋白质都负责细胞功能呢?我们能否采取某种措施来指导我们找到可能有助于我们研究的见解?
分布式分析是一组可扩展的算法,允许您以分布式方式对大量数据执行计算。左侧的Graql查询显示了一个示例,这有助于我们回答我们的问题。
回答:
在这里,我们准确地回复了我们要求的内容 - 允许我们将我们希望在研究中优先考虑的目标蛋白质列入候选名单; 最终将我们的研究加速到能够治疗疾病的活化合物,对您的正常生理影响最小。
所有的这些如何融合在一起?
现在,让我们退后一步,看看构建药物发现知识图的所有组成部分是如何组合在一起的。
我们从数据开始,这些数据可以来自多个来源和各种格式。该原始数据用于创建 模式 (高级数据模型)以在原始数据上实施结构。完成后,我们使用 Grakn的 一个客户端将数据实例迁移到Grakn中,确保每个插入都遵循模式。Grakn将其存储在其知识表示系统中,可以查询该系统以发现复杂关系或甚至测试假设。这些见解可以已经在图表中,甚至可以在推理引擎查询时创建。结论
1、 BioGrakn GitHub :https://github.com/graknlabs/biograkn
长按订阅更多精彩▼
如有收获,点个在看,诚挚感谢