今天我们介绍由维也纳大学进化人类学系的Xin Huang与Aigerim Rymbekova发表在《Nature Reviews Genetics》上的工作。在群体遗传学中,各种物种和种群的大规模基因组数据的出现,为利用统计推断来理解驱动遗传多样性的进化力量提供了新的机会。然而,群体基因组学时代在分析大量基因组和变异方面提出了新的挑战。深度学习在涉及大规模数据的众多应用中表现出了最先进的性能。最近,深度学习方法在群体遗传学中得到了广泛的应用,在海量基因组数据集、强大的计算硬件和复杂的深度学习架构的推动下,它们已被用于识别种群结构、推断人口历史和研究自然选择。本文介绍了常见的深度学习架构,并为实现深度学习模型进行群体遗传推断提供了全面的指导。本文还从效率、鲁棒性和可解释性等方面讨论了深度学习在群体遗传学中的应用面临的挑战和未来的发展方向。
背景介绍
人口遗传学是一个有超过一个世纪历史的学科,利用种群内和种群间的遗传变异来探索进化过程或力量,如突变、重组、自然选择、遗传漂变和基因流。人口遗传学的主要目标是研究不同的进化力量及其相互作用如何塑造具有特定人口历史、空间结构和交配系统的遗传变异的种群动态。这些进化力量可以被数学建模为进化参数,遗传变异的动态可以用等位基因频率的变化或最近共同祖先的时间变化来表示。因此,人口遗传学推断是指使用不同方法来估计进化参数或识别由进化力量在种群中产生的遗传模式。
表1:最近用于群体遗传推断的开放源码的深度学习软件
人口遗传学推断中的典型任务包括推断人口模型、识别种群结构、研究空间遗传模式、估计突变或重组率、检测自然选择的特征和强度,以及调查混合或引入事件及其在基因组中的痕迹,如祖先比例和引入的变异或片段(表1)。
图1:群体遗传推断中传统和机器学习方法的工作流程
此外,模拟基因组数据是人口遗传学推断中的一个重要方法(图1)。随着高通量测序技术的出现,人口遗传学已经从使用小规模蛋白电泳变异或分子标记转向了大规模全基因组单核苷酸多态性或结构变异。例如,在人类人口遗传学中,千人基因组计划提供了大约9000万个变异的高质量基因型数据,涵盖了5个大陆上26个现代人类种群,样本规模相当可观。新的数据集,如艾伦古代DNA资源以及非人类物种的数据集,如1001基因组计划,不断变得可用。用于识别疾病原因的功能基因组学数据集,例如英国生物库和中国卡多里生物库,也可用于人口遗传学推断。然而,人类和传统的计算方法往往难以整合和解释来自不同人群和物种的大量变异和基因组,这在基因组学时代提出了新的挑战。
为了应对这些挑战,机器学习已经为人口遗传学提供了各种成功的计算策略,包括隐马尔可夫模型和主成分分析。一种有前途的机器学习方法是深度学习,它使用由多层人工神经元组成的人工神经网络(ANNs),进行数学运算并形成数据的分层表示,以生成预测,而无需依赖领域特定知识的数学建模。在过去的两十年里,由于新的大规模数据、硬件和模型创新,深度学习在各种机器学习任务中取得了最先进的性能,如计算机视觉和自然语言处理。深度学习在自动化复杂模式识别任务方面的惊人成功,已经推动了深度学习方法在存在大量数据但没有问题的分析解决方案的领域中的应用。在基因组学中,深度学习已经因其在各种问题上提供创新解决方案的潜力而受到欢迎,例如致病变异诊断和全基因组关联研究。
传统群体遗传推断
传统上,人口遗传学使用确定性和随机模型(图1)。确定性模型假定遗传变异的动态不受进化力量的随机波动影响,而随机模型更为现实,因为它们明确地模拟了进化过程中的随机效应。赖特-费歇尔模型——假设在没有突变、基因流和自然选择的影响下,种群大小恒定,随机交配,世代不重叠——是一种常用的随机模型,描述了种群内等位基因频率的变化。该模型可以理解为使用概率论的离散时间马尔可夫链的顺序过程。此外,可以通过扩散理论来近似连续马尔可夫过程,该理论通过近似基因变异的动态轨迹来模拟种群中随时间变化的动态过程。另一种建模进化的强大方法是联合共聚理论及其扩展,它们通过追踪样本中的遗传变异如何从一个共同的祖先向时间倒退而来,来模拟遗传变异的动态。一旦建立了概率模型,就可以使用模拟数据进行评估,并应用于实际数据的参数估计,包括最大似然估计、马尔可夫链蒙特卡洛和近似贝叶斯计算。
传统方法具有优点,包括在人口遗传学理论下的可解释性和通过增加模型复杂性来提高性能的可能性。然而,它们也有一些缺点。首先,人口遗传学模型通常为了计算可行性而简化了复杂的生物过程。例如,在推断人口模型时,基因组数据通常被假定为中性的;然而,自然选择可能会模仿由人口事件产生的遗传模式。其次,传统工具在高维和大规模数据集上可能表现不佳。例如,对于包含数百万个基因组的数据集中,使用扩展单体型同源性来高效检测自然选择信号,可扩展性成为一项挑战。第三,传统方法可能缺乏多功能性,因为其性能可能取决于诸如样本大小、基础进化模型和分段或非分段数据等因素。例如,为大规模数据设计的人类人口历史工具,在分析小样本大小或非人类物种数据时可能表现不佳。为了解决这些限制,深度学习可以提供创新解决方案,与基于传统方法的新方法不同。
什么是深度学习?
机器学习的主要目标是开发能够自动从数据中提取信息并找到特定任务解决方案的算法。监督学习、无监督学习和强化学习是机器学习的三种学习范式,还有一些中间类别,如自监督学习和半监督学习。监督学习是一种机器学习范式,通过使用由人类提供的带有已知标签的数据来训练机器学习模型,而无监督学习是使用没有标签的数据来训练机器学习模型。强化学习是一种机器学习范式,机器学习模型是通过带有奖励的行动进行训练的。在自监督学习中,机器学习模型首先通过学习从部分未标记输入中表示来预测剩余部分,然后用于下游机器学习任务。半监督学习首先通过监督学习在小型带标签的数据集上进行训练,然后通过无监督学习在大型未标记的数据集上进行训练。
图2:人工神经网络的通用架构和层
许多机器学习算法不是特定于领域的,允许研究人员通过选择现有的机器学习算法来概括其问题并解决它们。例如,从遗传数据中识别人群结构可以通过机器学习领域的聚类算法来解决,而无需人口遗传学理论,例如K均值算法。另一个机器学习算法,隐马尔可夫模型,在人口遗传学中有各种应用,包括推断历史人口规模变化、古代引入片段和自然选择的强度。传统的机器学习算法通常使用来自原始数据的领域特定知识来提取特征,例如基因变异。人口遗传学理论中的总结统计数据可以被视为从这些遗传变异数据集中提取的特征。然而,深度学习允许从原始数据中自动提取特征,因为人工神经网络包含具有不同可能操作的多层,形成深层次的体系结构(图2a)。在这里,我们概述了几种常见的人工神经网络架构,可以解决人口遗传学推断中的各种问题。
一般架构
FNNs是ANNs的最经典的架构。在FNNs中,信息仅通过隐藏层从输入层流向输出层(图2a)。在ANNs中,节点类似于神经元,它们接收来自前一层的输出,并通常使用非线性激活函数将其转化为下一层的输入。如果隐藏层或输出层中的每个节点都接收来自前一层所有节点的输出作为其输入,那么该层被认为是完全连接的或密集的(图2b)。完全连接的神经网络不等同于FNNs,尽管有时有这种说法。术语“完全连接”描述了层在ANN中如何与相邻层连接,而“前馈”描述了信息在ANN内部如何流动。因此,FNN不一定是完全连接的。例如,CNNs是一种类型的FNN,它不是完全连接的。此外,完全连接的神经网络不一定是前馈的,例如完全连接的RNNs。如果FNNs只包含完全连接的层,它们被称为多层感知器。完全连接的FNNs或多层感知器已经在各种人口遗传学问题中展示了ANNs的能力,包括推断人口历史和人群结构,检测混合事件,解剖自然选择下的基因组区域,估计突变率或从基因组中预测样本位置。
CNNs目前是人口遗传学中的主导架构。CNNs通常处理类似于网格的输入,包括图像、矩阵或张量。例如,基因型矩阵可以以类似图像的方式解释。标准的CNN包含多个卷积和池化层的系列,以在将原始数据传递到完全连接的层之前自动提取特征(图2a)。在卷积层中,由一组核心组成的滤波器通过数学运算称为卷积来捕获输入的小区域内的信息。卷积层的输出通常由修正的线性单元激活函数或相关的激活函数进行转换,然后通常馈送到池化层中,以组合相邻区域的信息(图2b)。池化层使CNNs对输入中的小平移具有不变性;但是,如果需要精确的空间信息,池化层可能是不必要的,就像AlphaGo中一样。CNNs还被用于许多人口遗传学任务,包括人口推断,本地起源推断,自然选择的检测或引入以及估计突变或重组率以及传播距离。此外,完全连接的FNN和CNN架构可以用作DGMs的组成部分。然而,将基因型矩阵视为图像可能会引发一些问题,因为图像像素是按行排列的,而在基因型矩阵中,基因组在人口遗传学中没有固有的顺序,并且进化参数对切换基因组顺序是不变的。这个问题可以通过使深度学习架构对顺序不敏感或从序列相似性中创建顺序来解决。因此,在将架构从机器学习转移到人口遗传学时,应该使用领域特定的知识来评估架构。
RNNs与FNNs不同,因为它们允许信息流回到先前的层或在同一层内流动,从而能够使用记忆跟踪来自先前输入的信息。RNNs通常处理顺序输入,包括语音、文本、音乐和生物序列。例如,RNN可以逐个位置接受基因变异并使用来自先前位置的信息确定一个位置的输出(图2c)。原则上,RNNs可以记住所有过去的信息;然而,在实践中,它们只能记住一定范围内的信息,这取决于数据和架构的性质。已经建立了几种技术,如长短时记忆和门控循环单元,用于增加记忆范围并提高RNN的性能。RNNs已经应用于人口遗传学任务,包括推断重组图和检测选择性横扫,表现优越或与基于传统方法的领先方法一样好。然而,在机器学习中,RNN的性能已被一种新颖的架构超越:Transformers。因此,未来的研究可能会考虑在人口遗传学中处理顺序数据时使用Transformers而不是RNNs。
GNNs利用图形作为输入。图形是一种模型,使用节点和边来表示实体之间的关系。例如,ANNs本身可以用图形来可视化,其中节点代表具有结果的操作,边代表参数(图2)。广泛使用了两种类型的GNNs。一种是图卷积网络,它将在类似网格的数据上的卷积层推广到具有图结构的数据(图2d)。另一种是图注意网络,它用自注意力层替换了图卷积层。图在人口遗传学中很常见。例如,祖先重组图用于重构带有重组的基因组之间的进化历史。单体型网络经常用于分析和可视化单体型之间的关系。GNNs已经用于从祖先重组图中进行人口推断,展示了GNNs在人口遗传学中的潜力。
深度生成模型
图3:深度生成模型
监督学习和无监督学习都可以应用上述架构。无监督学习具有挑战性,因为缺乏确定模型性能的基本真相。生成模型是一种无监督学习方法,可以学习训练数据的内在属性并创建类似但不在训练数据集中的数据。虽然非ANN生成模型如隐马尔可夫模型在人口遗传学中流行了几十年,但对于许多问题,DGMs更为强大。除了VAEs和GANs,其他DGMs包括能量基模型,它将数据的概率映射到能量函数,并将良好的预测与低能量和差预测与高能量相关联;标准化流,它从简单的初始概率分布开始逐渐逼近数据的复杂概率分布,通过一系列可逆和可微分的数学变换实现;以及自回归模型,它处理顺序数据,并使用来自先前步骤的信息作为输入一次进行预测。经典的能量基模型是受限玻尔兹曼机(图3a),它只包含一个可见(输入)层和一个隐藏层,两个层之间有连接,但在每个层内部没有连接;这种用于无监督学习的ANN最近已经用于模拟人类基因组。然而,受限玻尔兹曼机在机器学习中被其他DGMs超越,因为存在潜在的局限性,包括它们在训练效率和可扩展性方面的不足,实施各种任务的不灵活性以及不能生成高质量的输出。
VAEs基于自动编码器,包含编码器和解码器(图3b)。编码器将输入转化为称为编码的潜在表示,而解码器试图使用编码生成器生成的编码来复制原始输入。经典自动编码器用作非线性降维工具;然而,它们不是生成模型,因为它们只能重构其输入,不能从其编码生成有用的新数据。VAEs是通过最小化其编码的分布与正态分布之间的距离来扩展自动编码器的DGMs,通过从其编码的学习分布中随机抽样来合成有意义的新数据。与传统方法(如ADMIXTURE和ChromoPainter)相比,Autoencoders和VAEs更快、更可扩展,可用于估计血统比例;然而,与降维技术(如主成分分析)相比,它们在识别人群结构方面较慢。
GANs能够生成比VAEs更高质量的输出。典型的GAN包含一个生成器和一个鉴别器,它们进行竞争性过程。鉴别器试图区分生成器生成的合成数据和真实数据,而生成器旨在使用随机噪声创建令人信服的合成数据,使鉴别器难以识别伪造的数据(图3c)。GANs或类似GAN的架构已用于推断人口模型,检测选择性区,同时估计重组率和人口参数,以及从真实或模拟数据创建个体基因组。两个问题可能会限制GANs的实际应用。首先,由于在训练期间生成器和鉴别器之间的交替参数更新,训练GANs可能不稳定。如果鉴别器无法学习如何识别合成数据,生成器也将难以学习如何创建逼真的合成数据。其次,GANs可能不会生成多样化的输出。它们可能会忘记如何生成某些类型的数据,导致模式丢失,或者它们可能只生成有限种类的不同数据,导致模式崩溃,但仍然能够实现良好的性能(图3d)。VAEs和GANs的输出可以反映人口结构并产生与其训练数据类似的等位基因频谱;然而,它们可能无法充分捕捉与训练数据的连锁不平衡模式。
新颖架构与模型
图4:新颖架构与模型
随着深度学习领域的迅速发展,不断涌现出新的架构和DGMs。其
虽然我们都认为,唯有天才方能造出伟大的作品,但今天我想说,无名的工人同样能够制造出毫不逊色的杰作。
中一种有前途的架构是Transformers,它们也是深度FNNs(图4a)。它们与RNNs111有关,其核心组件是自注意力层(图4b),可以模仿卷积层。由自注意力层构建的架构在不同的机器学习任务中超越了CNNs和RNNs。甚至在生物学研究中,基于Transformer的模型在预测引起免疫逃逸并影响SARS-CoV-2病毒适应性的突变时也可以优于基于RNN的模型。除了自注意力外,还开发并应用了许多变种的注意机制在各种基于Transformer的架构中。第一个Transformer架构是为编码器-解码器架构的序列到序列学习而开发的。此外,编码器可以独立运行,类似于BERT(来自Transformers的双向编码器表示),解码器也可以单独使用,例如生成式预训练Transformers。Transformers对数据需求大,需要大量的计算存储器进行训练。因此,在没有足够的训练数据的情况下,它们可能不会在相同任务上超越其他深度学习架构。随着更多大规模数据集的可用,Transformers可能会在人口遗传学中充分利用大数据。扩散模型是近期在图像合成方面超越GANs的另一种有前途的DGMs。扩散模型包含前向扩散过程和反向去噪过程(图4c)。在前向过程中,输入逐渐添加噪音,而ANN尝试在反向过程中通过去除噪音来恢复输入。
上述架构可以单独使用或组合使用。例如,集成VAE和GAN可以比单独使用VAE模拟人类基因组获得更好的性能。此外,ANN可以与其他机器学习或统计推断方法相结合,例如,使用深度学习进行从等位基因频谱中推断的近似贝叶斯计算,或者使用ANN进行混合模型以推断适应性效应分布,即基因组中有害、中性和有益突变的比例。因此,有许多机会来提高基于深度学习的工具的性能,并使用不同的架构及其组合来探索人口遗传学中的各种问题。
如何实现深度学习模型?
模型优化
图5:实现的工作流程
深度学习方法的成功不仅依赖于架构知识,还依赖于深度学习模型的实施(图5)。
框1:数据预处理
在实施深度学习模型之前,应收集并可能对训练数据进行预处理(框1)。然而,应谨慎地对数据进行预处理,因为可能会引入人为瑕疵,使深度学习模型过拟合训练数据。此外,在优化之前需要指定一些称为超参数的参数,因为它们无法自动优化。这些超参数通常与架构本身相关,例如每个层中的神经元数量、隐藏层数量和激活函数的形式。超参数,如批量大小和迭代轮数,也参与训练过程。不同的超参数设置可能会影响深度学习模型的性能,可以通过网格搜索或随机搜索等方法在验证集上进行调整。
深度学习模型通常通过找到最小化与任务和数据相关的损失函数的最佳参数来进行优化。例如,均方误差,用于计算训练数据中所有真实值与模型预测值之间的平均距离,或者均方根误差适用于回归,而交叉熵可能适用于分类。通常,损失函数可以解释为深度学习模型中似然函数的负对数,因此通过最小化损失函数来优化深度学习模型可以视为一种最大似然方法。一种常见的优化方法是随机梯度下降与反向传播。随机梯度下降具有一个关键参数称为学习率,这也是一个重要的超参数,控制了在每次迭代中通过影响梯度大小更新深度学习模型参数的程度。较大的学习率可能使深度学习模型无法找到最佳参数,而较小的学习率可能减慢训练过程。因此,选择合适的学习率是具有挑战性的。一种解决方案是学习率调度器,可以在训练之前根据计划更改学习率。另一种解决方案是自适应学习率方法,可以根据训练期间的梯度变化来改变学习率,例如RMSProp和Adam。当损失函数缺乏可微性时,梯度的计算变得不可行。在这种情况下,可以探索替代的优化技术,包括蒙特卡罗方法和模拟退火方法等自然计算算法。此外,可以将深度学习模型的参数视为随机变量,并使用贝叶斯范式来估计它们的后验分布。然而,贝叶斯神经网络的计算复杂性通常高于经典神经网络。
有几种方法可以提高深度学习模型的性能。首先应检查是否在训练数据上欠拟合。增加深度学习模型的复杂性可以减少欠拟合,例如增加隐藏层或神经元的数量,或更改激活函数的形式。如果复杂的深度学习模型在训练数据上仍表现不佳,可以调整优化算法,例如使用不同的学习率或优化算法。当验证损失较小或可接受时,深度学习模型是最佳的,并且可以在测试数据上测量其性能(图5)。如果深度学习模型在测试数据上表现不佳,可能是因为在训练数据上过拟合。在这种情况下,可以通过减少复杂性来改进深度学习模型,即使会增加训练数据集中的误差。另一种策略可能是收集更多的训练数据或通过数据增强来修改现有的训练数据以增加训练数据的大小和多样性。正则化技术,包括权重衰减、随机失活和早停止,也可以通过向机器学习模型添加约束来减少过拟合。其他技术,包括交叉验证和批量归一化,也具有正则化效果,尽管它们的主要目的不是正则化。对于深度学习模型,最佳的正则化技术需要通过实验来确定。例如,对于可视化人口结构的VAE实现,随机失活和批量归一化似乎不起作用。在应用深度学习模型之前,可以使用简单模型,如逻辑回归或决策树,作为基准模型。如果基准模型达到可接受的性能,那么可能没有必要尝试深度学习方法,因为它们通常计算密集且不容易解释。如果深度学习模型无法胜过这些基准模型,应该改进或放弃实施方法。
效果评估
为了评估深度学习模型的性能,可以根据数据和任务选择不同的度量标准。监督学习任务可以分为回归、分类和结构预测。对于回归任务,除了均方误差或均方根误差之外,还可以使用相关系数来评估性能,例如皮尔逊或斯皮尔曼相关系数。对于二元分类,有几种常见的度量标准,包括准确率、精确度、召回率和F1分数,这些度量基于正确和错误的预测数量。这些可以通过混淆矩阵、接收者操作特征曲线或精确度-召回率曲线来可视化。由于不同的度量标准衡量深度学习模型性能的不同方面,因此应根据具体问题选择适当的度量标准。例如,在现代人类基因组中,古代引入的片段很少。在这种情况下,精确率和召回率可能是不错的选择,因为研究人员通常想知道推断出的引入片段有多少是真实的,以及总共可以识别多少个真实的引入片段。这些度量标准还可以扩展到多类分类和结构预测。
对于深度生成模型(DGMs),通常通过其输出的保真度和多样性来评估;然而,由于其似然函数的计算难以处理,评估其性能具有挑战性。尽管已经提出了各种各样的度量标准来评估DGMs,但关于最佳度量标准尚未达成一致意见。在图像合成中常见的度量标准不适用于人口遗传学推断,因为它们特定于在图像数据集上训练的人工神经网络(ANNs)。先前的研究使用了几种定性和定量方法来评估人口遗传学中的DGMs。定性度量可以通过比较真实数据和深度学习模型生成的合成数据之间的降维结果、评估人口遗传学理论的摘要统计数据,以及将DGMs的结果与使用传统方法的工具的结果进行对比来获得。定量度量可以通过区分判别器或其他监督分类器在区分真实数据和合成数据时的分类准确度来获得。一些研究还利用了最近邻对抗准确度来衡量过拟合和欠拟合,该指标计算了真实数据集和合成数据集中所有数据点与它们在最近邻中的最近邻之间的平均距离。得到的分数范围从0到1;分数<0.5表示过拟合,而分数>0.5表示欠拟合。对于概率分布,还可以通过定义精确度为随机从合成数据集的概率分布中取一个随机数据点,并确定其是否落在真实数据集的概率分布的支持范围内,以及将召回率定义为随机从真实数据集的概率分布中取一个随机数据点,并确定其是否落在合成数据集的概率分布的支持范围内来评估生成模型的性能。使用这些定义,可以使用相同的指标来评估不同类型数据的DGMs性能。这些度量标准可以进一步改进,以更好地评估和理解DGMs。此外,其他最近提出的用于评估GANs的进展也可能在人口遗传学中证明有用。
当前困境与未来方向
群体遗传学中深度学习的机会
大约30年前,人口遗传学的实验人工神经网络(ANNs)开始出现。后来的一项研究建议,当时ANNs的性能略优于传统的基于似然的方法,用于推断个体起源。深度学习目前的成功主要归功于大数据的迅猛增长、复杂深度学习架构的进步以及强大的并行计算硬件,例如图形处理单元。现在在人口遗传学中应用深度学习具有几个优势。首先,深度学习提供了用于近似复杂数学函数的算法方法。因此,深度学习不依赖于从人口遗传学理论导出的似然函数,并且允许端到端学习,这涉及训练机器学习模型直接从原始输入预测最终输出,而无需手动定义特征或将任务分成多个步骤。通过识别数据中存在的复杂非线性模式,而无需简化的模型假设,深度学习模型有潜力胜过传统方法。其次,深度学习可以有效地处理和提取高维数据,例如大规模的基因型向量或张量、摘要统计或许多复杂且高度相关的特征,而传统方法通常使用一两个摘要统计量。第三,深度学习可以高效地分析包含数十万个基因组的大规模数据,如在包含数十万个基因组的数据集中估计祖先比例等任务。第四,深度学习提供了一种多功能方法,能够处理人口遗传学中具有大或小样本大小的分阶段或未分阶段数据。因此,研究人员可以应用单一工具来分析不同类型的数据,因为未分阶段的小样本数据在非人类物种中很常见。第五,深度学习可以发现传统方法无法检测到的模式。例如,深度学习模型推断出一个与尼安德特人和丹尼索瓦人相关的第三个古代人类群体在东亚人、南亚人和大洋洲人分裂之前进行了引入事件,而之前在这些人群中仅检测到尼安德特人和丹尼索瓦人的血统。第六,深度学习提供了在研究中合成现实基因组的有效方法,而不会侵犯隐私。最后,许多深度学习方法在人口遗传学推断中尚未得到探索。例如,比较扩散模型与其他深度生成模型(DGMs)用于模拟基因组的性能将是有趣的。类似于文本到图像合成,未来的研究可以探索如何从纯文本描述生成人工基因组。此外,实施强化学习将是有趣的,因为它可以模仿进化,设计新颖的算法,或优化具有非可微损失函数的深度学习模型。此外,它可以使ANNs在超越人类专家的同时操作,无需来自人类知识的训练数据,类似于AlphaGo Zero。然而,人口遗传学数据和问题的本质带来了独特的障碍。
群体遗传学中深度学习的挑战
目前主要问题涉及深度学习模型的效率、稳健性和可解释性。训练深度学习模型可能会耗费大量时间和资源,因为需要对许多参数和超参数进行微调。机器学习的趋势包括通过增加层数和参数的数量来构建深度学习模型,例如ResNet可以包含1,000层,或者生成式预训练变换器和其他大型模型可以包含数十亿的参数。尽管这些复杂的深度学习模型在机器学习中取得了令人印象深刻的性能,但学术研究人员可能会因计算资源有限而难以训练类似的模型。为了提高训练效率,可以考虑几种策略。首先,重复使用预训练模型作为起点可能会有益处。最近开发的基于深度学习的工具提供了预训练模型,使用户可以直接分析用户定义的数据。这些预训练模型可以通过迁移学习减少训练数据和时间,同时提高类似问题的性能。例如,训练一个用于估计新生突变率的深度学习模型可以从另一个用于罕见突变的预训练深度学习模型开始,并且在从头开始训练的模型上表现出色。此外,基于文本的预训练大语言模型可以改善DNA序列的分类任务,表明可以重用来自其他领域的预训练模型。其次,开发高效的架构和算法仍然是一个开放性挑战。例如,网络压缩可以去除不必要的参数并减小深度学习模型的大小。元学习可以优化超参数、搜索神经网络架构并提高在有限数据上的各种任务的训练效率。第三,元启发式方法可以作为替代优化方法用于随机梯度下降。特别有趣的是神经进化,其中通过模仿进化来拟合深度学习模型的参数和超参数。
构建稳健的深度学习模型存在一些挑战。首先,训练数据的问题可以通过各种方式对深度学习模型的性能产生重大影响。一种形式是数据短缺,即使在与我们最接近的灵长类动物中,如非人类物种的基因组数据集中,也常常存在数据短缺。除了从非人类物种中收集更多数据之外,可能的解决方案包括few-shot学习,它使深度学习模型可以仅用少量训练样本进行训练,以及zero-shot学习,它允许深度学习模型对未见数据进行推断。例如,SALAI-Net是一种与物种无关的ANN,可以首先使用足够的人类数据进行训练,然后应用于非人类数据的局部祖先推断。另一个挑战是数据不平衡,即在分类中训练数据包含来自不同类别的数据的不均匀比例,可能会使模型性能偏向多数类别。在基因组特征中经常观察到数据不平衡,例如在重组或近期选择下的基因变异。可能的解决方案可能是在训练开始之前平衡训练数据中不同组的比例,或者开发可以使用不平衡数据集进行训练的深度学习模型,例如在检测带有introUNET的鬼引入片段的情况下。其他形式包括数据不匹配,即验证或测试数据与训练数据具有不同的统计特性,可能导致在未见数据上模型性能不佳。数据不匹配可能是由于模型错误规范化造成的。例如,根据标准Wright–Fisher模型开发的工具可能不适用于其他进化模型的数据。
其次,监督学习要求在训练数据中知道真实的进化参数,而在人口遗传学中通常是不可能的。一种解决方案可能是使用已知进化模型的模拟数据,因为随着更多可用的筛选数据集和人口统计模型,进行逼真模拟变得越来越可能。流行的人口遗传模拟器,如ms和msprime,是对中性Wright-Fisher模型的合并近似,尽管其他模拟器如SLiM可以随着时间向前演化,具有自然选择并实现非Wright-Fisher模型。因此,使用模拟数据训练的工具可能在真实数据上表现出不同的性能。例如,尽管在真实数据中背景选择很常见,但通常不考虑在模拟中,因为模拟这样的数据需要更多时间。然而,忽视背景选择可能会导致人口统计推断的偏差。领域适应可以帮助监督深度学习模型在没有背景选择或来自错误规范化的人口统计模型的训练数据上获得良好的性能。另一种解决方案可能是无监督学习,利用没有已知真实进化模型或参数的训练数据。此外,预训练和自监督学习可以提高模型的稳健性。
第三,深度学习模型和工具应该具有可重复性。目前,TensorFlow和PyTorch主导了深度学习框架。然而,一个框架中的好深度学习模型在另一个框架中可能表现不佳。即使在同一个框架内,由于硬件、随机种子或框架版本等因素,它们的性能也可能有所不同。因此,深度学习模型的开发应该进行记录和报告。未来的研究应考虑应用和开发工具,以提高可重复性和可重用性。开放神经网络交换提供了不同深度学习框架之间的互操作性的潜在解决方案。dnadna是一个最近开发的以PyTorch为后端的框架,旨在改进人口遗传学中基于深度学习的工具的可重复性和用户友好性。
第四,深度学习模型可能容易受到对抗攻击的影响。最近开发了一种创建对抗性基因组突变的技术,即使少量对抗性突变也可能会显着降低深度学习模型对局部祖先推断的性能。目前尚不清楚这种对抗攻击将如何影响其他人口遗传学任务中的深度学习。例如,不良行为者可能会轻微修改他们的数据,以愚弄深度学习工具,从而根据他们自己的利益构建错误的进化历史。因此,未来的研究应该在应用深度学习时调查对抗性攻击和防御技术。
最终,开发可解释的深度学习模型应该是目标,因为深度学习模型不仅应该提供准确的预测,还应该提供深刻的解释。降低深度学习模型的复杂性可能是帮助研究人员解释深度学习模型的策略之一。其他策略可能包括来自可解释人工智能(xAI)的技术,旨在理解深度学习模型的决策过程。这些技术可以是模型无关的或模型特定的,具体取决于它们对所有或特定机器学习算法的适用性,提供局部或全局解释。局部解释侧重于理解为什么ANN对给定输入给出特定输出,而全局解释旨在理解ANN如何利用从数据中学到的特征和参数进行预测。LIME(局部可解释模型无关解释)是一种常见的局部模型无关解释方法,可以通过从可解释模型(如线性模型和决策树)的近似来解释来自ANN的预测。其他常见的局部解释方法包括基于博弈论的SHAP(SHapley加性解释),以及针对CNN的saliency maps。这些方法可以通过在不同输入之间汇总局部解释来提供解释中性和非中性变异如何影响CNN的预测。此外,先前的人类知识可能会有用。例如,通过找到ANN的隐藏单元值与人口遗传学理论的摘要统计之间的相关性,可以解释深度学习模型。一些机器学习算法可以使用人口遗传学理论进行解释,例如主成分分析。因此,探索与人口遗传学理论相关的ANN并扩展人口遗传学理论以及在未来扩展人口遗传学理论与ANN相关的内容是有趣的。
结论
尽管深度学习仍有许多问题,但它在多任务环境下管理大规模多模态数据的能力为在这个基因组时代研究具有大量多种群和多组学数据集的多进化问题铺平了新的道路。同时,我们相信,生物学研究将继续启发和改进机器学习算法,就像遗传学家在一个世纪前为建立线性回归做出了贡献。
参考资料
Huang, X., Rymbekova, A., Dolgova, O. et al. Harnessing deep learning for population genetic inference. Nat Rev Genet (2023).
https://doi.org/10.1038/s41576-023-00636-3