基于生成对抗网络的癫痫发病判别方法

2021-12-13 07:31汤贵艳
科学技术创新 2021年33期
关键词:脑电波癫痫向量

汤贵艳

(青岛科技大学,山东青岛 266061)

1 概述

癫痫是大脑神经元突发性异常放电,导致短暂的大脑功能障碍的一种慢性疾病。其发作具有频繁、无预兆的特征,发作时不仅会导致短暂的注意力缺失或肌肉碰撞,严重时甚至会威胁到病人生命。近40 年来,神经科学家一直认为癫痫发作是在临床发作前几秒钟突然发生的,但现在有越来越多的证据表明,癫痫会在临床发病前几分钟到几小时出现,这使得通过对病人脑电波的分析判断癫痫发作,并及时给与药物治疗越发重要。

脑电波是诊断癫痫发作的重要检查方法。由于脑电信息存在非线性、高度复杂性和不可预测性等特征,使得传统方法不能快速准确的做出判断。随着机器学习和深度学习在各种应用场景的大放异彩,越来越多的模型例如支持向量机[1-2]、BP 神经网络[3]等被应用于预测判断领域,并取得了良好的结果,生成对抗网络(GAN)便是其中之一,网络包含生成器与判别器两个部分,两部分通过对抗性过程同时训练。在训练过程中,生成器学会创造最符合真实分布的数据,而判别器学会判断真实数据和虚假数据。通过这种对抗性学习,不仅可以提高生成器的生成性能,还可以有效提高判别器的准确率。近年来,生成对抗网络(GAN)模型已经广泛应用于自然语言处理[4-5]、图片生成[6-8]和目标检测[9-10]等领域,并且取得了显著的进展。

本文以生成对抗网络(GAN)模型为基础,同时针对脑电信息存在高度复杂性的特性,在判别器的设计过程中采用多个神经网络组合的方法,有效提高了判别器的准确度。

2 关键技术

2.1 前馈神经网络

前馈神经网络,也被称为前馈网络,是人工智能领域最出名的人工神经网络之一。前馈神经网络由输入层、隐藏层和输出层三部分组成,其中每一层都包含多个神经元。与循环神经网络不同,递归神经网络中的神经元只会输入前一层的神经元的输出,并且将计算后的数据输出到下一层神经元。图1 展示了一个基础的前馈神经网络模型。

图1 前馈神经网络示意图

2.2 生成对抗网络(GAN)模型

生成对抗网络(GAN)模型是由Goodfellow 等人[11]于2014 年提出的,是无监督学习和半监督学习最具前景的方法之一。其构建思想来源于博弈论中的零和游戏。GAN 模型由生成器和判别器组成,生成器和判别器通过对抗学习的方法来训练。生成器的训练目标是生成符合真实分布的数据, 而判别器的训练目的是判别输入数据是来自真实数据还是由生成器生成的数据,并提高判别准确率。在训练的过程中, 判别器和生成器需要不断交替优化, 提高其生成能力和判别能力。GAN 模型的计算流程与结构如图2 所示。

图2 GAN 模型示意图

在训练过程中,对于生成器而言就是尽可能地让生成的数据更加真实,而判别器则尽可能地识别出数据的真假,生成器和判别器在不断地进行对抗,最终达到纳什均衡:生成器生成的数据接近于真实分布,而判别器识别不出真假数据,对于给定数据的预测准确率基本接近0.5,相当于随机猜测类别。

3 癫痫发病判别模型

3.1 生成器

生成器是由一个两层前馈神经网络构成。生成器的输入是一组随机生成的向量,其取值从一个均匀分布[-1,1)中随机采样,且满足高斯分布。生成器的输出是一组与真实脑电波维度相同的向量。生成器的数学表达式如下:

其中,relu(·)为激活函数,x1为输入的一组随机生成向量,y1为输出向量。

其中,y2代表生成器的输出,其维度与真实脑电波相同。

3.2 判别器

判别器的输入为由生成器生成的虚假脑电波向量或者真实脑电波向量。判别器最终通过一个sigmoid 函数输出一个取值范围在[0,1]的数,作为判别器识脑电波为真的概率,用来解决二分类问题。本文所提出的判别器如图3 所示。

图3 判别器构造示意图

针对脑电波具有高度复杂性的特征,本文将输入向量切分成3 个片段,利用3 个前馈神经网分别对片段进行特征提取。然后将提取的3 个特征进行拼接,最后利用一个全连接层和sigmoid 函数输出判别器判别概率。具体步骤如下:

