购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

第四章
智能辅助诊断统计和数学模型

智能中医辅助诊断统计和数学模型可以将中医理论与数学模型相结合,通过大量的病例数据分析,寻找疾病与中医证候之间的内在联系和规律,以提高中医诊断的准确性和治疗效果。由于中医学数据庞大而复杂,症-证、方-证之间的数据关系具有模糊、冗余、非定量、非线性的特点,因此,非线性数学建模方法更有利于模拟中医临床诊疗规律。本章主要介绍决策树、支持向量机、人工神经网络和贝叶斯分类器。

一、决策树

(一)概述

决策树是常见的机器学习方法,它基于树状结构进行决策,一般由一个根结点、若干个内部结点和叶结点构成,每个内部结点对应着一个属性判定,叶结点对应最终的决策结果。该算法最符合人类在自然情况下对分类问题的处理机制,所以决策树算法也是机器学习算法中最具有可解释性的一类算法。当医师对医学影像进行疾病诊断的时候,往往会进行一系列的子判断,如“在该部位的图像中是否存在阴影”“该阴影边界是否清晰”“这块区域是否是由病理性变化引起的”“是否存在肿瘤”等。

显然,需要通过一系列的子判断才能得到我们真正感兴趣的最终判定结果,例如“是否存在肿瘤”。对于每一次子判断都会得到一个判断结果,根据该判断结果可以得到更进一步的判定问题,而该问题的结果只被限制于上一次判断的结果之中,通过不断限制每一步判断结果的范围从而得到最终的判断结果。

(二)属性选择

决策树是一个递归的过程,在这个过程中,判定属性的选择尤为关键,我们希望选择最合适的属性对样本集合进行判定划分,使划分后的样本具有更高的相关性,也就是样本集合纯度更高。

信息增益(information gain)是选择判定属性的一个重要指标,代表对样本集合纯度的提升。对于样本集合 D ,若使用 a 属性进行划分可以得到 m 个分支,将第 i 个分支中所包含的样本记为 D i ,则以 a 为判定属性对样本 D 进行划分可以获得的信息增益可表示为:

img

其中, 表示依据不同分支所含的样本数对其赋予权重,样本越多权重越大。 Ent D )为信息熵(informationentropy),代表样本集合的纯度。若在当前样本集合 D 中第 k 类样本所占比例为 P k ,则 D 的信息熵表示为:

img

其中 K 表示最终决策结果的种类,在结果为“好”与“坏”、“是”与“否”等二分类问题中, K =2。

通常来说,信息增益越大,表示以 a 属性进行划分所带来的纯度增益越大,因此部分决策树常以信息增益为准进行属性的选择。但由于信息增益对产生分支更多的属性有所偏好,在决策中可能会带来不利影响,因此又有了增益率(gainratio)的概念,公式如下:

img

其中 a )称为 a 的固有值, a 产生的分支越多, a )越大:

img

在选择属性时,先找出信息增益高于均值的属性,再从中选取增益率最高者即可。

(三)剪枝处理

决策树在训练过程中为了正确分类,不断重复划分过程,常常会造成分支过多而过拟合。剪枝处理就是主动去掉部分分支,以降低过拟合风险。其基本策略包括预剪枝和后剪枝两种。

预剪枝就是在结点的划分前先行估计,判断当前划分能否提升决策树的泛化性能,若为否,则停止划分,并标记结点为叶结点,但这种策略很容易产生“视界局限”,一旦标记为叶结点,则再无生长的可能。而后剪枝则是在决策树生成后,自下而上地对非叶节点进行判断,如果将当前结点下的子树替换为叶结点能提高决策树的泛化能力,则执行该操作,由于决策树已经得到了充分的生长,因此剪枝后决策树较为平衡,可以避免“视界局限”,但其计算量要远远大于预剪枝。

决策树对数据的处理过程直观,易于解释,模型评测也较为容易;但在连续数据的处理中仍然存在局限。

二、支持向量机

(一)概述

支持向量机(support vector machine,SVM)是针对分类任务的模型,是定义在特征空间上的间隔最大的线性分类器,其学习策略是间隔最大化。其核心内容是在1992~1995年之间提出的,后续仍在不断发展并得到广泛的应用。

