如何有效的区分和理解RNN循环神经网络与递归神经网络

如何有效的区分和理解RNN循环神经网络与递归神经网络,第1张

NN建立在与FNN相同的计算单元上,以牺牲计算的功能性为代价来简化这一训练过程,其中信息从输入单元向输出单元单向流动,在这些连通模式中并不存在不定向的循环。FNN是建立在层面之上。

因此,为了创建更为强大的计算系统,我们允许RNN打破这些人为设定强加性质的规定,神经元在实际中是允许彼此相连的,两者之间区别在于:组成这些神经元相互关联的架构有所不同,我们还是加入了这些限制条件。事实上:RNN无需在层面之间构建,同时定向循环也会出现。尽管大脑的神经元确实在层面之间的连接上包含有不定向循环

神经网络神经网络是由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应。

神经网络中最基本的成分便是 神经元模型

M-P神经元模型:

感知机由两层神经元组成,分别为输入层、输出层。

以下是具体过程:

多层神经网络的拓扑结构如图:

如上图可知,多层网络由输入层、隐含层和输出层组成,顶层是输出层,底层是输入层,中间的便是隐含层。隐含层与输出层都具有功能神经元。

多层前馈神经网络的结构需要满足:

1、每层神经元必须与下一层完全互连

2、神经元之间不存在同层连接

3、神经元不可跨层连接

只需包含一个足够多神经元的隐层,就能以任意精度逼近任意复杂度的连续函数

BP神经网络由于学习能力太强大比较荣誉造成过拟合问题,故有两种策略来减缓过拟合的问题:

1、早停:将数据分成训练集和验证集,训练集学习,验证集评估性能,在训练过程中,若训练集的累积误差降低,而验证集的累积误差提高,则终止训练;

2、引入正则化:其基本思想是在误差目标函数中增加一个用于描述网络复杂程度的部分,有如连接权和阈值的平方和:

其中λ∈(0,1)用于对累积经验误差与网络复杂度这两项进行折中,常通过交叉验证法来估计。

神经网络的训练过程可看作一个参数寻优的过程,即寻找到适当的参数使得E最小。于是我们时常会谈及“全局最小”和“局部最小”。

1、全局最小:即全局最小解,在参数空间中,所有其他点的误差函数值均大于该点;

2、局部最小:即局部最小解,在参数空间中,其邻近的点的误差函数值均大于该点。

我们要达到局部极小点,很容易,只要满足梯度为零的点便是了,局部极小点可以有多个,但全局最小点只有一个。显然,我们追求的是全局最小,而非局部极小,于是人们通常采用以下策略来试图“跳出”局部极小,使其接近全局最小:

1、以多组不同参数值初始化多个神经网络,按标准方法训练,在迭代停止后,取其中误差最小的解作为最终参数;

2、使用随机梯度下降(在计算梯度时加入了随机因素),使得在局部最小时,计算的梯度仍可能不为0,从而可能跳出局部极小,继续进行迭代;

3、“模拟退火”技术,在每一步都以一定的概率接受比当前解更差的结果,但接受“次优解”的概率要随着迭代进行,时间推移而逐渐减低以确保算法的稳定。

1、RBF网络

单隐层前馈神经网络 ,使用径向基函数作为隐层神经元激活函数,输出层是对隐层神经元输出的线性组合。RBF网络可表示为:

2、ART网络

竞争型学习 (神经网络中一种常用的 无监督学习 策略),由 比较层、识别层、识别阈值和重置模块 组成。接收到比较层的输入信号后,识别层神经元相互竞争以产生获胜神经元,最简单的方式就是计算输入向量与每个识别层神经元所对应的模式类代表向量间的距离,距离小者获胜。若获胜神经元对应的代表向量与输入向量间 相似度大于识别阈值 ,则将输入样本归为该代表向量所属类别,网络 连接权 也会进行 更新 以保证后面接收到相似的输入样本时该模式类会计算出更大的相似度,使得这样的样本能够归于一类;如果 相似度不大于识别阈值 ,则 重置模块 会在 识别层 加一个神经元,其 代表向量 设置 为当前 输入向量

3、SOM网络

竞争型学习的无监督神经网络 ,将高维输入数据映射到低维空间(通常是二维),且保持输入数据在高维空间的拓扑结构。

4、级联相关网络

结构自适应网络

5、Elman网络

递归神经网络

6、Boltzmann机

基于能量的模型,其神经元分为显层与隐层,显层用于数据输入输出,隐层被理解为数据的内在表达。其神经元皆为布尔型,1为激活,0为抑制。

理论上,参数越多的模型其复杂程度越高,能完成更加复杂的学习任务。但是复杂模型的训练效率低下,容易过拟合。但由于大数据时代、云计算,计算能力大幅提升缓解了训练效率低下,而训练数据的增加则可以降低过拟合风险。

于是如何增加模型的复杂程度呢?

1、增加隐层数;

2、增加隐层神经元数

如何有效训练多隐层神经网络?

1、无监督逐层训练:每次训练一层隐节点,把上一层隐节点的输出当作输入来训练,本层隐结点训练好后,输出再作为下一层的输入来训练,这称为预训练,全部预训练完成后,再对整个网络进行微调。“预训练+微调”即把大量的参数进行分组,先找出每组较好的设置,再基于这些局部最优的结果来训练全局最优;

2、权共享:令同一层神经元使用完全相同的连接权,典型的例子是卷积神经网络。这样做可以大大减少需要训练的参数数目。

深度学习 可理解为一种特征学习或者表示学习,是通过 多层处理 ,逐渐将初始的 低层特征表示 转化为 高层特征表示 后,用 简单模型 即可完成复杂的分类等 学习任务

