Hyperdimensional computing: A fast, robust, and interpretable paradigm for biological data
超维计算:生物数据的快速,鲁棒和可解释的范例
https://journals.plos.org/ploscompbiol/article/file?id=10.1371/journal.pcbi.1012426&type=printable
摘要
生物信息学的进步主要得益于处理多种生物数据源的新算法。虽然复杂的比对算法在分析生物序列中发挥了关键作用,但深度学习已极大地改变了生物信息学,涉及序列、结构和功能分析。然而,这些方法极度依赖数据、计算密集且难以解释。超维计算(HDC)最近作为一种令人兴奋的新选择应运而生。其核心思想是,高维随机向量可以表示诸如序列同一性或系统发育等概念。然后,可以利用高维空间的独特性质,通过简单运算符将这些向量组合起来,用于学习、推理或查询。本文回顾并探讨了HDC在生物信息学中的潜力,重点强调其在效率、可解释性以及处理多模态和结构化数据方面的能力。HDC在多种组学数据搜索、生物信号分析和健康应用方面有着巨大的潜力。
引言
计算生物学家和生物信息学家收集、组织、处理和分析大量生物数据,以提取生物学知识[1]。生物数据生成和计算机科学的并行进步进一步扩展了生物信息学的功能和实用性,对于从序列数据中挖掘生物学知识具有巨大价值。如今,深度学习(DL)再次改变了生物信息学[2],它能够处理复杂的、高维的和多模态的数据(如序列和图像),从而将人们的兴趣从早期的核方法学习[3,4]等强大工具上转移开来。特别是,AlphaFold[5]、ESMFold[6]和RoseTTAFold[7]等复杂深度学习模型的发展和应用代表了蛋白质结构预测领域的范式转变。此外,深度学习还在其他领域取得了重大突破,如蛋白质设计[8]、医学成像[9]和药物发现[10],在系统生物学和谱系推断[11]等领域也取得了适度进展。深度学习在生物信息学问题方面的许多进展都利用了新型神经架构,如最初为自然语言处理[13]开发的转换器[12]。有趣的是,深度学习的影响程度在不同领域之间存在差异,这在一定程度上可以通过仅基于大型数据集学习映射的需求(如蛋白质结构预测)与涉及结构化数据和信息复杂组合的问题设置(如多组学和谱系)来解释。
目前,深度学习模型在生物信息学中的应用受到两个方面的限制[11]。首先,大型连接主义模型往往是黑箱模型,而模型的可解释性对生物学家来说是至关重要的属性,可以说比预测性能更重要。例如,当医疗从业者使用模型辅助诊断或寻找治疗方案时,他们必须理解为何会得出这一结论[14]。尽管可解释机器学习[15,16]取得了巨大进步,但深度学习方法仍然缺乏决策树或逻辑回归等方法所固有的清晰性。一些作者认为,数据到决策的管道需要真正可解释的模型,而不是为黑箱模型提供解释[17]。其次,深度学习模型的训练在所需数据和相关计算成本方面通常很昂贵。大多数深度学习方法都非常依赖数据——尽管也有一些显著例外,例如最近一个仅使用18个结构训练的RNA折叠模型[18]。训练一个具有竞争力的深度学习模型可能需要花费数万至数十万美元,并且在二氧化碳排放方面具有高昂的环境成本[19]。与此同时,迁移学习和微调已成为绕过额外高昂训练成本的方法[20]。此外,开发高效的架构和训练协议是一个活跃的研究领域[21,22]。
本文探讨了超维计算(HDC),有时也称为向量符号架构(VSAs),作为生物信息学中一种替代的学习和信息处理范式[23]。虽然HDC和深度学习都受到大脑抽象模型的启发,但它们非常不同。HDC不是模仿层次连接主义神经架构,而是关于人类大脑中表征如何存储的概念模型。在这里,概念由高维向量(即10,000维或更高,即同名超向量(HVs))表示。HDC使用一组数学运算来组合和改变不同超向量中存储的信息,以创建一个联想记忆,即一个概念数据库。使用一组小型数学运算,可以在此数据库中构造、处理、组合、拆分或查询概念。对于高维向量,可以证明诸如余弦相似性或基于汉明距离的相似性等相似性度量对于检测相关向量极为敏感。HDC不是基于精确的算法计算,而是使用了一种控制论形式的计算[24],其中概念以分布式方式存储。通过计算查询超向量与存储在记忆中的超向量之间的相似性来进行推断,类似于最近邻和其他原型方法的工作原理。HDC具有许多吸引人的特性,将在以下部分进行探讨,我们认为HDC是生物信息学中深度学习的一个有前景的补充范式,具有广泛的应用范围。
在下一节中,我们首先概述HDC的特征方面。然后,我们提供一个易懂但相对全面的HDC介绍,包括创建超向量的不同策略、基本运算及其直觉、如何表示最常用的数据类型(数字、向量、序列、图等),以及如何进行学习。最后,我们讨论了HDC在生物信息学和计算生物学中的优势和有前景的应用。尽管HDC在某些领域被视为一个晦涩难懂的主题,但存在大量令人兴奋的工作,本文无法全面覆盖。本文还应作为计算生命科学家的通用入门指南。我们指出了其他更具体或范围更广的工作。
超维计算的特性
超维计算(HDC)框架诞生于20世纪90年代[25,26],近期在机器学习领域引起了广泛关注。它源自一系列更广泛的计算模型,这些模型通过实现高效的绑定操作来结合不同来源的信息,试图将所谓的老式符号人工智能的优势与现代联结主义和数据驱动的机器学习方法相结合。在引入张量积表示[27]后,许多类似模型被提出,如全息简约表示[28]、二进制溅射码[29]和乘加置换[30]等。如今,存在多种模型来构建高维向量(HV),例如使用二进制、实值或复数组件。有关全面概述,请参阅[26,31]。
我们关注的不是高维表示中值的特定选择,而是确定了四个将超维计算与其他方法区分开来的特征(图1A)。这些特征是:
超维:高维向量存在于非常高的维度空间中,维度足够大,以至于随机分量可以看作是彼此不同且不相似的;
同质性:绝大多数高维向量都具有高度相似的属性:它们具有(近似)相同的范数,彼此之间的(不)相似程度相同,并且具有相同的维度,即使它们嵌入更复杂的信息等;
全息:在高维向量中编码的信息分布在其众多维度上;对于特定信息,没有哪个特定区域比其他区域更具信息量;
鲁棒性:随机改变一定数量的分量不会显著改变高维向量的意义。
这些特征描述了高维向量的本质,结合精心选择的一组数学运算,可以编码如氨基酸、基因、基因调控网络、蛋白质或整个基因组等复杂结构。一般而言,通过相似性来保留信息:相似实体或复杂结构的HV表示相似。一个敏感的相似性度量(如基于汉明距离或杰卡德相似度的度量)对于推理和查询至关重要。
HDC强大的首要方面是超高维度,通常以大约10,000为基准。这为基因或网络等复杂对象提供了巨大的表示能力:随机选择的两个向量很可能不相似,从而使它们能够独立地存储信息。超维性也带来了鲁棒性,这是数学、统计学和物理学中的一个现象,被称为高维的祝福。例如,在统计物理学中,具有许多自由度的系统表现出可由诸如压力等涌现特性描述的鲁棒行为[33]。不同类型的数据以相同形式的高维向量进行编码,我们称之为同质性。无法判断特定高维向量是编码了一个更复杂的概念(如蛋白质)还是一个更基础的概念(如氨基酸)。在HDC中,高维向量的单个分量无法与实体的特定信息相关联。相反,所有分量都略微贡献于同时表示所有属性。这种分布式表示属性被称为全息。在每个分量中存储所有属性的少量信息是均匀构建复杂对象的基础。这一属性与例如TF-IDF词嵌入向量(每个分量对应于特定文本中单词的出现)或分子指纹(分量对应于分子中特定子群的出现)形成鲜明对比。最后,由于上述属性,HDC对噪声具有鲁棒性。由于其全息特性,每个分量都包含相同的信息,但方式不同,以至于超维性确保了表示本身对损坏具有固有的鲁棒性。这将允许在不过多损失信息的情况下构建和操作复杂实体。本质上,计算大型随机初始化向量的相似性可以被视为近似期望值,这些期望值在无偏损坏(即噪声)下保持不变。
HDC简介
使用高维向量(HV)进行计算
HDC所需的基本操作非常简单。简而言之,它们依赖于4种操作来操纵和提取高维向量(HV)中的信息(见图1B和1C)。这些操作如下:
• 从头开始生成新的高维向量;
• 将一组高维向量组合成一个新的高维向量,这个新的向量与所有原始向量都相似;
• 使用一个或多个高维向量生成一个新的向量,这个新向量与其父向量(们)不同;
• 比较两个高维向量,以检测它们是否比随机情况下的(不)相似性更高。
本文将讨论限制在最基本、最常用的案例上。如需全面了解,请参考诸如[26,34]等综述论文。我们还参考了[31],该论文深入比较了11种不同的HDC架构,以及[32]中的理论分析。作为一个持续进行的示例,我们将使用氨基酸序列的编码来解释这些操作。
高维向量生成。首先,需要确定高维向量的性质,例如,是使用二进制({0, 1})、双极({–1, 1})、三元({–1, 0, 1})、稀疏还是实值向量。需要为这些类型定义一个函数来生成新的原子向量。原子向量表示感兴趣实体的基本构建块。例如,蛋白质序列由氨基酸组成,DNA序列由核苷酸组成,蛋白质网络由蛋白质组成。它们在某种程度上是原子的,即在其上下文中,它们不由更简单的子结构组成。在实践中,生成可以通过用适当类型的独立同分布(pseudo-)随机数初始化N维向量来完成,例如,从伯努利分布中抽取的布尔值,从拉德马赫分布中抽取的-1和1,或具有正态分布的值。高维性确保了这些随机生成的向量满足前面描述的性质。
捆绑。给定一组高维向量,捆绑(也称为聚合或叠加)会产生一个与集合中所有元素都相似的高维向量。例如,捆绑3个高维向量表示如下:
其中[……]表示可能的归一化操作。在二进制高维向量(HV)的情况下,例如,归一化对应于阈值处理,使得u再次成为二进制高维向量,而聚合则归结为逐分量多数规则。在这里,我们有uv1,uv2和uv3,其中“”非正式地表示两个高维向量是相似的,即它们之间存在关联。在二进制(0/1)或双极(−1/1)高维向量的情况下,“相似”意味着它们共享的分量比随机情况下预期的要多。
例如,考虑找到一个代表所有疏水氨基酸集合的高维向量的任务。对于二进制高维向量,可以解决最近字符串问题,这是一个NP难问题,它找到与所有给定高维向量的汉明距离最小的位串。然而,在实践中,人们经常使用一种更简单的方法:使用逐分量多数规则将疏水氨基酸的高维向量进行捆绑。在捆绑偶数个分量时,必须采用一种约定来解决平局,通过设置默认值或随机选择一个值。双极高维向量特别容易捆绑,因为可以将向量相加并取分量的符号;在平局的情况下,可以使用0作为中性分量并升级为三元高维向量。对于实值高维向量,取平均值似乎很合适,但这会降低聚合体的范数,违反了同质性属性。从独立随机变量的方差规则可以很容易地理解这种范数的减少:
上述操作是使用高维向量(HV)进行推理的核心思想之一。例如,通过存储一组带有绑定功能注释(如带有相关EC号的酶)的序列,可以使用新序列进行查询,以获得可能的功能注释。此外,这种数据记录编码是编码不同类型数据的通用模板,允许将特征标识符作为键,并将其关联的值进行存储。
排列和移位。绑定的一种特殊情况是通过排列进行绑定,它创建了单个高维向量v的一个变体ρ(v),使得
从各自的氨基酸HVs。
相似性。上述操作足以在高维空间中创建任意复杂的结构。人们可以通过比较高维向量的(不)相似性来从这个空间中提取信息。一个有意义的相似性度量对于进行推理至关重要。人们通常会尝试通过搜索或优化来找到数据空间中与高维向量结果最匹配的实体。通常,高维度确保了任意两个高维向量之间的相似性受到严格限制,从而导致检测相关高维数据(HD)的极高敏感性。
对于位向量,人们经常使用基于汉明相似性的相似性度量。归一化汉明相似性由以下公式给出:
在生物信息学中,杰卡德指数(在比较化学计量指纹时通常称为塔尼莫托相似度[36])是一个流行的替代方案。它是两个向量中都等于1的分量数量与至少在一个向量中等于1的分量数量的比率:
杰卡德指数(Jaccard index)同样会在[0,1]区间内产生值,对于比较两个随机向量,其期望值为1/3(即0.5²/(1–0.5²))。由于杰卡德指数适用于比较集合,因此高维向量的每个位置都可以被解释为实体具有或不具有的全息属性,类似于分子指纹如何提供关于分子中是否存在某个子群的信息。
对于双极或实值高维向量,余弦相似性(cosine similarity)是一个更自然的选择:
在这里,输出范围从-1到1,而两个随机生成的向量的相似性预期接近0。
数据类型的编码
掌握了高维计算(HDC)的四个基本操作后,人们可以将各种对象(如序列、图或向量)映射到高维空间中。对于所有不同的数据类型,存在几种策略。与数据科学中的常见情况一样,为了获得给定应用的最佳表示,可能需要进行一些特征工程。作为一般指导原则,相似的对象应该产生相似性增加的高维向量。有关更全面的调查,请参阅[26]。
原子构建块
对于给定的数据类型,第一步通常是确定原子构建块(例如蛋白质序列中的氨基酸或蛋白质-蛋白质网络中的蛋白质),并使用随机生成的方式表示它们。接下来,可以使用捆绑、绑定和排列将这些原子构建块组合成结构化的层次对象表示。
符号:表示唯一概念的符号等原子构建块可以直接生成。这些符号可能代表生物序列的字符、代谢产物或某些本体中的元素。由于高维性,随机生成的高维向量都是不相似的,这意味着这些概念可以被视为独立的。如果想要编码一个概念在语义上更接近另一个概念,可以随机将一个高维向量的一小部分复制到另一个高维向量中,使它们更加相似[37]。在高维向量中嵌入语义信息的一种更通用的方法是将它们嵌入到图中,其中语义相似的概念是相互连接的,并优化高维向量以最小化该图上的能量函数[38,39]。
标量:与图中的节点一样,标量是另一种数据类型,其中某些值在语义上比其他不相关的符号更接近。对于标量,融入接近性的概念至关重要。当高维向量的分量是低分辨率的(如二进制、双极或三进制高维向量)时,需要格外小心。例如,代表基因表达的标量通常是通过考虑一个固定范围的值并将其划分为离散区间来表示的,中间值通过插值获得。表示一个区间的高维向量通常是通过随机改变前一个区间高维向量的一部分分量来构建的。这种编码方式起源于散射码[40]。通过定义区间宽度和随机改变的分量数量,可以获得具有不同属性和分辨率的相似性模式。相邻区间表示的捆绑可以被解释为中间值的近似——另外,也存在没有离散区间的更连续的方法[41,42]。有关更详细的概述,请参阅[26]。标量编码还可以作为使用高维计算进行回归的基础。
复合对象
数值对象:数值复合对象,如实值向量(例如基因表达向量)或函数(例如剂量-反应曲线),可以使用上述的原子标量表示和操作来构建。例如,小向量可以通过绑定其标量分量来编码,可能通过移位来编码位置信息。另外,为了编码一个较大的向量x,可以使用随机投影的方法。
其中S是一个包含正态分布值或{−1,1}中的分量的随机且可能稀疏的投影矩阵。一些方案,如[43]中的BRIC,建议在投影矩阵中采用特定结构以促进硬件优化。所得的高维向量v可能需要进行阈值处理、稀疏化或归一化[43]。这种随机投影方法已经得到了充分的理论支持,解释了为什么它们能够保留向量v的性质,例如约翰逊-林登斯特劳斯引理[44–46]或其更稀疏的变体[47]。此外,通过使用精心选择的数值编码,更复杂的数值对象(如函数和分布)可以通过积分变换进行任意接近的近似[42,48–50]。
集合和序列。集合可以表示为其符号的聚合。这种聚合的作用类似于布隆过滤器[32,51],布隆过滤器是一种用于通过多个哈希函数检查元素是否属于集合的随机数据结构。
序列(如DNA、RNA或肽)与集合的不同之处在于符号的顺序很重要。仅仅将符号捆绑在一起是不够的。为了考虑顺序,可以使用移位来编码位置,例如,序列中的第一个符号不移位,第二个符号移位一位,以此类推。可以通过捆绑(例如,将序列中的每个符号视为一个独立的特征并为其分配一个随机生成的哈希值,然后将这些哈希值组合成一个高维向量)或更复杂的编码方案(如考虑符号之间的依赖关系或上下文)来形成序列的高维向量,
在使用捆绑方法时,可以根据序列的表示来测量两个序列之间的相似性。通过捆绑序列获得的高维向量(HV)与单个符号不同的表示是不相似的。在编码更长的序列(如蛋白质或整个基因组)时,通常使用n-gram方法(在生物信息学中常称为k-mer),同时使用捆绑和绑定。在这里,通常首先使用绑定来表示所有长度为n的子序列,然后将这些n-gram表示捆绑成一个序列表示[52]。结合不同层级上的多种不同表示可能是有益的。例如,在编码细菌基因组时,可以将多个n-gram表示与基于不同基因存在情况的表示相结合,而这些基因本身又基于其DNA和蛋白质编码序列进行编码。
图表。图表(如代谢网络、蛋白质-蛋白质网络或分子)也是由顶点和边组成的结构化数据类型。顶点可以是原子性的或复合性的。边的表示可以通过组合相应节点的表示来构建,如GraphHD[53]和GrapHD[54]中所做的那样。如果图是无向的,可以直接绑定两个节点向量。当图是有向的(如在基因调控网络中)时,可以通过移动其中一个节点向量来区分入边和出边。当所有边都被编码后,可以将它们捆绑起来以创建一个表示整个图的高维向量。这些高维向量表示允许解决图问题,如图匹配、最短路径查找、图分类和对象检测。特定的方法,如全息嵌入(Holographic Embeddings),甚至可以高效地扩展到非常大的数据集[55]。
图像。图像是我们考虑的最后一个数据类型。图像通常是一个2D矩阵,其中的分量表示像素值,可以是亮度、颜色或更专业的内容,如显微镜图像的不同通道。同样,可以通过将像素与适当的空间上下文捆绑在一起来表示整个图像。编码这种上下文的一个简单方法是定义两种置换类型,以表示像素的坐标[39]。这种方法的一个缺点是它没有考虑像素之间的接近性。基于角色-填充物绑定(role-filler binding)的表示可以解决这个问题。在这里,接近的位置被制得更相似,这与我们之前讨论标量时的方式类似。在[57]中,黑白MNIST图像以扁平化的格式直接处理,其中每个像素位置由一个原子向量表示,该向量根据像素值进行移位或不移位。与卷积神经网络(CNN)相比,这种简单的方法表现相当差,报告的训练准确率仅为86%,而LeNet的准确率高达99%。直接从像素值创建图像表示的一种有效替代方法是使用(卷积)深度神经网络的隐藏层(参见[58]等)。此策略也可用于其他具有相关预训练深度神经架构的数据类型,如(图)卷积神经网络或Transformer。
使用高维向量的学习
在这里,我们给出了一个使用高维计算(HDC)进行机器学习的实际学习流程的示例,如图1D所示。高维计算与基于核的学习[3]有不止一点相似之处。两者都将数据投影到更高维的空间中,以便更容易地捕获数据模式。然而,核方法通常在这个空间中使用隐式映射和线性算法,而高维计算则显式地创建这个空间,并且主要使用基于原型的学习。HDC中的大部分工作都集中在分类上[26,59],但也存在一些回归的变体[41,60]。通常,首先使用本节中描述的方法将数据映射到高维向量上。然后,使用高维空间中的操作对这些编码的数据点进行处理,以进行学习和推理。最后,通过相似性测量可以将处理后的高维向量映射回可解释的预测。
更具体地说,诸如将具有特定功能的蛋白质变体进行分类的任务,通常是通过原型方法[59]来执行的。每个类别都有一个原型高维向量(HV),这样可以根据相似性测量来对新的数据点进行分类。预测类别是原型HV与待预测数据点的HV表示最相似的那个类别。大多数高维计算(HDC)学习方案都可以看作是向量量化[61]或其监督变体[62,63]的一个特例。
存在不同的启发式算法来计算类别原型HV。其基础是将一个类别中所有成员的HV表示进行捆绑。尽管简单的捆绑在计算上高效、易于实现且通常效果尚可,但与其他当代机器学习方法相比,它在预测性能上往往逊色不少。通过各种再训练算法可以显著提高预测性能。通常,需要多次遍历训练集,在此期间,将错误分类的样本添加到正确类别的原型中,并从错误关联的原型中减去[59,64]。例如,假设有两个类别A和B,其初始超向量CA和CB是通过捆绑得到的。如果表示为超向量v的数据点被错误分类为A,则更新CA为CA - αv,更新CB为CB + αv,其中α是学习率。存在不同的变体,例如依赖于数据或迭代的学习率,以提高性能或加快收敛速度[65]。
HDC在生物信息学中的优势
尽管HDC正在获得一定的关注,但与其他机器学习方法相比,它在生物信息学应用中的研究仍然相对较少。HDC范式在生物信息学中可能发挥重要作用,因为该领域越来越多地处理与知识相关联的大量序列数据。更具体地说,在本研究中,我们确定了HDC可以为生物信息学领域带来的4个机会(图2):
快速高效:HDC可能比传统的比对算法或深度学习(DL)方法快得多;
可解释性:HDC中的操作是可追踪的,且通常是可逆的,使其接近于白盒操作;
多模态:所有数据都被映射到相同的N维向量上,因此将不同来源的数据(例如转录组和代谢组学数据,或序列和结构数据)结合起来变得轻而易举;
符号化和层次化:HDC配备了用于推理结构化数据的代数,例如表示基因构建体。
[66]在生物信号处理领域探索了一组类似的优势。
生物信息学领域正在产生越来越多的数据[67]。这主要是由于测序成本的急剧下降,使得从单个细胞水平到整个微生物群落水平读取表达成为可能。此外,其他丰富多样的数据源,如代谢组学[68]、成像[69]和流式细胞术[70],也正以高通量的方式出现。这些数据类型需要特定的数据处理算法来进行分析和比较。例如,序列分析是由序列比对算法的发展推动的。机器学习方法,特别是深度学习(DL)架构,代表了具有空前能力的灵活、可训练的操作——同时也往往伴随着高昂的计算需求!由于高维向量(HV)的处理速度极快,尽管HV的规模很大,但高维计算被视为一种时间和能量效率高的机器学习形式,据报道其速度比传统方法提高了5到50倍[71]。例如,[71]的综述报告了各种应用的加速比,范围从2倍到50倍不等,通常性能损失很小。原因是编码、训练和推理通常只需要简单的逐分量操作。这些操作通常可以使用位向量来完成,从而实现高效的低级编码。由于操作的简单性,HDC系统可以在专用硬件上实现,如GPU[72,73]、FPGA[74,75]和忆阻器[76]。例如,基于HDC的宏基因组学分析器Demeter[77]通过广泛的硬件优化,与Kraken2[78]和MetaCache[79]相比,实现了超过100倍的速度提升和30倍的内存提升,同时保持了相当的准确性。
在海量数据与生物知识生成之间存在着巨大的差距。理想情况下,为了创建稳健的预测,模型必须是可解释的,以便用户可以验证其假设,即为什么预测是这个而不是那个[14]。存在许多面向可解释机器学习的方法[80],这些方法要么是自然可解释的模型,要么使用事后分析,如沙普利值分析[81]。符号回归方法可以直接从数据中提炼出简洁、人类可读的规则,通常具有很高的准确性[82,83]。鉴于HDC使用大型、随机构建的高维向量,它竟然具有很高的可解释性,这令人惊讶。这种可解释性归因于HDC的可逆操作,意味着可以分解复杂的表示来学习它们的工作原理。可以使用相似度匹配来比较具有不同组件的HV,以查看哪些是关键的,例如,了解哪些组或组的组合负责分子的生物活性。
生物信息学家不仅要处理更多的数据,而且这些数据也变得更加多样化。数据融合结合了来自不同模态的数据,这些数据为共同现象提供了独立且互补的视角,以解决推理问题。考虑到不同的数据源来发现分子机制、样本聚类或获得最佳预测,远非易事[84]。例如,在精准医学中,可以使用各种组学、代谢产物和生物标志物、微生物组、可穿戴设备读数和环境来描述患者的健康状况[85]。深度学习在数据融合方面取得了相当大的成功,因为层次化表示使这些模型非常适合多模态学习[85]。在HDC中,不同的数据源被映射到相同的向量类型上,使它们处于同等地位。简单的绑定或更复杂的策略可以将不同的HV组合成一个代表对象不同模态的单个HV。例如,融合不同类型的可穿戴传感器读数——脑电图记录、加速度计、皮肤电导反应——可以准确检测人类的活动和情绪[86,87]。
HDC的另一个亮点是表示复杂、结构化的层次信息。生物数据本质上是层次化和嵌套的:蛋白质网络由蛋白质组成,蛋白质又包括结构域和氨基酸。最强大的表示还结合了低级成分的方面。然而,组合复杂信息是一个具有挑战性的问题,被称为绑定问题[88]。例如,将“红苹果”和“绿梨”的概念结合起来可能会丢失特定的颜色-对象关联。在生物信息学中,一个例子是向一组中的单个基因添加语义信息。HDC的操作非常适合处理这个问题,由于操作的分配性,可以自由组合特定的概念。例如,在图像处理中,可以使用捆绑来将几个整体图像描述符与图像中特定区域的局部图像描述符结合起来,以实现更准确的移动机器人位置识别[89]。这使得HDC在需要推理和结构的问题中蓬勃发展,例如最近在雷文渐进矩阵问题上超越了深度学习[90]。
使用HDC,许多棘手的机器学习问题可以变得轻而易举。例如,假设已经计算出了几种能量上有利的RNA二级结构,但不确定哪一种或哪几种是生物活性的——这是多实例学习的一个实例[91]。这类问题在生物信息学中无处不在。通过聚合来获得与所有候选者相似的HV,可以轻松地处理这些问题。
生物信息学的机遇
在这里,我们确定了生物信息学中几个已经证明HDC(高密度计算)具有价值的领域。此外,我们还推测了生物信息学中还有哪些领域有待探索,以及哪些领域可能不太适合HDC。
大规模分析组学数据
HDC在处理组学数据方面已经证明了其价值。在组学领域,问题通常涉及将高通量生成的数据与参考数据库进行匹配。考虑到HDC的速度和低内存占用,这一应用对其来说尤为有用。值得注意的是,由于HDC使用固定形状表示,因此(子)序列匹配与参考序列的长度无关。与最先进的技术相比,几项研究报道了在速度和能源使用方面的显著提升。HDNA [92]、GenieHD [93]、BioHD [94]和HDGIM [95]是基于HDC的框架,用于高效地将DNA序列与参考数据库进行匹配。这些框架通常使用高度并行化的实现和特定的硬件优化。例如,BioHD使用内存内处理(PIM)实现大规模并行化,从而获得100倍的速度提升和能源效率,即使与其他在PIM加速器上运行的算法相比也是如此。作为蛋白质反向翻译的工具,它们通过叠加解决相似编码核酸序列中的模糊性。另一个例子是Demeter [77],这是一种用于食品实时监测的宏基因组学分析器。作者使用特定的忆阻器优化,与最先进的技术相比,实现了大幅的内存减少和速度提升,同时准确性下降微乎其微。在表观遗传学领域,HDC成功地根据甲基化特征对肿瘤和非肿瘤序列进行了分类 [96]。还提出了替代序列编码,提高了诸如蛋白质二级结构预测等任务的性能 [97]。这些编码提供了关于序列位移的等变性,并保留了具有相同元素的序列之间的相似性。
生物信号与频谱
第二个涉及大量数据的领域是生物信号与频谱。在这里,HDC(高密度计算)同样可以提供快速分析大规模数据的方法,并且性能具有竞争力。例如,HyperSpec [98]是一种基于HDC的质谱数据聚类方法,其速度比其他聚类工具快15倍。此外,HyperSpec结合了频谱峰的空间局部性和这些峰的强度,充分展示了HDC在处理复杂数据方面的优势。HDC已被用于通过蛋白质组学SELDI-TOF频谱对胶质瘤对化疗的敏感性进行分类 [99]。同样,最近提出的HyperOMS [100]是一种基于HDC的算法,用于质谱蛋白质组学中的开放修饰谱搜索,以识别翻译后修饰。
在生物信号处理方面,一个使用HDC的突出例子是[101]的工作,他们开发了一系列HD架构,用于跨多种模态编码ExG信号,并展示了这些架构如何产生可解释的超向量(HVs)。在后续工作中,[66]广泛探索了HDC在各种ExG生物信号(即肌电图、脑电图和心电图)中的潜力,并发现其性能与最先进技术相当或更优,而HDC(i)所需数据量大大减少,并且可以在零样本设置下工作;(ii)能很好地处理噪声和未处理输入;(iii)证明是透明和可重复的。总的来说,HDC领域的大量工作都集中在生物(医学)信号的处理上,尤其是IEEG、EEG或EMG信号,例如用于癫痫发作检测、脓毒症建模和手势识别 [66,102–125]。
分子与图
HDC方法也适用于分子和图的学习。图和网络在系统生物学中是不可或缺的工具,例如用于代谢网络、蛋白质-蛋白质网络或基因调控网络。GraphHD [54]和GrapHD [53]是基于HDC的通用方法,用于图的编码和分类,在现实世界的分类问题上取得了与最先进技术相当的性能。HyperRec [126]是基于HDC的推荐系统。该方法将物品和用户编码为超向量(HVs),以根据用户偏好预测新物品的排名,这可以看作是在图中预测链接。包含药物-药物、蛋白质-蛋白质和药物-靶标相互作用的图被表示为超向量,以预测新的药物-药物不良相互作用 [127]。此外,分子中原子的层次结构也代表了一个图,可以基于HDC预测分子性质 [128]。MoleHD [129]是最近提出的用于分子性质预测的HDC工具,如血脑屏障通透性或药物副作用。与包括图卷积神经网络在内的几种最先进技术相比,该方法表现良好,并且只需在CPU上训练几分钟,而基于深度学习的方法则需要数天至数周的GPU训练时间。
在线与精准医疗
HDC也被应用于在线医疗领域。由于其高效且支持多模态的特性,HDC非常适合这一领域。例如,[86]开发了HDC-MER,这是一个基于HDC的多模态情绪识别框架,它随时间将多种模态编码为超向量(HVs)。[102]也开发了一种HDC情绪识别方法,但特别利用细胞自动机生成超向量,以在设置多个模态时最大化能源效率。第三个例子是[130]的工作,他们提出了一种HDC方法,可以分析计算机断层扫描以早期检测COVID-19。
此外,高密度编码(HDC)已被应用于癫痫发作检测[104]和感染性休克检测[110],这与前文引用的生物医学信号处理工作有所重叠。
文本挖掘
HDC被用于基于谓词语义索引的自然语言处理和类比信息检索[131,132]。例如,从诸如“药物A治疗疾病B”这样的句子构成中,可以推断出谓词路径“药物A与与疾病B相关的基因C相互作用”。通过这种方式,HDC可用于介导基于文献发现的具有治疗价值的联系的识别[133]。同样,HDC在药物警戒、药物重新定位和类比发现等背景下也被讨论过[134,135]。值得注意的是,这些基于语言的(类比)交互推断与前面讨论的更为明确的图形表示之间存在强烈联系,这强调了HDC的多模态性。现代深度学习(DL)技术处理大型、多样化数据集的能力催生出了基础模型,即能够适应各种下游任务的一般模型[136]。大型模型,如BioBERT[137],能够处理大量生物医学数据,例如用于药物发现或个性化医疗[138]。HDC可以弥补这些方法的不足,因为HDC的优势正是DL的劣势所在,即HDC系统训练和部署轻便,且操作透明。在这里,HDC适合创建相对较小、高度专业化的知识系统。
最后,HDC也应用于医学成像[139]。例如,[140]使用功能磁共振成像(fMRI)图像进行生物性别分类,而[130]则使用计算机断层扫描(CT)检测与COVID-19相关的肺炎。
其他应用机会
除了HDC已经应用的领域外,我们还看到了在尚未探索的领域应用HDC的机会。系统发育学是HDC可以大放异彩的第一个领域。在高通量基因组学中,迫切需要新颖且高效能的系统发育方法,例如,基于宏观进化基因组数据将基因组特征和性状联系起来[141]。HDC将是一种强大且灵活的无比对方法[142],可能比传统的基于比对的方法(尽管前者可能准确性较低)更加灵活且计算性能更高,尤其是在序列非同源时。无比对方法有很多,但没有明确的最佳通用方法[143]。其中许多方法都是基于k-mer计数或数值表示,类似于HV嵌入的构建方式。例如,Li及其同事[144]发现,核苷酸组成的数值向量可以构建出整个生命树中的优秀系统发育树。超向量可以同时纳入k-mer的位置信息和物理化学信息。它们允许将各种数据源(基因组学、表达、形态学)纳入简单的向量中,这些向量可以直接比较以构建树。HDC的层次性质允许人们例如编码一个物种的所有基因变体,并将它们组合成一个代表它们在基因组中相对顺序的HV。这将允许人们研究具有复杂马赛克基因组的生物体,如噬菌体[145]。
我们看到的HDC(高密度编码)具有巨大潜力的最后一个应用领域是基因工程、生物技术和育种。这些项目通常是专业性很强的项目,往往具有专有性质,并且拥有大量的领域知识和实验数据。例如,酶工程将野生型序列数据与其生物背景相结合,进行各种突变实验以及活性和稳定性测定。这些信息必须整合到一个模型中,该模型必须正确纳入因果机制,以便突出显示最有前途的新突变。合成生物学具有模块化特征,即可以将基因、蛋白质结构域或细胞等基本部分组合成新的功能实体[146]。HDC的可组合性可能适合表示这种设计。
HDC的局限性
某些应用领域可能与HDC的相关性较低。这些领域需要学习非常复杂的关系,但知识有限,并且可以依赖适当的目标函数来优化复杂的黑盒函数:这正是DL(深度学习)擅长的领域。例如,蛋白质结构预测就是一个目标不符合HDC所能提供的优势的例子。第二个领域是生成性应用,如蛋白质设计。尽管HDC方法具有生成性,但我们认为蛋白质设计的目标需要更好地与HDC框架的优势相结合。一般来说,DL的优势在于学习从一个空间到另一个空间的映射,前提是这些空间充满了示例。然而,HDC在需要编码特定且已知的结构时表现出色。
一般来说,对于一些应用来说,获得与传统机器学习算法相当的性能可能很棘手。例如,在[71]中观察到,虽然HDC在文本、声音和生物信号分类等一维数据上可以达到最先进的水平,但其在图像等二维数据上的性能仍然较差。HV(高维向量)的大维度也带来了较大的内存占用,因此需要巧妙的实现或硬件加速才能达到高速。像基于核的方法一样,HDC表示数据的灵活性也有一个缺点,即可能需要大量的特征工程才能获得良好的编码。为了达到具有竞争力的预测性能,通常需要某种重训练方案。
结论
生物信息学中的一个关键思想是,具有统计意义的相似性表明存在生物信号,这一推理通常基于进化原理。许多基于比对的序列、结构或图算法都通过在大数据库中搜索同源物等利用这一原理。最近基于机器学习的方法,特别是基于深度学习的方法,在学习从复杂输入到输出域的通用映射方面取得了巨大成功,例如从序列到结构[5]。它们的强大功能和通用性几乎改变了生物信息学的每一个子领域。
本文讨论了高密度编码作为生物信息学家工具箱中额外工具的作用。高密度编码与基于搜索和基于学习的方法(如基于核的方法)有相似之处。高密度编码的优势很好地弥补了深度学习的一些弱点(反之亦然)。最初,高密度编码最显著的优势似乎是它的速度和计算效率,允许在并行硬件上进行训练,并在FPGA(现场可编程门阵列)等专用硬件上进行大规模在线推理[147]。对于不同的应用进行广泛的基准测试研究对于做出正确的设计选择至关重要。
未来的“非传统计算”策略可能会使用替代的物理、化学或生物过程进行计算,如光学[148]、反应扩散过程[149]或植物[150]。高密度编码非常适合这种形式的随机控制论计算模式[24]。
超维计算在利用代数运算符进行结构兼容性方面的能力,可能比其计算效率更有用。这些运算使生物信息学家能够在预测模型中编码先前的领域知识和问题结构。在数据可用性有限的情况下,这一点尤为重要[57]。当使用模型来指导干预措施时(如精准医疗和基因工程),问题结构尤为重要。最令人兴奋的进展可能是将深度学习(DL)中基于梯度的通用映射与超维计算(HDC)中的符号推理相结合,形成神经符号人工智能(neuro-symbolic AI)[151]。近期的研究强调了这种混合模型[90,152–155]的潜力,即将符号推理的组合能力与基于梯度的学习的灵活性和可扩展性相结合。
https://journals.plos.org/ploscompbiol/article/file?id=10.1371/journal.pcbi.1012426&type=printable