(二)间隔与支持向量

分类的基本思想就是在给定的训练集 D ={( x 1 y 1 ),( x 2 y 2 ),…,( x m y m )}, y i ∈{+1,-1}中划定一个超平面,将数据按不同类别进行区分。

在图4-1所示平面中存在两种不同类型的点,SVM算法的思想就是求出可以正确划分数据集且与数据几何间隔最大的超平面,即 ωx + b =0。对于线性可分的数据集 D ={( x 1 y 1 ),…,( x n y n )}, x i ∈R n y i ∈{+1,-1}, i =1,2…,n,样本点( x i y i )到超平面的几何间隔为:

img

图4-1 二维SVM分隔线

距离超平面最近的样本点满足:

img

上式即为“支持向量”,两者到超平面的距离之和称为“间隔”,如图4-2所示,表达式为

图4-2 SVM间隔示意图

(三)SVM求解

前面提到,SVM的策略是找到最大间隔,即 γ 最大化,也就是 ω 最小化,等价于 ω 2 最小化,于是可得到:

img

这就是SVM的基本型,是一个凸二次规划问题,可使用拉格朗日乘子法得到其对偶问题,并通过SMO算法求解拉格朗日乘子,进而求出参数 ω b ,即分别对 ω b 求偏导,得到的函数取零后,将得到的等式代回拉格朗日函数,就会得到原问题的对偶问题。在SVM中,由于满足KKT条件,所以原问题与对偶问题是等价的,具体步骤如下:

img

其中 α 为拉格朗日系数,也是方程中唯一的自变量,根据拉格朗日乘数法求出 α 1 ,就可以得到对应的( ω b ),即:

img
(四)核方法

由于SVM处理的是线性可分问题,对于非线性问题则需要将其映射到更高维的特征空间,使其在高维空间内线性可分。例如图4-3在二维空间中无法用分隔线区分的数据集,可能在三维空间中存在一个平面可以区分类别。同时Vapnik还认为,当维数趋于无穷时,一定存在这样一个超平面,可以将不同类型的样本进行区分,由此引出了核函数解决数据升维的问题。

图4-3 使用核方法升维

φ x )表示映射后的特征向量,则超平面为:

img

类似可得到:

img

在对偶问题中引入核函数(kernel function)K(x,z)= φ x φ z ),以此代替高维空间内两样本的内积。常见的核函数有高斯核函数、拉普拉斯核函数、sigmoid核函数等(表4-1)。

表4-1 常用核函数

在现实实例中,往往很难找到一个超平面可以使样本完全区分,因此又有了“软间隔”的概念,即允许部分样本不满足间隔约束,这就是软间隔支持向量机。

VM模型简化了分类问题,其计算的复杂程度只与支持向量有关,不受样本空间维度的限制。但这也同时意味着,当支持向量个数过多时,计算的复杂度也更大,且SMO算法的时间成本较高,因此SVM模型通常更适用于小样本量任务。

三、人工神经网络

人工神经网络(artificial neural network,ANN)是由具有适应性的简单单元组成的广泛并行互连的网络,其基本单元即为神经元模型。神经元模型模拟了大脑神经网络中神经元之间相连和激活的模式。McCulloch和Pitts在1943年提出“M - P神经元模型”,该模型一直沿用至今。模型中 n 个神经元的传输值以不同权重的连接关系进行传递,将总输入值与当前神经元的阈值进行比较,并通过激活函数(activation function)产生输出。因此M - P神经元又称为阈值逻辑单元(threshold logic unit)。

深度前馈网络(deep feedforward network),也叫做前馈神经网络(feedforward neural net-work),或多层感知机(multilayer perceptron,MLP),是最为典型且基础的深度学习模型。可以将前馈网络看作一个函数映射 f * ,对于分类器而言,前馈网络就是以 θ 为参数,将 x 自变量映射为类别 y

这种网络被称为“前向”(图4-4),是因为信息作为自变量 x ,经过函数 f 的层层映射最终得到结果 y ,过程中并不包含反馈的连接。在医学图像分类中最为广泛使用的卷积神经网络(convolutional neural networks,CNN)就是一种前馈神经网络,而在自然语言处理中应用的循环神经网络(recurrent neural network)就是一种包含反馈连接的神经网络。