深度学习研究及其在生物医药领域的潜在应用

深度学习已经在各种生物学应用中取得成功。在本节中,我们回顾了在各个研究领域进行深度学习的挑战和机会,并在可能的情况下回顾将深度学习应用于这些问题的研究(表1)。我们首先回顾了生物标志物开发的重要领域,包括基因组学,转录组学,蛋白质组学,结构生物学和化学。然后,我们回顾一下药物发现和再利用的前景,包括使用多平台数据。

生物标志物。生物医学的一个重要任务是将生物学数据转化为反映表型和物理状态(如疾病)的有效生物标志物。生物标志物对于评估临床试验结果[18]以及检测和监测疾病,特别是像癌症这样的异质性疾病,是至关重要的[19,20]。识别敏感特异性生物标志物对于现代转化医学来说是一个巨大的挑战[21,22]。计算生物学是生物标志物发展。事实上,从基因组学到蛋白质组学都可以使用任何数据来源;这些在下一节中讨论。

基因组学。新一代测序(NGS)技术已经允许生产大量的基因组数据。这些数据的大部分分析都可以用现代计算方法在计算机上进行。这包括基因组的结构注释(包括非编码调控序列,蛋白质结合位点预测和剪接位点)。

基因组学的一个重要分支是宏基因组学,也被称为环境,生态基因组学或社区基因组学。NGS技术揭示了未经培育且以前没有得到充分研究的微生物的自然多样性。

宏基因组学中有几个生物信息学挑战。一个主要挑战是序列数据的功能分析和物种多样性的分析。深信念网络和经常性神经网络的使用已经允许通过表型分类宏基因组学pH数据和人类微生物组数据。 与基线方法相比,这些方法并没有提高分类准确性作为强化学习,但确实提供了学习数据集的分层表示的能力[23]但是,Ditzler等强调DNN可以改善现有的宏基因组学分类算法,特别是在大数据集和适当选择网络参数的情况下。

表1 深度学习技术应用于不同类型生物医学数据的总结

应用

数据源

研究目的

DL技术

准确率

利用深度学习增强癌症诊断和分类[28]

13种不同的癌症基因表达数据集(13 different gene expression data sets of cancers)

癌症检测,癌症类型分类

稀疏和堆栈自动编码器+ Softmax回归

对于每个数据集的准确度都比基准更好

深度学习组织调节拼接代码[32](Deep Learning of the Tissue-Regulated Splicing Code)

从RNA-Seq数据分析11 019个小鼠替代外显子(11 019 mouse alternative exons profiled from RNA-Seq data)

拼接模式识别

自动编码器+ DNN(3层)+薄荷(超参数选择)

AUC优于基线准确度

深卷积神经网络注释基因表达模式的小鼠脑[30]

由Allen Institute for Brain Science的小鼠脑的四个发育阶段的ISH图像

基因表达注释

CNN(Overfeat)

AUC=0894

多模式深度学习方法的多平台癌症数据的综合数据分析[52]

卵巢癌和乳腺癌数据集(ovarian and breast cancer data sets)

聚集癌症患者

DBNs

lncRNA-MFDL:通过融合多个特征和使用深度学习鉴定人类长的非编码RNA[34]

Gencode和RefSeq的蛋白质编码和非编码序列(protein-coding and noncoding sequences from Gencode and RefSeq)

鉴定长的非编码RNA

lncRNA-MFDL(深层堆叠网络,每个单元DNN)

ACC = 971%

用于宏基因组分类的多层和递归神经网络[23]

pH微生物组测序数据集和人微生物组测序数据集(pH microbiome sequencing data set and human microbiome sequencing data set)

宏基因组分类

MLP, DBN, RNN

comparison

Multi-Level Gene/MiRNA Feature Selection using Deep Belief Nets and Active Learning[27]

来自6种癌症的MiRNA表达数据(MiRNA expression data from 6 type of cancers)

Gene/MiRNA特征选择(基因表达)

MLFS(DBN +特征选择+无监督主动学习)(MLFS (DBN + feature selection + unsupervised active learning))

F1 = 847%

成对输入神经网络用于目标配体相互作用预测[45]

sc-PDB数据库(sc-pdb:用于鉴定蛋白质中“可药用”结合位点的变化和多样性的数据库)

蛋白质 - 配体预测

PINN (SVD + Autoencoder/RBM)

AUC = 0959

非编码变量与深度学习序列模型的预测效应[49]

来自ENCODE和Roadmap Epigenomics项目的160种不同TF,125种DHS谱和104种组蛋白标记谱的690 TF结合谱

从序列中预测非编码变异效应

DeepSEA (CNN)

AUC = 0923 (histone)

通过深度学习预测DNA和RNA结合蛋白的序列特异性[48]

506 ChIP-seq实验,DREAM5 TF-DNA基序识别挑战

DNA和RNA结合蛋白的特异性分类

DeepBind(CNN)

train, AUC = 085; validation,

AUC > 07

具有双模深信道网络的蜂窝信号系统的跨物种学习[36]

来自SBV IMPROVER挑战的磷酸化蛋白质组学数据

跨物种学习(模拟细胞信号系统)

bDBN (bimodal DBN) and

sbDBN (semirestricted bimodal

DBN)

AUC = 093

表达数量性状基因(eQTL)的鉴定与阐明及其调控机制的深入研究[35]

GEUVADIS(来自从参与1000基因组项目的个体中提取的337个淋巴母细胞系的选择的RNA-Seq和全基因组范围的SNP-阵列数据的组合)