3.2.1 将输入的脑电波向量,切分成三个向量,并且利用三个相互独立的前馈神经网络对三个向量进行特征提取,即

3.2.3 通过一个单层的前馈神经网络,将由步骤3.2.2 得到的向量y4映射到一个值在0~1 的数,作为判别器的输出概率,即

其中,y5为判别器的输出概率结果,W4,b4为未知参数。

4 模型训练设置

4.1 模型损失函数与优化

GAN 模型由判别器和生成器两部分组成,因此GAN 模型的损失函数也由判别器损失函数和生成器损失函数组成。判别器的损失函数与普通二分类的模型相同,都是通过交叉熵来计算损失函数。交叉熵损失度量的是分类模型的性能。交叉熵损失随着预测概率偏离实际标签而增加。判别器的损失函数由判别虚假脑波时的损失函数和判别器判别真实脑波时的损失函数构成,优化后的目标函数为:

其中,x 由真实脑电波数据分布Pdata(x)中获得,z 由满足高斯分布的随机生成的噪声Pz(z)中获得。D(x)代表真实脑电波数据作为输入时判别器输出的概率。G(z)代表随机生成的噪声作为输入时生成器生成的虚假脑电波数据。E(·)代表计算期望值。

生成器的优化目标是使得判断器将生成的虚假脑电波数据错误判断成真实脑电波数据,即使得D(G(z))的值越大越好,因此优化的生成器目标函数可以写为:

生成器与判别器作为两个网络需要分别优化。当固定生成器时,对于判别器的优化,可以这样理解:输入来自于真实数据,判别器优化网络结构使自己输出1,输入来自于生成数据,优化网络结构使自己输出0;当固定判别器时,生成器优化自己的网络使自己输出尽可能和真实数据一样的样本,并且使得生成的样本经过判别器的判别之后,判别器输出高概率。优化过程可以展示如下:

4.2 超参数设置

模型中所有可训练参数的初始值设置为均匀分布的随机值[-0.08,0.08]。模型的学习率设置为0.0002。为避免过拟合,在选择批量大小时,需要同时考虑训练时间和收敛速度。批处理规模越大,训练时间越快,但会导致收敛速度变慢。为了平衡训练时间和收敛速度,模型训练过程中的batch size 设置为64。

5 实验结果

5.1 数据集

本文所使用的数据集由115000 个标记样本点组成,其中每个样本点为时长1 秒的脑电波。图4 展示了一个脑电波示意图。样本的标记值为1 或0 ,其中1 代表癫痫发作,0 代表无癫痫发作,其中,2300 个样本点标记值为1,9200 个样本点标记值为0。本文从标记值为1 的数据中随机选取80%的数据作为训练集,其余20%的数据和9200 个标记值为0(非癫痫发作)的数据共同组成测试集。

图4 脑电波示意图

5.2 实验环境

数据集以csv 格式存储在高性能计算集群上,搭建实验环境。

硬件环境:AMD EPYC 7002, DDR4 32G, RTX2080TI。

软件环境:Ubuntu 16.04,cuda 9.0,python 3.6,tensorflow 1.3[12]。

5.3 实验结果与分析

表1 预测准确率对比表

为了进一步说明改进后的GAN 模型的有效性,本文将改进后的GAN 模型和基础GAN 模型进行对比性实验。基础GAN 模型判别器与生成器相同,仅有一个两层前馈神经网络构成。对比性实验中,改进后的GAN 模型和基础GAN 模型使用相同的数据集,且训练和测试配置完全相同。

6 结论

本文将生成对抗网络(GAN)模型应用于癫痫发病判断,并且针对脑电波具有高度复杂性等特征,提出了一个基于生成对抗网络的癫痫发病判别方法,通过对基础GAN 模型的判别器的改进,将其单神经网络变为多神经网络的组合,以此增强判别器特征提取的能力,实验结果表明,改进后的GAN 模型在提高癫痫发病判别准确率方面取得了更好的效果,对于临床转化具有重要意义。由于患者真实发病数据较少且出于保护病人隐私方面考虑,未来可在监督学习的基础上深入探索,逐渐向无监督学习方向发展。

猜你喜欢
脑电波癫痫向量
向量的分解
聚焦“向量与三角”创新题
能感应人的脑电波并自动关机的电视机
能感应人的脑电波并自动关机的电视机
癫痫多数可控可治
大嘴找规律
不走神耳机
玩电脑游戏易引发癫痫吗?
向量垂直在解析几何中的应用
向量五种“变身” 玩转圆锥曲线