图4-4 前向神经网络

前馈神经网络之所以被称作网络(network),是因为它们通常用许多不同函数复合在一起来表示。例如,我们有三个函数 f 1 f 2 f 3 ,连接在一个链上,以形成 f x )= f 3 f 2 f 1 x )))。这些链式结构是神经网络中最常用的结构。在这种情况下, f 1 被称为网络的第一层(first layer), f 2 被称为第二层(second layer),以此类推。链的全长称为模型的深度(depth),这个术语也是“深度学习”这个名词的由来。

假设最终的目标是映射函数 f * ,训练神经网络的目的就在于将网络映射函数 f 的结果无限逼近 f * 的结果。随着网络层数的加深,整个神经网络必须决定如何使用这些层的输出得到最终的目标结果,而对于每一层而言,训练数据并没有告诉它们需要的输出结果,但是它们的输出会影响到之后层的结果,所以这些层被称为“隐藏层”。

前馈神经网络中隐藏层的每个单元都可以看作一个神经元,它接受的输入来源于许多其他的单元,并且通过激活函数计算自身的激活值,非常类似于神经科学中神经元的工作方式,所以前馈神经网络可以被称为“神经”网络。从某种程度上来说,前馈神经网络可以看作是对于人脑工作方式的模拟。

如果神经网络只是简单的线性函数叠加,那无论叠加多少层,神经网络都不会具备非线性函数的拟合能力,所以在每个单元的输出后都会增加一个非线性激活函数,为神经网络提供了非线性拟合能力,以下是神经网络中常用的激活函数(表4-2)。

表4-2 常用激活函数

续表

(一)BP算法和BP网络

基础的感知机由输入层和输出层构成。其中,输出层为M-P神经元,进行激活函数的处理;输入层不进行函数处理。因此,仅具有一层功能神经元的感知机,学习能力十分有限,要处理非线性数据就需要增加功能神经元的层级,即在输入层与输出层之间增加隐层(hidden layer)。图4-5所示为具有一层隐层的神经网络结构,层间所有神经元互连,无同层或跨层连接,这种至少存在一层隐层的神经网络称为“多层前馈神经网络”(mulit-layer feedforward neural networks)。

图4-5 单隐层神经网络

BP(back - propagation)算法,即误差逆传播算法,是人工神经网络最具代表性的学习算法,可用于多种神经网络的训练;由于以训练多层前馈神经网络最为常见,因此“BP网络”一般代指使用BP算法训练的多层前馈神经网络。

BP算法是一个迭代学习的过程。首先随机赋予连接权和阈值,对当前输出计算误差;再将误差逆向转播至隐层神经元;进而对连接权和阈值进行调整。以一个单隐层的BP网络为例,有m个输入神经元,n个输出神经元和l个隐层神经元,设输入层第i个神经元与隐层第j个神经元之间的连接权为 ω ij ,隐层第j个神经元的阈值为 β j ,其与输出层第k个神经元的连接权为 υ jk ,输出层第k个神经元的阈值为 θ k ,对于训练集 D ={( x 1 y 1 ),…,( x m y m )}, x i ∈R m y i ∈R n ,输出层第k个神经元的输入值为 ,假定训练实际输出值为 ,则 ,其均方误差为 ,给出学习率η,则可通过梯度下降的策略求出 υ jk θ k 等的更新公式。具体推导公式此处不再详述。

图4-6 BP神经网络

以上为标准BP算法,对训练集中每一实例均进行一次参数更新。另有累计BP算法,基于累计误差最小化的原则,在读取整个训练集后才进行一次更新。虽然累计BP算法更新频率更低,但面对大数据集时,标准BP算法往往更具优势。

由于对BP网络而言,只要隐层有足够多的神经元,网络就可无限逼近任意输入到输出的映射,因此BP网络常发生过拟合,通常采用早停或正则化的策略来解决。此外,利用BP算法训练参数的过程容易陷入局部极小,目前的跳出策略尚不成熟。