确定eQTL

MASSQTL(DNN)

AUC = 085

建立RNA结合蛋白靶点结构特征的深度学习框架[43]

源自doRiNA的24个数据集(转录后调节中的RNA相互作用数据库)

预测RNA结合蛋白的结合位点(RBP靶标识别)

DBN(多模式DBN)

AUC = 0983 on PTB HITS-CL

DeepCNF-D:通过加权深度卷积神经场预测蛋白质有序/无序区域[42]

来自CASP的CASP9, CASP10数据集(蛋白质结构预测的关键评估)

预测蛋白质有序/无序区域

DeepCNF (CRF + CNN)

AUC = 0855 on CASP9

AUC = 0898 on CASP10

用深度神经网络分割微阵列[29]

两个数据集,来自2006年Lehmussola等人的微阵列图像

微阵列分割

CNN

MAE = 025

深度学习药物引起的肝损伤[46]

四个数据集,化合物,化学结构注释DILI阳性或DILI阴性(four data sets, compounds, chemical structure annotated DILI-positive or DILI-negative properties)

药物性肝损伤预测

RNN(递归神经网络)

AUC = 0955

从头算蛋白质二级结构预测的深度学习网络方法[38]

训练,Protein Data Bank; 验证,CASP9,CASP10(蛋白质结构预测的关键评估)

从头算蛋白质二级结构预测

DNSS(多模RBM)

Q3 = 907%, Sov = 742%

蛋白质接触图预测的深层架构[39]

ASTRAL database

蛋白质接触图预测

RNN + DNN

ACC ∼ 30%

用深机器学习网络建模药物样分子的环氧化作用[47]

Accelrys代谢物数据库(AMD):389个环氧化分子,811个非氧化分子(Accelrys Metabolite Database (AMD): 389 epoxidized molecules, 811 nonepoxidized molecules)

建模分子的环氧化性质

CNN

AUC better than baseline accuracy

DNdisorder:使用增强和深度网络预测蛋白质紊乱[41]

DISORDER723, CASP9, CASP10

预测蛋白质有序/无序区域

RBM

AUC better than baseline

accuracy

Basset:用深度卷积神经网络学习可访问基因组的规则代码[50]

来自ENCODE和Epigenomics Roadmap项目的164个细胞类型的DNasel-seq数据

学习DNA序列的功能活动

CNN

AUC = 0892

a首字母缩写词:CNN=卷积神经网络,DNN=深度神经网络,RNN=递归神经网络,DBN=深信念网络,RBM=限制玻尔兹曼机器,MLP=多层感知器,MLFS=多级特征选择,PINN= 网络,CRF=条件随机场。

转录。转录组学分析利用各种类型转录物(信使RNA(mRNA),长非编码RNA(lncRNA),微小RNA(miRNA)等)丰度的变化来收集各种功能信息,从剪接代码到各种疾病的生物标志物。

转录组学数据通常从不同类型的平台(各种微阵列平台,测序平台)获得,其不同之处在于测量的基因组和信号检测方法。许多因素导致基因表达数据的变异性。因此,即使对于单个平台分析也需要标准化。 跨平台分析需要规范化技术,这可能是一个重大挑战。由于DNN具有较高的泛化能力,因此特别适合于跨平台分析。他们也能很好地处理基因表达数据的其他一些主要问题,比如数据集的大小以及对降维和选择性/不变性的需求,下面我们将回顾几个已经使用的DNN 用不同类型的基因表达数据来获得不同程度的成功。

表格数据应用程序。基因表达数据可以表示的一种方式是作为矩阵的表格形式,其包含关于转录物表达的定量信息。这些数据是高维度的,由于数据中的信噪比损失,使得统计分析成为问题。[25]

高维数据可以通过两种方式处理:

I 降维:

A特征提取,例如用SVM或随机森林算法;

B特征子集选择;

C途径分析;

II 使用对高维度较不敏感的方法,如随机森林或深层信念网络。

诸如主成分分析(PCA),奇异值分解,独立分量分析或非负矩阵分解等方法是常见的前沿方法。然而,上述方法将数据转换成许多难以用生物学解释的组件。此外,这种降维方法基于基因表达谱提取特征而不管基因之间的相互作用。通路分析可以减少变量的数量,减少错误率并保留更多的生物相关信息。[25,26]

深度学习在处理高维基质转录组学数据方面也取得了一些成功。在另一种方法中,将基因表达的特征与非编码转录物如miRNA的区域一起提取; 这是通过使用深度信念网络和主动学习来实现的,其中使用了深度学习特征提取器来减少六个癌症数据集的维度,并且胜过了基本特征选择方法[27]。主动学习与分类的应用提高了准确性,并且允许选择与癌症相关的特征(改进的癌症分类),而不仅仅基于基因表达谱。使用miRNA数据的特征选择是使用与先前选择的特征子集的目标基因的关系实施的。

在另一个深度学习应用中,Fakoor等人利用自编码器网络进行推广,并将其应用于使用从具有不同基因集合的不同类型的微阵列平台(Affimetrix家族)获得的微阵列基因表达数据的癌症分类[28]。他们通过PCA和非监督非线性稀疏特征学习(通过自动编码器)结合使用降维来构建用于微阵列数据的一般分类的特征。癌症和非癌细胞分类的结果显示出了重要的改进,特别是使用监督微调,这使得特征不那么通用,但即使对于没有跨平台标准化的数据也能获得更高的分类准确性。自动编码器的全球泛化能力有助于使用不同微阵列技术收集的数据,因此可能对来自公共领域的数据进行大规模综合分析有前途。

