各类卷积网络调研
郝伟 2022/03/21
本文是一个基于各类网络的调研,主要目的是为了理解网络常用网络的分类和作用及相关算法,为某课题的申报提供必要的支持材料。
感知机[REF1, REF2] 是1957年由Rosenblatt提出的一种算法结构,是神经网络和支持向量机的基础,具体定义如下:
给定函数通过加权求和后,可以使用 step函数,使用某个阀值进行0-1的二元分类。假设阀值为 ,则可以表示成:
本质上是一种对多个变量的加权和计算公式,可以表示以为下形式:

变量 是一个超参数,通常根据实际情况由人工来确认,也可能根据一定的数据进行训练获得。
CNN[KNN1998]由纽约大学的Yann LeCun于1998年提出的一种具有代表性的深度学习(Deep Learning, DL)算法。CNN本质上是一个多层感知机(Mutiple Layer Perception, MLP),其成功的原因关键在于它所采用的局部连接和共享权值的方式,一方面减少了的权值的数量使得网络易于优化,另一方面降低了过拟合的风险。CNN是神经网络中的一种,它的权值共享网络结构使之更类似于生物神经网络,降低了网络模型的复杂度,减少了权值的数量。该优点在网络的输入是多维图像时表现的更为明显,使图像可以直接作为网络的输入,避免了传统识别算法中复杂的特征提取和数据重建过程。在二维图像处理上有众多优势,如网络能自行抽取图像特征包括颜色、纹理、形状及图像的拓扑结构;在处理二维图像问题上,特别是识别位移、缩放及其它形式扭曲不变性的应用上具有良好的鲁棒性和运算效率等。
由于其本质上是多层感知机,所以结构上比较好理解,会有多个输入和输出,可以表示为以下结构:

在实际的应用中,可能表现为这样:

CNN的是由多层组成,每层根据功能可以分为以下几种类型 卷积神经网络的架构:
1.Input
2.[[CONV -> RELU] * N -> POOL?] * M
3.[FC -> RELU] * K
4.FC
CNN具有一些传统技术所没有的优点:良好的容错能力、并行处理能力和自学习能力,可处理环境信息复杂,背景知识不清楚,推理规则不明确情况下的问题,允许样品有较大的缺损、畸变,运行速度快,自适应性能好,具有较高的分辨率。它是通过结构重组和减少权值将特征抽取功能融合进多层感知器,省略识别前复杂的图像特征抽取过程。CNN被认为是第一个真正成功的采用多层层次结构网络的具有鲁棒性的深度学习方法。其泛化能力要显著优于其它方法,卷积神经网络已被应用于模式分类,物体检测和物体识别等方面。利用卷积神经网络建立模式分类器,将卷积神经网络作为通用的模式分类器,直接用于灰度图像。能从一个二维图像中提取其拓扑结构,采用反向传播算法来优化网络结构,求解网络中的未知参数。
Fine-tuning就是使用已用于其他目标、预训练好模型的权重或者部分权重,作为初始值开始训练。
那为什么我们不用随机选取选几个数作为权重初始值?原因很简单,第一,自己从头训练卷积神经网络容易出现问题;第二,fine-tuning能很快收敛到一个较理想的状态,省时又省心。
那fine-tuning的具体做法是?
卷积网络在本质上是一种输入到输出的映射,它能够学习大量的输入与输出之间的映射关系,而不需要任何输入和输出之间的精确的数学表达式,只要用已知的模式对卷积网络加以训练,网络就具有输入输出对之间的映射能力。CNN一个非常重要的特点就是头重脚轻(越往输入权值越小,越往输出权值越多),呈现出一个倒三角的形态,这就很好地避免了BP神经网络中反向传播的时候梯度损失得太快。
卷积神经网络CNN主要用来识别位移、缩放及其他形式扭曲不变性的二维图形。由于CNN的特征检测层通过训练数据进行学习,所以在使用CNN时,避免了显式的特征抽取,而隐式地从训练数据中进行学习;再者由于同一特征映射面上的神经元权值相同,所以网络可以并行学习,这也是卷积网络相对于神经元彼此相连网络的一大优势。卷积神经网络以其局部权值共享的特殊结构在语音识别和图像处理方面有着独特的优越性,其布局更接近于实际的生物神经网络,权值共享降低了网络的复杂性,特别是多维输入向量的图像可以直接输入网络这一特点避免了特征提取和分类过程中数据重建的复杂度。
DNN其实就是层数较多的CNN,可以表示为这样:

由于层数较多,所以一般的权值相同,使用随机梯度下降(Stochastic Gradient Descent, SGD)进行求解.
图(graph)是一种数据结构,图神经网络(Graph Neural Network)应该是深度学习在图结构数据上的一些模型、方法和应用。常见的图结构由节点(node)和边(edge)构成,节点包含了实体(entity)信息,边包含实体间的关系(relation)信息。现在许多学习任务都需要处理图结构的数据,比如物理系统建模(physics system)、学习分子指纹(molecular fingerprints)、蛋白质接口预测(protein interface)以及疾病分类(classify diseases),这些都需要模型能够从图结构的输入中学习相关的知识。GNN是一种直接作用于图结构上的神经网络。GNN的一个典型应用是节点分类,本质上,图中的每个节点都与一个标签相关联,算法的目的是希望预测未标记节点的标签。
GNN起源于两种动机,一种动机来自于卷积神经网络(CNN),另一种动机来自于图嵌入(graph embedding)。
第一种来源于CNN,CNN能够提取出多尺度的局部空间特征,并将它们进行组合来构建更加高级的表示(expressive representations)。如果深入研究CNN和图结构的特点,可以发现CNN的核心特点在于:局部连接(local connection),权重共享(shared weights)和多层叠加(multi-layer)。这些同样在图问题中非常试用,因为图结构是最典型的局部连接结构,其次,共享权重可以减少计算量,另外,多层结构是处理分级模式(hierarchical patterns)的关键。然而,CNN只能在欧几里得数据(Euclidean data),比如二维图片和一维文本数据上进行处理,而这些数据只是图结构的特例而已,对于一般的图结构,可以发现很难将CNN中的卷积核(convolutional filters)和池化操作(pooling operators)迁移到图的操作上。
另一种动机来源于图嵌入(embedding)。图嵌入是指对图的节点、边或者子图通过学习得到一个低维的向量表示。传统的机器学习方法通常基于人工特征工程来构建特征,但是这种方法受限于灵活性不足、表达能力不足以及工程量过大的问题,词嵌入常见的模型有Skip-gram,CBOW等,图嵌入常见模型有DeepWalk,Node2Vec等,然而,这些方法方法有两种严重的缺点,首先就是节点编码中权重未共享,导致权重数量随着节点增多而线性增大,另外就是直接嵌入方法缺乏泛化能力,意味着无法处理动态图以及泛化到新的图。
根据论文 Graph Neural Networks: A Review of Methods and Applications 对GNN的模型分类如下:
欧几里得空间(Euclidean Space),是指一类特殊的向量空间,对通常3维空间V3中的向量可以讨论长度、夹角等几何性质。