(二)RBF网络

RBF(radial basis function)网络,即径向基神经网络,是一种单隐层前馈神经网络,其隐层神经元的激活函数采用径向基函数进行处理,输出层为线性处理单元。RBF网络的基本思想是用RBF作为隐单元的“基”构成隐含层空间,这样就可以将输入矢量直接映射到隐空间,而不需要通过权连接。当RBF的中心点确定以后,这种映射关系也就确定了。而隐含层空间到输出空间的映射是线性的,即网络的输出是隐单元输出的线性加权和,此处的“权”即为网络可调参数。其中,隐含层的作用是把向量从低维度的p映射到高维度的h,这样低维度线性不可分的情况到高维度就可以变得线性可分了,主要就是核函数的思想。这样,网络由输入到输出的映射是非线性的,而网络输出对可调参数而言却又是线性的。网络的权就可由线性方程组直接解出,从而大大加快学习速度,并避免局部极小问题。RBF神经网络的基本结构如图4-7所示。

图4-7 RBF网络结构图

RBF神经网络的中所使用的径向基函数包含多种类型,常见的包括以下几种:

(1)多二次函数

img

(2)逆多二次函数

img

(3)高斯函数

img

在式①-②中, μ 为中心向量,r=|| x - μ ||代表输入向量与隐节点中心之间的欧式距离, σ 为RBF网络隐节点处径向基函数的核宽,它反映了径向基函数的衰减速度。 σ 取值越大,隐节点处的径向基函数就越平滑,其覆盖的区域相对就越大。 σ 取值越小,隐节点处的径向基函数越尖锐,其覆盖的区域相对就越小。最常使用的径向基函数主要为式③中的高斯径向基函数。在高斯径向基函数中,函数值随着数据到中心点距离的增加而衰减,故而只有与中心点接近的数据值会对参数调节起作用。

RBF神经网络与BP神经网络存在一定的区别:①局部逼近与全局逼近。BP神经网络的隐节点采用输入模式与权向量的内积作为激活函数的自变量,而激活函数采用Sigmoid函数。各调参数对BP网络的输出具有同等地位的影响,因此BP神经网络是对非线性映射的全局逼近。RBF神经网络的隐节点采用输入模式与中心向量的距离(如欧式距离)作为函数的自变量,并使用径向基函数(如高斯函数)作为激活函数。神经元的输入离径向基函数中心越远,神经元的激活程度就越低(高斯函数)。RBF网络的输出与部分调参数有关。譬如,一个 ω i 值只影响一个 y i 的输出,RBF神经网络因此具有“局部映射”特性。所谓局部逼近是指目标函数的逼近仅仅根据查询点附近的数据。而事实上,对于径向基网络,通常使用的是高斯径向基函数,函数图像是两边衰减且径向对称的,当选取的中心与查询点(即输入数据)很接近的时候,才对输入有真正的映射作用;若中心与查询点很远的时候,欧式距离太大的情况下,输出的结果趋于0,所以真正起作用的点还是与查询点很近的点,所以是局部逼近。而BP网络对目标函数的逼近跟所有数据都相关,而不仅仅来自查询点附近的数据。②中间层数的区别:BP神经网络可以有多个隐含层,但是RBF只有一个隐含层。③训练速度的区别:使用RBF的训练速度快。一方面是因为隐含层较少;另一方面,局部逼近可以简化计算量。对于一个输入 x ,只有部分神经元会有响应,其他的都近似为0,对应的 ω 就不用调参了。④RBF网络是连续函数的最佳逼近,而BP网络不是。

(三)模糊神经网络

模糊神经网络(fuzzy neural network,FNN)全部或部分采用模糊神经元构成,是模糊逻辑与神经网络的结合。神经网络通过权重表达映射,长于精确数据的处理,而模糊逻辑则更擅长知识的逻辑表达。但无论是神经网络还是模糊逻辑,都是输入域到输出域的映射关系,也是对人脑思维的模拟,各有优势又不乏共性。因此,两者结合十分适用于处理非线性、模糊性的中医学数据。