图像处理应用。基因表达也可以以可视形式存储为图像,例如来自微阵列的图像荧光信号或RNA原位杂交荧光或放射性信号。 在一些应用中,以图像处理性能优越著称的CNN已经显示出改善这些图像分析的潜力。

在微阵列分析中,由于斑点大小,形状,位置或信号强度的变化,检测信号和识别荧光斑点可能是具有挑战性的,并且荧光信号强度通常对应于基因或序列表达水平差。在对这个问题的深度学习技术的一个应用中,CNN被用于微阵列图像分割,并且在准确性方面显示出类似于基准方法的准确度的结果,但是训练更简单并且对计算源的要求更少。[29]

将CNN应用于基于图像的基因表达数据的另一个机会是RNA原位杂交,这是一种繁琐的技术,当允许这样的 *** 作时,能够使基因表达在一组细胞,组织切片或整个生物体中定位和可视化。这种方法促进强大的纵向研究,说明发展过程中的表达模式的变化。它被用于构建详细的Allen DevelopmentMouse Brain Atlas,其中包含超过2000个基因的表达图谱,每个基因在多个脑部分中进行说明。过去,这些手动标注是耗时的,昂贵的,有时也是不准确的。然而,最近,Zeng等人使用深度预训练CNN进行自动注释[30]。要做到这一点,神经网络模型训练原始自然原位杂交图像的不同层次的发展中国家的大脑没有关于坐标(空间信息)的确切信息;这种技术在四个发展阶段的多个大脑水平上实现了卓越的准确性。

剪接。深度学习的另一个应用领域是剪接。剪接是在真核生物中提供蛋白质生物多样性的主要因素之一;此外,最近的研究显示“拼接代码”与各种疾病之间的联系[31]。然而,现代科学仍然不能全面地理解控制剪接调控的机制。剪接调节的现代概念包括转录水平,特定信号调节序列元件(剪接增强子或沉默子)的存在,剪接位点的结构和剪接因子的状态(例如特定位点的磷酸化可能改变剪接因子活性)。所有这些因素使分析变得复杂,因为它们之间存在大量元素和复杂的非线性相互作用。现有的拼接预测软件需要高通量测序数据作为输入,并且面临着原始读取比常规基因短的问题,以及基因组中假性基因的高重复水平和存在。因此,拼接机制的分析算法很慢,需要高度的组合计算来源,深度学习可能会在这方面提供改进。在使用五个组织特异性RNA-seq数据集的一个深度学习应用中,使用隐变量来开发DNN以用于基因组序列和组织类型中的特征,并且被证明优于贝叶斯方法预测个体内和组织间的组织剪接外显子拼接的转录本百分比的变化(拼接代码度量)[32]。

非编码RNA。非编码RNA是生物学中的另一个问题,需要复杂的计算方法,如深度学习。非编码RNAs非常重要,涉及转录,翻译和表观遗传学的调控[33],但是它们仍然难以与编码蛋白质的RNA区分开来。对于短的非编码RNA,这个任务已经很好地解决了,但是对于lncRNA来说这是相当具有挑战性的。lncRNAs组成异构类,可能含有推定的复制起点(ORF),短的蛋白质样序列。开发了一种新的深层次的学习方法,称为lncRNAMFDL,用于鉴定lnc-RNAs,使用ORF,k相邻碱基,二级结构和预测的编码结构域序列等多种特征的组合[34]。该方法使用从Gencode(lncRNA)和Refseq(蛋白质编码mRNA数据)的序列数据中提取的五个单独特征,并且在人类数据集中导致971%的预测准确性。

表达量性状基因座分析。最后,数量性状基因座(QTL)分析有潜力进行深入的学习。 QTL分析鉴定含有多态性的遗传基因座,所述多态性导致复杂的多基因性状(例如,体重,药物反应,免疫应答)的表型变异。显示遗传变异的一个这样的“性状”是给定组织和/或条件中任何给定基因的表达或转录本丰度。表达QTL(eQTL)是影响转录本丰度的遗传变异的基因座。 eQTL分析已经导致了对人类基因表达调控的洞察力,但面临着许多挑战。在局部调节表达的eQTL(顺式-eQTL)相对容易用有限数量的统计测试来鉴定,但是调节基因组中其它位置的基因表达的位点(trans-eQTL)更难以检测到。最近,为了解决使用各种编码的生物特征(诸如物理蛋白质相互作用网络,基因注释,进化保守,局部序列信息以及来自ENCODE项目的不同功能元件)的反式eQTL预测问题的深度学习方法MASSQTL[35]被提出。DNN利用来自其各自交叉验证折叠的9个DNN模型,优于其他机器学习模型,并且提供了对基因表达的调控架构的基础的新机制。深解码系统也被用来对trans-eQTL特征向量进行聚类,然后通过t-SNE降维技术进行可视化。

蛋白质组学。与转录组学相比,蛋白质组学是一个相当欠发达的研究领域,数据依然稀少,用于分析的计算方法较少。即使有相似的信号编码和传输机制,人类蛋白质组学数据的缺乏以及将模型生物体结果转化为人类的困难也使分析变得复杂。

深度学习可以以多种方式使蛋白质组学受益,因为一些方法不需要像其他机器学习算法那样的大量培训案例。深度学习方法的其他优点是他们建立数据的分层表示,并从复杂的相互作用中学习一般特征,从而有利于蛋白质的蛋白质组学和网络分析。例如,使用磷酸化数据,双峰深信念网络已被用于预测大鼠细胞对相同刺激的刺激的细胞反应[36]。与传统的管线相比,开发的算法获得了相当的准确性。