1.模糊系统 模糊系统不仅不拘泥于被控对象的数学模型,还能准确地进行判断和决定,是一种应用十分广泛的技术。其通过人类专家的经验和知识形成模糊语言规则,生成模糊控制列表,并在实际应用中经过反复修正,采用模糊逻辑控制进行推理,在隶属度函数映射的区间中找到相对应的值,最后把推理结果转化为系统中的实际控制量,然后输入到被控对象上。由于是人类自定义的规则,也许会出现考虑不周,或者产生偏差而出现规则漏洞,控制上就会出现偏差。

(1)模糊化 首先要将定义好的变量作偏差,形成误差和误差变化率,通过规定的特定语言值,通常分为7个不同几何区域,包括负大、负中、负小、零、正小、正中、正大。然后采用对该系统更贴合的隶属度函数,如三角形、梯形、钟形和高斯形,通过变量的不同的值来对应隶属度函数中的值,找到其中的隶属度,也就是对应着特定区间,意味着能同时对应一个或几个不同的值。

(2)模糊推理运算 模糊推理运算使用模糊规则和模糊化、去模糊化等技术,将模糊的输入值映射为模糊的输出值,以实现对不确定性、模糊性问题的处理。实际上就是对模糊变量进行运算的过程,以得出更优的模糊变量。

(3)精确化 经过模糊推理运算得出来的仍是模糊的量,需要经过精确化的过程,把推理后的模糊量转化成系统中所需的精确量。去模糊化的方法一般采用面积重心法。

2.神经网络 人工神经网络是一种试图模仿生物神经元的特征,通过每个神经元对信号做出处理后,才一层一层地传递下去,其中增加网络权值进行训练类似于突触一样,然后对所有加权输入进行求和处理并通过同一个门槛,在门槛设置一定的阈值,如果加权和超过阈值则会认为神经元被损伤,将重新继续训练优化,直到低于或者等于阈值被传输下去。在神经网络系统中,常用的有自适应线性神经网络、径向基神经网络、BP神经网络、小脑模型神经网络和PID神经网络等。神经网络系统是一种互联的形式,通过抽象和简化作为智能化的体现,反映人脑的基本特征。其在智能控制上有着绝对的优势,比如:能够逼近任意的非线性函数;对于信息可以同时处理与存储;可以多输入和输出;能优化量级的迭代学习训练和适应环境而改变其学习规则。作为智能控制领域一个重要的分支,人工神经网络控制通过参考结果来进行优化预测的控制方法,有机融合了生物神经网络的分析法、重构法和计算机的理论法,对于很多复杂的非线性、不确定、不确知的系统,有着更好的优势。神经网络包括输入层、隐层和输出层,为了精确学习,通过输入-输出的样本训练确定权值,而自学习的过程是不断优化权值。主要的学习模式有监督学习、非监督学习和强化学习。

3.模糊神经网络 模糊神经元具有一般神经元的功能,同时具有处理模糊信息的能力,一般分为由“IF-THEN”规则描述的模糊神经元、具有清晰输入的模糊化模糊神经元和具有模糊化输入的模糊神经元。

对于专家经验性的知识,由神经网络直接获取具有一定的困难,因此FNN的设计一般先提取初始规则和隶属度函数,而后采用神经网络进行调整,其基本结构主要包括模糊化、模糊推理和去模糊化三部分。由于连续函数的输入和输出必须为实数,因此模糊化和去模糊化是必须的,并在模糊推理部分实现与神经网络的转换。

模糊推理具有单向性,所以常见的FNN多为多层前馈神经网络(图4-8),输入层和输出层可以直接接收或产生模糊数,以隶属度函数表达,输入层、隐层及输出层之间的连接权同样为模糊数。图4-8所示的FNN模型即为BP网络的模糊化。

图4-8 FNN模型

模糊神经网络的结构如下:

(1)模糊化 把确定输入的误差变量通过隶属度函数转化成为新的一种模糊变量组成的集合。

(2)知识库 即存储的某应用场合的各类被控对象的数据和各类选用搭配的函数和解法规则,是模糊控制器的核心。①该数据库存储着输入变量使用的各种模糊集合和不同的隶属度函数及不同的推理算法,这个不是简单的存储数据,而是关于在模糊化、模糊推理和去模糊化的过程中使用的依据和条件。②规则库存储着各种制定的运算规则,通过对被控对象的控制,用各种模糊集合组合出一种规则表,来对比出相应的语言变量。

(3)模糊推理机 作用是将模糊化后的模糊变量通过知识库中的模糊规则,通过隶属函数映射成另一种模糊值。

(4)输入层 把模糊推理后的模糊变量传递给神经网络的输入层,根据经验知识选择性地确定主成分分析中需要增加或减少变量。

(5)隐含层 增加网络权值的自学习时间,增加隐含层中神经元的个数或者层数,进一步降低误差,提高非线性逼近能力和精度。

(6)输出层 输出系统待分析的多个具有网络模型的模糊变量,传递给模糊控制器的去模糊化模块。

(7)精确化 即把神经网络自学习优化后的模糊变量转化为实际用于控制的清晰量。

除了基于BP网络的FNN外,还有模糊RBF网络、Fuzzy ART网络等,但在中医专家系统的研究中并不多见。此外,当前FNN面临的一个很重要的问题,就是其前馈型的局限,构造反馈型FNN可以有效地解决成组、动态学习等问题。

(四)粗糙集与神经网络

粗糙集(rough set)理论,是继概率论、模糊集、证据理论之后的一种处理不精确、不确定与不完全数据的新的数学方法。粗糙集主要用于对信息系统进行约简和分类。

粗糙集基于不确定性理论,即自然界和人类社会活动中的现象可以分为确定性现象和不确定性现象,其中的确定性现象指在一定条件下必然会出现的现象。对于信息系统来说,更应该被关注到的是不确定现象,对于不确定性可以分为以下3类:①随机性,即因为事物的因果关系不确定,从而导致事件发生的结果不确定,可以用概率进行度量。②模糊性,即因为事件在质上没有明确的定义,在量上又没有明确的界限,导致事件呈现“亦此亦彼”的性态,为事物类属的不确定性,可以用隶属度来度量。③粗糙性,即因为描述事件的知识或信息不充分、不完全,导致事件间的不可分辨性。粗糙集在那些不可分辨的事件都归属一个边界域,所以粗糙集中的不确定性是基于一种边界的概念,当边界域成一空集时,问题变为确定性。

经典集合理论认为,一个集合完全由其元素所决定,一个元素要么属于这个集合,要么不属于这个集合,其隶属函数 µ x )∈{0,1}是二值逻辑。模糊集合理论认为,事物具有中介过去性质,而非突然改变,集合中的每一个元素的隶属函数 µ x )∈{0,1},即在闭区间[0,1]可以取任意值,隶属函数可以是连续光滑的,因此模糊集合对不确定信息的刻画是精细而充分的;但隶属函数不可计算,凭人的主观经验给定。模糊集合把用于分类的知识引入集合,一个元素 x 是否属于集合 X ,需要根据现有知识来判定,可分为3种情况: x 肯定不属于 X x 肯定属于 X ,以及 x 可能属于 X 也可能不属于 X ,具体属于哪种情况依赖于我们所掌握的关于论域的知识。粗糙集的隶属函数呈阶梯状,对不确定性信息的描述是粗糙的,但粗糙隶属函数是可计算的。

粗糙集与神经网络相结合的方法在各领域中一直是专家学者研究的方向之一,也是近年来的热点问题。与传统的模糊集相比,粗糙集具有客观准确的特点,可以用于减少神经网络的黑箱特性。在复杂的大型系统中,用粗糙集对数据进行属性约简,可以大幅度减少输入层神经元节点个数,从而达到优化算法结构的效果。在疾病预测方面,通过层次分析法初步建立属性体系,再利用粗糙集进行属性约简,可以提高神经网络的预测准确度。

(五)卷积神经网络

对于神经网络而言,隐层数目越多,神经元数目和激活函数的嵌套层数就越多,模型的学习能力就越强大;然而模型越复杂、参数越多,模型的训练效率也就越低。随着云计算和大数据时代的到来,计算能力的提升降低了模型训练的难度,以深度学习为代表的复杂模型开始越来越受到关注。