结构生物学和化学。结构生物学包括蛋白质折叠分析,蛋白质动力学,分子建模和药物设计。二级和三级结构是蛋白质和RNA分子的重要特征。对于蛋白质,适当的结构测定对于酶功能预测,催化中心和底物结合的形成,免疫功能(抗原结合),转录因子(DNA结合)和转录后修饰(RNA结合)是重要的。丧失适当的结构会导致功能丧失,并且在某些情况下会导致可能导致神经退行性疾病(如阿尔茨海默病或帕金森病)的异常蛋白质的聚集。[37]

基于复合同源性的比较建模是预测蛋白质二级结构的一种可能方式,但是受现有注释良好的化合物的量限制。另一方面,机器学习从头预测是基于公认的具有公知结构的化合物的模式,但是还不够精确以至于不能实际使用。从头开始使用深度学习方法通过使用蛋白质测序数据改进了结构预测[38]。同样,深度学习已经被应用于使用ASTRAL数据库数据和复杂的三阶段方法来预测二级结构元素和氨基酸残基之间的接触和取向[39]。所使用的方法是分析偏倚和高度可变数据的有效工具。

三维结构的不变性在功能上也是重要的。然而,有几种蛋白质没有独特的结构参与基本的生物过程,如细胞周期的控制,基因表达的调控,分子信号传递。此外,最近的研究显示一些无序蛋白质的显着性[37]; 许多癌基因蛋白具有非结构域,并且错误折叠蛋白的异常聚集导致疾病发展[40]。这种没有固定三维结构的蛋白被称为固有无序蛋白(IDP),而没有恒定结构的结构域被称为固有无序区(IDR)。

许多参数将IDP / IDR与结构化蛋白质区分开来,从而使预测过程具有挑战性。这个问题可以使用深度学习算法来解决,这些算法能够考虑各种各样的特征。2013年,Eickholt和Cheng发表了一个基于序列的深度学习预测指标DNdisorder,与先进的预测指标相比,改进了对无序蛋白质的预测[41]。后来在2015年,Wang等人提出了一种新的方法,DeepCNF,使用来自蛋白质结构预测的临界评估(CASP9和CASP10)的实验数据,能够准确预测多个参数,如IDPs或具有IDR的蛋白质。DeepCNF算法通过利用众多特征,比基线单从头(从头算)预测指标执行得更好[42]。

另一类重要的蛋白质是结合单链或双链RNA的RNA结合蛋白。 这些蛋白质参与RNA的各种转录后修饰:剪接,编辑,翻译调控(蛋白质合成)和聚腺苷酸化。RNA分子形成不同类型的臂和环,需要识别和形成RNA和蛋白质之间连接的二级和三级结构。RNA的二级和三级结构是可预测的,并且已经被用于建模结构偏好偏好和通过应用深度信念网络预测RBP的结合位点[43]。深度学习框架在真正的CLIP-seq(交联免疫沉淀高通量测序)数据集上进行了验证,以显示从原始序列和结构分布中提取隐藏特征的能力,并准确预测RBP的位点。

药物发现和再利用。计算药物生物学和生物化学广泛应用于药物发现,开发和再利用的几乎每个阶段。过去数十年来,不同的研究团体和公司在全球范围内开发了大量用于计算机模拟药物发现和目标延伸的计算方法,以减少时间和资源消耗。虽然存在许多方法[44],但是还没有一个是最优的(例如,无法执行通量筛选或者通过蛋白质类别进行限制),现在一些研究表明深度学习是一个重要的考虑方法(表1)。

药物发现的重要任务之一就是预测药物靶点的相互作用。 靶标(蛋白质)通常具有一个或多个与底物或调节分子的结合位点; 这些可以用于建立预测模型。 然而,包括其他蛋白质的成分可能会给分析带来偏见。成对输入神经网络(PINN)接受具有从蛋白质序列和靶分布获得的特征的两个载体的能力被Wang等人用来计算靶标-配体相互作用[45]。神经网络的这种优势比其他代表性的靶标-配体相互作用预测方法有更好的准确性。

药物发现和评估是昂贵,耗时且具有风险; 计算方法和各种预测算法可以帮助降低风险并节省资源。一个潜在的风险是毒性; 例如,肝毒性(肝毒性)是从生产中去除药物的常见原因。用计算方法预测肝毒性可能有助于避免可能的肝毒性药物。使用深度学习,可以有效地确定原始化学结构的化合物毒性,而不需要复杂的编码过程[46]。使用CNN也可以预测诸如环氧化的性质,这意味着高反应性和可能的毒性; 这是休斯等人首次实施的。通过使用环氧化分子和氢氧化物分子的简化分子输入线入口规格(SMILES)格式数据作为阴性对照[47]。

多平台数据(Multiomics)。使用多平台数据的能力是深度学习算法的主要优势。 由于生物系统复杂,具有多个相互关联的元素,基因组学,表观基因组学和转录组学数据的系统级整合是提取最有效且有生物学意义的结果的关键。整合过程在计算上不是微不足道的,但收益是生物标志物特异性和灵敏度比单一来源方法的增加。

计算生物学中需要分析组合数据的主要领域之一是计算表观遗传学。有联合分析基因组,转录组,甲基化组特征和组蛋白修饰提供了准确的表观基因组预测。

一些研究人员已经开发出深度学习方法,可用于分析来自多个来源的数据(表1)。Alipanahi等人开发了基于深度学习的方法DeepBind(toolsgenestorontoedu/deepbind/),以在各种疾病中计算核苷酸序列结合转录因子和RNA结合蛋白的能力,并表征单点突变对结合特性的影响。DeepBind软件受CNN启发,对技术不敏感; 相反,它与从微阵列到序列的定性不同形式的数据是相容的。CPU的实现也允许用户并行化计算过程[48]。在另一个基于CNN的应用程序中,Zhou和Troyanskaya设计了DeepSEA框架来预测染色质特征和疾病相关序列变异的评估。与其他计算方法不同,他们的算法能够捕获每个结合位点的大规模上下文序列信息,用于注释从头序列变异体[49]。开发了类似的CNN管线,揭示了序列变异对染色质调控的影响,并对DNase-seq(DNase I测序)数据进行了培训和测试[50]。一种名为Bassed的深度学习软件优于基线方法,并且在所有数据集上达到平均AUC0892。最后,随着深层特征选择模型的发展,深度学习被用于识别主动增强器和促进器,该模型利用了DNN对复杂非线性相互作用进行建模的能力,并学习了高层次的广义特征[51]。模型从多平台数据中选择特征,并按照重要性进行排序。在这些应用中,深度学习方法是染色质性质的更敏感和更有力的预测因子,也是复杂生物标志物发展的关键。

癌症是一组异质性疾病的广泛名称,其中一些是由基因突变引起的,因此使用多平台数据的癌症分类可以揭示潜在的病理学。Liang等人开发了一个具有多平台数据的深层信念网络模型,用于癌症患者的聚类[52]。使用受限玻尔兹曼机对每种输入模式定义的特征进行编码。这种方法的一个优点是深层信念网络不需要具有正态分布的数据,因为其他聚类算法和遗传(生物)数据不是正态分布的。

最后,从自然语言处理的角度来看,深度学习在通过巨大的非结构化(研究出版物和专利)和结构化数据(知识注释图,如基因本体论[53]或Chembl[54])浏览时,通过检验假设的合理性。这些数据库一起形成了一个庞大的,多平台的数据集,如果结合起来,这些数据集将更加丰富和全面。

总之,现代生物数据的庞大规模,对于以人为本的分析来说太庞大而复杂。 机器学习,特别是深度学习与人类专业知识相结合,是将多个大型多平台数据库完全集成的唯一途径。 深度学习使人类能够做到以前无法想象的事情:具有数百万输入的图像识别,语音识别以及接近人类能力的语音自动化。 虽然深度学习和特别是无监督的深度学习仍处于起步阶段,特别是在生物学应用方面,但最初的研究支持它作为一种有希望的方法,尽管在实施中不受限制和挑战,但可以克服生物学数据的一些问题, 对数百万间接和相互关联的疾病机制和途径的新见解。

​ 

1Perceptron(P) 感知机

1感知机 

感知机是我们知道的最简单和最古老的神经元模型,它接收一些输入,然后把它们加总,通过激活函数并传递到输出层。

2Feed Forward(FF)前馈神经网络

 2前馈神经网络

前馈神经网络(FF),这也是一个很古老的方法——这种方法起源于50年代。它的工作原理通常遵循以下规则:

1所有节点都完全连接

2激活从输入层流向输出,无回环

3输入和输出之间有一层(隐含层)

在大多数情况下,这种类型的网络使用反向传播方法进行训练。

3Radial Basis Network(RBF) RBF神经网络

 3RBF神经网络

RBF 神经网络实际上是 激活函数是径向基函数 而非逻辑函数的FF前馈神经网络(FF)。两者之间有什么区别呢?

逻辑函数--- 将某个任意值映射到[0 , 1]范围内来,回答“是或否”问题。适用于分类决策系统,但不适用于连续变量。

相反, 径向基函数--- 能显示“我们距离目标有多远”。 这完美适用于函数逼近和机器控制(例如作为PID控制器的替代)。

简而言之,RBF神经网络其实就是, 具有不同激活函数和应用方向的前馈网络 。

4Deep Feed Forword(DFF)深度前馈神经网络

4DFF深度前馈神经网络 

DFF深度前馈神经网络在90年代初期开启了深度学习的潘多拉盒子。 这些依然是前馈神经网络,但有不止一个隐含层 。那么,它到底有什么特殊性?

在训练传统的前馈神经网络时,我们只向上一层传递了少量的误差信息。由于堆叠更多的层次导致训练时间的指数增长,使得深度前馈神经网络非常不实用。 直到00年代初,我们开发了一系列有效的训练深度前馈神经网络的方法; 现在它们构成了现代机器学习系统的核心 ,能实现前馈神经网络的功能,但效果远高于此。

5Recurrent Neural Network(RNN) 递归神经网络

5RNN递归神经网络 

RNN递归神经网络引入不同类型的神经元——递归神经元。这种类型的第一个网络被称为约旦网络(Jordan Network),在网络中每个隐含神经元会收到它自己的在固定延迟(一次或多次迭代)后的输出。除此之外,它与普通的模糊神经网络非常相似。

当然,它有许多变化 — 如传递状态到输入节点,可变延迟等,但主要思想保持不变。这种类型的神经网络主要被使用在上下文很重要的时候——即过去的迭代结果和样本产生的决策会对当前产生影响。最常见的上下文的例子是文本——一个单词只能在前面的单词或句子的上下文中进行分析。

6Long/Short Term Memory (LSTM) 长短时记忆网络

6LSTM长短时记忆网络 

LSTM长短时记忆网络引入了一个存储单元,一个特殊的单元,当数据有时间间隔(或滞后)时可以处理数据。递归神经网络可以通过“记住”前十个词来处理文本,LSTM长短时记忆网络可以通过“记住”许多帧之前发生的事情处理视频帧。 LSTM网络也广泛用于写作和语音识别。