卷积神经网络(convolutional neural network,CNN)是深度学习的代表算法之一,是一种包含卷积计算且具有深度结构的前馈神经网络,对于图片、音频、视频等方面的识别与分类具有很强的优势,对于机器学习和深度学习都有着较高的地位。CNN的输入层可以接收多维数据,图4-9展示了最为常见的输入二维图像的CNN网络模型,主要包含输入层、卷积层、池化层、全连接层和输出层,除了输入和输出层,CNN中其他层均会被多次堆叠。

图4-9 CNN网络示意图

卷积是卷积神经网络特有的结构,理解卷积是理解卷积神经网络的关键。卷积层通过设置一定大小的卷积核对图像进行卷积操作,从而得到图像的特征信息。卷积核也可称作滤波器,合适的卷积核可以对图像起到滤波作用,比如整体边缘滤波等。卷积网络通过多次训练学习最合适的卷积操作参数,从而学习图像的特征,例如颜色、形状、纹理等信息。通常,卷积神经网络包含多个卷积层,以从图像中提取多层次的特征。

卷积层负责对输入信息进行特征提取,提取后的特征图输入池化层进行选择过滤。池化层又称为下采样层,在网络中一般处于卷积层之后,全连接层之前。池化层的主要目的是用于特征选择和信息过滤,极大地降低网络计算量。池化层常用的方法有平均池化层(average pooling),最大池化层(max pooling)。平均值池化操作是选择所有元素的平均值作为池化后的结果,最大值池化操作是选择所有元素的最大值作为池化后的结果。

激活函数往往伴随着卷积层并用,其本质是一个非线性映射函数,主要用来将网络非线性化,使得网络可以更好地处理非线性问题,增强网络拟合各种分布的能力。从本质上讲,激活函数是对生物功能模型神经元的模拟。在神经科学领域,神经元的状态由确定的阈值进行判定,若输入的信号量低于该阈值,神经元将处于休眠状态,若输入的信号量高于该阈值时,神经元将处于兴奋状态。通常使用Sigmoid函数和RELU函数作为激活函数。

全连接层则与BP网络中的隐层相同,负责对特征值进行非线性组合;输出层与全连接层相连,结构与BP网络中的输出层也是相同的。在卷积神经网络中全连接层一般都处于模型的尾处,全连接层网络的连接方式与传统人工神经网络相同,前一层的所有元素和下一层的所有元素相连。在卷积神经网络中,通常使用全连接层将多维向量转变为一维向量进行特征融合,可将全连接层和Softmax函数结合起来对图像进行分类。全连接层不具备特征提取能力,而是对高阶特性进行非线性组合得到最终的输出。

对于卷积神经网络来说,隐藏层层数越多,对应的训练、检验结果会越好,但是网络的效率则会更差。卷积神经网络的隐藏层层数的增加主要依靠卷积层和池化层的叠加,随着网络深度的增加,特征图的尺寸也会随之减小。越靠近网络输入端,网络学习到的特征越初级,如纹理信息、面积信息;而越靠近网络输出端,网络越能学习到更高级的语义信息。

CNN可以使用BP算法进行训练,也可以采用非监督学习的范式,在中医专家系统中常用于舌象的分类。CNN在小数据样本的医学影像处理问题上具有优秀的性能。AlexNet、VGGNet、InceptionNet、残差网络(residual network,ResNet)、密集连接网络(densely connected convolutional network,DenseNet)和全卷积神经网络(fully convolutional network,FCN)都是基于CNN网络改进后的经典模型。AlexNet在每次卷积操作之后使用ReLU激活函数加快收敛速度;同时使用局部响应归一化方法来提高分类的精度;最后利用Dropout降低过拟合问题。VGGNet与AlexNet结构一样,由卷积层和全连接层构成,因此被看作是加深版的AlexNet。VGGNet证明了在一定程度上加深网络的结构深度是可以提高网络整体性能的。Inception模块中的多个小尺寸卷积核的尺寸大小是不同的,同时这些不同尺寸的卷积核是同时进行卷积操作的,它们将对同一个输入分开进行卷积操作,之后对应得到不同大小的感受野和特征输出,而后再将这些不同大小的特征拼接起来,得到这个Inception模块的整体的特征输出。ResNet与过往的卷积神经网络不同,它引入了残差学习(residual learning)这种“shortcut connection”的连接方式,帮助网络“抄近路”。ResNet的输出与输入不同于过往的简单映射,它学习的是输入与输出之间的残差关系,这种学习方法使得含参层不单一,学习更有效;同时网络的训练效率会更高,收敛速度也会更快。

(六)循环神经网络

RNN具有CNN不具备的记忆性,适用于对序列非线性特征的学习中,所以通常被应用于自然语言处理领域。虽然RNN不常被应用于计算机视觉领域,但是由于疾病的发展往往是有时序性的,所以也有少量的研究者将RNN应用于对疾病未来发展的预测中。

图4-10中可以直观地看到,RNN网络在每一个时刻都有一个输入 x t ,经过网络 t 时刻的状态 A t 获得当前时刻的输出 h t ,而 t 时刻的网络状态由 t -1时刻的网络状态及输入共同决定,这样的设计使得网络在时间序列上具有记忆功能。之后提出的双向循环神经网络(bidirectional recurrent neural network,BRNN)及双向长短期记忆网络(bidirectional long-short term memory,BiLSTM)都是基于RNN网络改进后的模型。

图4-10 RNN网络示意图

四、贝叶斯分类器

贝叶斯决策论是概率框架下实施决策的基本方法,通过概率和误判损失来选择最优的类别标记。

假定有 L ={ c 1 c 2 ,… c l }, c 为分类标记,将一个 c i 样本误标为 c j 的损失为 λ ij ,则对于样本 x ,其条件风险为:

img

我们希望最小化风险,于是可以得到最小化分类错误的贝叶斯最优分类器:

img

这时,我们需要先求得后验概率 P c | x )。根据贝叶斯定理 问题就转化为了基于样本估算先验概率 P c )和似然 P x | c ),而 P x )是用于归一化的证据因子,对于给定的样本 x P x )与分类无关。 P c )代表着类样本在样本空间中的占比,可以通过各类样本出现的频率进行估计。而对于 P x | c ),贝叶斯学派认为,可假定参数服从于一个先验分布,再基于观测数据来计算参数的后验分布。

1.朴素贝叶斯分类器 朴素贝叶斯分类器(naïve Bayes classifier)基于“属性条件独立性假设”,假定所有已知属性独立地对分类结果产生影响,则可以得到:

img

式中, d 为属性数目, x i x 在第 i 个属性上的取值。则朴素贝叶斯分类器的表达式为:

img

可见,朴素贝叶斯分类器是基于训练集估计先验概率和每个属性的条件概率,在实际应用中可选用懒惰学习、增量学习等不同的方式。

2.半朴素贝叶斯分类器 由于在现实中,朴素贝叶斯分类器的假设往往难以成立,于是对属性条件独立性假设进行适当的放松,即考虑部分属性间的依赖关系,从而既不需要进行完全联合概率计算,又不至于彻底忽略比较强的属性依赖关系,由此产生了半朴素贝叶斯分类器(semi-naïve Bayes classifier)。常用的策略为“独依赖估计”,假定每个属性在类别之外最多只依赖于一个其他属性。表示为:

img

pa i x i 的父属性,即其所依赖的属性。在实现中有SPOED、TAN、AODE等不同的方法。

3.贝叶斯网 贝叶斯网(Bayesian network)也称为信念网(belief network),借助有向无环图表达属性之间的关系,并使用条件概率表描述属性的联合概率分布。贝叶斯网中,每一个结点对应一个属性,边表示了直接的依赖关系(图4-11),每个属性与其非后裔属性相独立,即结点只直接依赖其父结点。图中P(A 0 ,B 1 ,C 1 ,D 0 ,E 0 )=0.0486。

图4-11 贝叶斯网示意图 IC5bQFIibeCsLaENZxoKBYSZfLX8l+gRN8z+gVABVU9PWPA3qR+rOPn06+jc9Wtz

点击中间区域
呼出菜单
上一章
目录
下一章
×