存储单元实际上由一些元素组成,称为门,它们是递归性的,并控制信息如何被记住和遗忘。

7Gated Recurrent Unit (GRU)

 7GRU是具有不同门的LSTM

GRU是具有不同门的LSTM。

听起来很简单,但缺少输出门可以更容易基于具体输入重复多次相同的输出,目前此模型在声音(音乐)和语音合成中使用得最多。

实际上的组合虽然有点不同:但是所有的LSTM门都被组合成所谓的更新门(Update Gate),并且复位门(Reset Gate)与输入密切相关。

它们比LSTM消耗资源少,但几乎有相同的效果。

8Auto Encoder (AE) 自动编码器

 8AE自动编码器

Autoencoders自动编码器用于分类,聚类和特征压缩。

当您训练前馈(FF)神经网络进行分类时,您主要必须在Y类别中提供X个示例,并且期望Y个输出单元格中的一个被激活。 这被称为“监督学习”。

另一方面,自动编码器可以在没有监督的情况下进行训练。它们的结构 - 当隐藏单元数量小于输入单元数量(并且输出单元数量等于输入单元数)时,并且当自动编码器被训练时输出尽可能接近输入的方式,强制自动编码器泛化数据并搜索常见模式。

9Variational AE (VAE)  变分自编码器

 9VAE变分自编码器

变分自编码器,与一般自编码器相比,它压缩的是概率,而不是特征。

尽管如此简单的改变,但是一般自编码器只能回答当“我们如何归纳数据?”的问题时,变分自编码器回答了“两件事情之间的联系有多强大?我们应该在两件事情之间分配误差还是它们完全独立的?”的问题。

10Denoising AE (DAE) 降噪自动编码器

 10DAE降噪自动编码器

虽然自动编码器很酷,但它们有时找不到最鲁棒的特征,而只是适应输入数据(实际上是过拟合的一个例子)。

降噪自动编码器(DAE)在输入单元上增加了一些噪声 - 通过随机位来改变数据,随机切换输入中的位,等等。通过这样做,一个强制降噪自动编码器从一个有点嘈杂的输入重构输出,使其更加通用,强制选择更常见的特征。

11Sparse AE (SAE) 稀疏自编码器

11SAE稀疏自编码器 

稀疏自编码器(SAE)是另外一个有时候可以抽离出数据中一些隐藏分组样试的自动编码的形式。结构和AE是一样的,但隐藏单元的数量大于输入或输出单元的数量。

12Markov Chain (MC) 马尔科夫链

 12Markov Chain (MC) 马尔科夫链

马尔可夫链(Markov Chain, MC)是一个比较老的图表概念了,它的每一个端点都存在一种可能性。过去,我们用它来搭建像“在单词hello之后有00053%的概率会出现dear,有003551%的概率出现you”这样的文本结构。

这些马尔科夫链并不是典型的神经网络,它可以被用作基于概率的分类(像贝叶斯过滤),用于聚类(对某些类别而言),也被用作有限状态机。

13Hopfield Network (HN) 霍普菲尔网络

13HN霍普菲尔网络 

霍普菲尔网络(HN)对一套有限的样本进行训练,所以它们用相同的样本对已知样本作出反应。

在训练前,每一个样本都作为输入样本,在训练之中作为隐藏样本,使用过之后被用作输出样本。

在HN试着重构受训样本的时候,他们可以用于给输入值降噪和修复输入。如果给出一半或数列用来学习,它们可以反馈全部样本。

14Boltzmann Machine (BM) 波尔滋曼机

14 BM 波尔滋曼机 

波尔滋曼机(BM)和HN非常相像,有些单元被标记为输入同时也是隐藏单元。在隐藏单元更新其状态时,输入单元就变成了输出单元。(在训练时,BM和HN一个一个的更新单元,而非并行)。

这是第一个成功保留模拟退火方法的网络拓扑。

多层叠的波尔滋曼机可以用于所谓的深度信念网络,深度信念网络可以用作特征检测和抽取。

15Restricted BM (RBM) 限制型波尔滋曼机

15 RBM 限制型波尔滋曼机 

在结构上,限制型波尔滋曼机(RBM)和BM很相似,但由于受限RBM被允许像FF一样用反向传播来训练(唯一的不同的是在反向传播经过数据之前RBM会经过一次输入层)。

16Deep Belief Network (DBN) 深度信念网络

16DBN 深度信念网络 

像之前提到的那样,深度信念网络(DBN)实际上是许多波尔滋曼机(被VAE包围)。他们能被连在一起(在一个神经网络训练另一个的时候),并且可以用已经学习过的样式来生成数据。

17Deep Convolutional Network (DCN) 深度卷积网络

17 DCN 深度卷积网络

当今,深度卷积网络(DCN)是人工神经网络之星。它具有卷积单元(或者池化层)和内核,每一种都用以不同目的。

卷积核事实上用来处理输入的数据,池化层是用来简化它们(大多数情况是用非线性方程,比如max),来减少不必要的特征。

他们通常被用来做图像识别,它们在的一小部分上运行(大约20x20像素)。输入窗口一个像素一个像素的沿着图像滑动。然后数据流向卷积层,卷积层形成一个漏斗(压缩被识别的特征)。从图像识别来讲,第一层识别梯度,第二层识别线,第三层识别形状,以此类推,直到特定的物体那一级。DFF通常被接在卷积层的末端方便未来的数据处理。

18Deconvolutional Network (DN) 去卷积网络

 18 DN 去卷积网络

去卷积网络(DN)是将DCN颠倒过来。DN能在获取猫的之后生成像(狗:0,蜥蜴:0,马:0,猫:1)一样的向量。DNC能在得到这个向量之后,能画出一只猫。

19Deep Convolutional Inverse Graphics Network (DCIGN) 深度卷积反转图像网络

19 DCIGN 深度卷积反转图像网络

深度卷积反转图像网络(DCIGN),长得像DCN和DN粘在一起,但也不完全是这样。

事实上,它是一个自动编码器,DCN和DN并不是作为两个分开的网络,而是承载网路输入和输出的间隔区。大多数这种神经网络可以被用作图像处理,并且可以处理他们以前没有被训练过的图像。由于其抽象化的水平很高,这些网络可以用于将某个事物从一张中移除,重画,或者像大名鼎鼎的CycleGAN一样将一匹马换成一个斑马。

20Generative Adversarial Network (GAN) 生成对抗网络

 20 GAN 生成对抗网络

生成对抗网络(GAN)代表了有生成器和分辨器组成的双网络大家族。它们一直在相互伤害——生成器试着生成一些数据,而分辨器接收样本数据后试着分辨出哪些是样本,哪些是生成的。只要你能够保持两种神经网络训练之间的平衡,在不断的进化中,这种神经网络可以生成实际图像。

21Liquid State Machine (LSM) 液体状态机

 21 LSM 液体状态机

液体状态机(LSM)是一种稀疏的,激活函数被阈值代替了的(并不是全部相连的)神经网络。只有达到阈值的时候,单元格从连续的样本和释放出来的输出中积累价值信息,并再次将内部的副本设为零。

这种想法来自于人脑,这些神经网络被广泛的应用于计算机视觉,语音识别系统,但目前还没有重大突破。

22Extreme  Learning Machine (ELM) 极端学习机

22ELM 极端学习机 

极端学习机(ELM)是通过产生稀疏的随机连接的隐藏层来减少FF网络背后的复杂性。它们需要用到更少计算机的能量,实际的效率很大程度上取决于任务和数据。

23Echo State Network (ESN) 回声状态网络

23 ESN 回声状态网络

回声状态网络(ESN)是重复网络的细分种类。数据会经过输入端,如果被监测到进行了多次迭代(请允许重复网路的特征乱入一下),只有在隐藏层之间的权重会在此之后更新。

据我所知,除了多个理论基准之外,我不知道这种类型的有什么实际应用。。。。。。。

24Deep Residual Network (DRN) 深度残差网络

​24 DRN 深度残差网络 

深度残差网络(DRN)是有些输入值的部分会传递到下一层。这一特点可以让它可以做到很深的层级(达到300层),但事实上它们是一种没有明确延时的RNN。

25Kohonen Network (KN) Kohonen神经网络

​ 25 Kohonen神经网络

Kohonen神经网络(KN)引入了“单元格距离”的特征。大多数情况下用于分类,这种网络试着调整它们的单元格使其对某种特定的输入作出最可能的反应。当一些单元格更新了, 离他们最近的单元格也会更新。

像SVM一样,这些网络总被认为不是“真正”的神经网络。

26Support Vector Machine (SVM)

​26 SVM 支持向量机 

支持向量机(SVM)用于二元分类工作,无论这个网络处理多少维度或输入,结果都会是“是”或“否”。

SVM不是所有情况下都被叫做神经网络。

27Neural Turing Machine (NTM) 神经图灵机

​27NTM 神经图灵机 

神经网络像是黑箱——我们可以训练它们,得到结果,增强它们,但实际的决定路径大多数我们都是不可见的。

神经图灵机(NTM)就是在尝试解决这个问题——它是一个提取出记忆单元之后的FF。一些作者也说它是一个抽象版的LSTM。

记忆是被内容编址的,这个网络可以基于现状读取记忆,编写记忆,也代表了图灵完备神经网络。

这里介绍三种特殊的结构:spatial transformer layer,highway network & grid LSTM,还有recursive network。

本节介绍:recursive network

刚接触RNN的时候根本分不清 recursive network recurrent network ,一个是 递归神经网络 ,一个是 循环神经网络 ,傻傻分不清。但是实际上, recursive network recurrent network 的一般形式。

如下图,我们以情感分析为例子,我们输入一个句子,判断这个句子的情感,是正面负面中性等等。在Recurrent Structure里面,句子会被表示成word vector,假如说情感有五类,最后输出的是一个五维向量。

接下来我们将一个比较具体的例子:

假如我们现在要做情感分析,输入的句子是: not very good ,machine要决定 not very good 是positive还是negative,首先先得到句子的文法结构,这不是我们这节课要讨论的;文法结构告诉我们 very good 要先合并在一起,合起来的结果再跟 not 结合;然后我们要把输入向量(word embedding)输入到machine,接下来用函数 ,应用顺序和文法结构的结合顺序一致;假设word vector的维度是 的话,输入就是2个 ,输出是 。

因此我们改装成下半部分的样子:加号后面就是上半部分的内容,加号前面是两次运算,权重矩阵不一样,得到情感。

注意:后面还是传统的做法,但是前面加上了一个vector。这个vector的元素就是来学习这些词之间的interaction,然后将这些interaction变成bias,因为recursive network的function都是不变的,因此这些bias就这样被传递下去了。那么这里有一个需要注意的就是,我们这里有几个词,那我们就需要多少个bias,而且每个bias中间的这个矩阵W都是不一样的。

如下图是实验结果:

接下来,他有很多版本:比如下一个 Matrix-Vector Recursive Network

这个模型设计的想法就是:

还有 Tree LSTM

这种recursive network模型还有很多应用:句子关联

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/12157519.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存