基于深度前馈神经网络的多因子人体表面积计算模型*
2023-02-08王雨露
王雨露,李 飞,杨 震,黄 山,张 罡,詹 曙
(1.大数据知识工程教育部重点实验室(合肥工业大学),安徽 合肥 230601;2.合肥工业大学计算机与信息学院,安徽 合肥 230601;3.安徽医科大学第二附属医院,安徽 合肥 230601)
1 引言
人体表面积BSA(Body Surface Area)是一个十分重要的生理参数,在许多医学应用中有着至关重要的作用。一方面,它作为标准化的衡量标准,在肿瘤治疗中细胞毒性和细胞抑制药物的剂量等方面起着决定性作用[1,2]。有研究证明了基于BSA的治疗药物剂量计算的有效性,并强调了其最重要的好处是患者存活率的提高[3]。在烧伤的情况下也需要使用BSA来评估皮肤损伤的严重程度,用来预测患者的生存几率[4]。另一方面,BSA在临床上广泛用于计算肾小球滤过率[5,6],是肾病综合症治疗中的主要变量。BSA在肾移植术后受者早期肾功能康复领域受到了广泛的关注[7,8]。但是,由于人体形态的复杂性和不规则性,通过实际测量来获取BSA是不现实的。因此,如何有效地计算BSA是十分有意义的。在过去的两百年里,人们从未停止过对人体表面积的探索。1848 年,Bergmann和Rubner首次提出动物体热的产生与体表面积成正比,在此之后人体表面积的研究开始一步步向前发展。Meeh[9]提出了第1个可以使用的BSA计算方法,但其只考虑了体重这一变量。Du Bois等[10]提出的BSA计算方法引入了一个新变量—高度。随后,许多研究人员为了获取更准确的BSA值而不断改进Du Bois方法的系数。为得到中国人BSA计算方法,Stevenson[11]对Du Bois公式进行了修正。随着时间推移,胡咏梅等[12]指出Stevenson方法已经不再适用于当代中国人体表面积的计算,提出了一种新的中国人BSA计算方法。随着3D激光表面扫描和CT扫描等技术的发展,三维测量技术已应用到BSA测量的研究中。有研究表明,三维测量BSA时的扫描误差在1%范围内,与传统人工测量方法相比,三维人体测量更精确、更稳定[13],因此可借助三维扫描得到的体表面积来推导BSA计算方法。目前已经有多种通过三维扫描技术推导出的BSA计算方法。Tikuisis等[14]借助三维全身扫描和三维建模软件提出了分别适用于男性和女性的BSA计算方法。Schlich等[15]提出了新的分别适用于男性和女性的BSA计算方法。Yu等[16]通过3D扫描技术研究出男女性通用的BSA计算方法。随着3D扫描技术的发展,Yu等[17]提出了新的分别适应于男性和女性的BSA计算方法。Kuehnapfel等[18]也提出了新的男女通用的BSA计算方法。表1展示了近一百年来的部分BSA计算方法(W:体重,H:身高)。
目前基于三维测量技术的人体表面积计算方法已有多种[13,19],但仍存在以下3个问题:(1)只考虑了人体少量的参数(身高和体重,在一些特别的情况中还考虑了性别和年龄);(2)通过匹配特定的简单函数估计模型参数;(3)临床上也认为现有的BSA计算方法误差较大,对临床治疗影响较大。随着神经网络的发展,多种神经网络应用于回归预测中。医生也希望借助深度学习的方法来计算人体表面积。基于此,本文提出了基于深度前馈神经网络DFNN(Deep Feedforward Neural Network)的多因子人体表面积计算模型,模型由2部分组成:首先是特征选择,通过相关性和显著性分析的方法选择与人体表面积相关性最高的人体影响因子;其次是深度前馈神经网络回归。本文研究基于安徽医科大学第二附属医院提供的104组数据,与传统BSA计算方法和3种其它方法进行实验对比。实验结果表明,本文方法可以得到更好的效果,证明该模型是有效的。
Table 1 Body surface area formulas
2 数据与方法
2.1 数据来源
本文研究使用的体表数据由安徽医科大学第二附属医院提供,自2020年10月至2021年1月收集,共104组,男女比例为61∶43。在室温下进行身高、体重和胸围等人体数据测量。测量身高和体重等数据时,要求受试者站直并伸展身体。进行CT扫描时要求受试者将手臂尽量与身体分开一定距离,双腿分开。CT扫描获得人体切片数据后生成3D模型,得到3D人体模型的体表面积。
2.2 方法
2.2.1 特征变量选取
对于输入变量来说,数量过多会导致回归方法过于复杂,且如果引入的是无关变量,回归方法的泛化能力会降低。因此,需要选择合适的特征变量用于建立多元回归方法。本文通过皮尔逊相关系数和显著性检验来进行特征变量的选择。相关系数绝对值越大,相关度越高。因为相关系数是一个随机变量,取值具有一定的偶然性,2个不相关的变量,相关系数也可能较高,因此需要显著性检验来辅助,只有当显著性水平显著时,相关系数才是可信的。
2.2.2 数据预处理
由于各个特征变量及人体表面积的数值差异较大,在建立回归方法之前要先对数据进行预处理,即利用式(1)对数据进行归一化。
(1)
其中,xmin为数据最小值,xmax为数据最大值,xi为第i个数据,xR为xi归一化后的结果。
2.2.3 深度前馈神经网络
深度前馈神经网络DFNN是一种典型的深度学习方法[21],又称为多层感知机。DFNN的目标是将数据通过多个转换层[22],以分层的方式学习数据的复杂抽象表示。DFNN一般由输入层、隐含层和输出层这3部分组成,每一层都有若干相互关联的处理单元。DFNN的结构如图1所示。
Figure 1 Structure of deep feedforward neural network图1 深度前馈神经网络结构
在DFNN中,每一层对其输入进行非线性转换,并在这一层的输出中表示。第m层第n个神经元的计算公式如式(2)所示:
(2)
2.2.4 建立深度前馈神经网络
深度前馈神经网络中参数的设置如表2所示。
Table 2 Parameters setting of DFNN
输入变量为根据相关性分析选择出的6个特征变量。本文DFNN包含3个隐含层,每个隐含层包含42个节点。DFNN采用Adam(Adaptive moments estimation)算法作为优化器,均方误差MSE(Mean Square Error)作为损失函数来进行DFNN的优化更新。对于激活函数的选择,在神经网络反向传播误差的过程中,反向传播是逐层对激活函数的偏导进行相乘,但随着神经网络的层数不断增加,容易出现梯度消失问题。为了改善DFNN的性能,本文使用修正线性单元ReLU(Rectified Linear Unit)激活函数来解决梯度消失的问题。因为ReLU函数的偏导是1,它的许多特性使网络容易用基于梯度的方法进行优化。对于深层网络,ReLU可以更快地进行学习,且允许训练深度监督网络而不需要无监督的预训练[23]。ReLU的数学公式如式(3)所示:
(3)
2.2.5 评价方法
为了避免网络模型在训练中出现过拟合和欠拟合等问题,也为了验证方法对随机划分数据的可行性,本文采用5-折交叉验证和测试集验证2种方法进行实验[24]。5-折交叉验证将数据集等分为5个子数据集,每个验证过程将其中一组子数据集作为验证集,其余4组作为训练集构建模型,每个子数据集都要作为验证集验证1次,最后5次验证的平均得分作为方法的最终得分。5-折交叉验证原理图如图2所示。测试集验证将数据集按7∶3的比例划分为训练集与测试集,在测试集上测试获得模型评价得分。
Figure 2 Five-fold cross validation图2 5-折交叉验证
本文使用决定系数R2评价方法的学习能力,其值越接近1,方法的学习能力越强,模拟效果越好。采用均方误差MSE、平均绝对误差MAE(Mean Absolute Error)以及平均绝对误差百分比MAPE(Mean Absolute Percentage Error)3个评价指标来对预测方法进行评价。预测误差越小,表明方法精度越高。R2、MSE、MAE和MAPE的定义分别如式(4)~式(7)所示:
(4)
(5)
(6)
(7)
2.2.6 Bland-Altman分析法
在方法的一致性评价方面,研究表明仅用决定系数评价方法一致性是片面的[25]。因此本文研究采用Bland-Altman分析[26]评价方法的一致性。Bland-Altman分析是一种评价2种测量结果一致性的新方法,通过绘制散点图预测结果的一致性界限,根据散点图的一致性界限大小及落在一致性界限外的散点数来评价方法一致性。
3 实验结果
3.1 影响因子相关性
本文借助SPSS软件对体表数据与人体表面积进行相关性与显著性分析,分析结果如表3所示(其中显著性0.000指小于0.01,相关性显著)。
Table 3 Correlation and significance analysis of characteristic variables
根据表3内容选取相关性最高的身高、体重、腰围、臀围、手臂围和大腿围 6个变量作为输入变量。
对学生而言,利用EDA技术进行设计和仿真,不仅能提高学生的学习兴趣,巩固课堂所学知识,而且还能提高学生的动手能力,提高学生电子实验技能的应用水平。在电子行业中,传统的设计过程是:首先提出设计方案,然后设计电路,制作线路板,焊接元件,最后调试,有问题时再重新设计制作,这样不但费时费力,而且会造成大量资金的浪费。利用EDA技术可以避免这些问题的出现,提高工作效率。利用EDA技术进行实验教学具有缩短设计周期,节省设计、实验费用,提高设计质量等优点,因而得到了越来越多的应用[4]。
3.2 前馈神经网络深度分析
为验证3层前馈神经网络的合理性,本节分别选取包含2层、4层、5层和6层隐含层的前馈神经网络与3层前馈神经网络进行性能对比。首先进行5-折交叉验证,结果对比如表4所示。再将104名受试者按7∶3的比例划分训练集与测试集,各个方法的预测结果如表5所示。
Table 4 Performance comparison of DFNN under five-fold cross validation
Table 5 Performance comparison of DFNN on test set
从表4和表5可以看出,与其他层数的前馈神经网络相比,3层前馈神经网络的R2均为最大,MSE、MAE和MAPE的值均为最小。当网络深度由2层变为3层时,决定系数R2增大,MSE、MAE和MAPE的值均减小。而当网络深度由3层开始逐渐增加时,决定系数R2在逐渐减小而MSE、MAE和MAPE的值呈逐渐增大的趋势。因此,当网络深度为3层时预测效果最好。
3.3 预测结果
3.3.1 与传统方法比较
为验证DFNN的效果,首先比较DFNN与传统BSA计算方法的预测结果:对DFNN使用5-折交叉验证,选取最新的Yu和Kuehnapfel传统方法进行5-折交叉验证来对比,结果如表6所示。再将104名受试者按7∶3的比例划分训练集与测试集,在测试集上的预测结果如表7所示。
Table 6 Performance comparison with traditional methods under five-fold cross validation
Table 7 Performance comparison with traditional methods on test set
从表6和表7可以看出,无论是在交叉验证实验中,还是在测试集实验中,与传统的Yu等计算方法和Kuehnapfel等计算方法相比,DFNN模型获得的预测精度最高,不但决定系数R2增大,同时3个误差评价指标也都得到了一定程度的减小。DFNN模型获得了最大的R2值以及最小的MSE、MAE与MAPE值,这意味着DFNN的效果最好。
图3为测试集真实值与各个方法预测值的折线对比图。可以看出,Kuehnapfel等方法的预测值在一些点处与真实值变化规律相反;Yu等方法的预测值与真实值的差值与其他2种方法相比较大;DFNN模型预测值更贴合真实值,变化规律更相近,预测结果更准确。
Figure 3 Comparison of real value and predicted values by traditional methods on test set图3 测试集真实值与传统方法预测值对比
3.3.2 与其它方法比较
under five-fold cross validation
Table 9 Performance comparison with other methods on test set
从表8和表9可以看出,在构建的4种网络预测方法中,神经网络模型与多元线性回归模型的预测效果均好于随机森林回归模型的;DFNN的决定系数R2最大,MSE、MAE和MAPE的值均为最小,交叉验证与测试集验证方法下均是如此。DFNN的决定系数R2更接近1,模拟效果更好,预测值更接近实测值,DFNN的各项误差更小,表示方法精度更高,预测值更加可信。因此,与BP神经网络、MLR模型和随机森林相比,DFNN预测的效果最好、精度最高。
图4为测试集真实值与各个方法预测值的折线对比图。可以看出,虽然各个方法预测效果与真实值走向均大体相同,但随机森林的预测值与真实值偏差最大且在某些点处走向不同,BP神经网络和MLR预测值与真实值偏差较大,而DFNN预测值折线最贴合真实值折线,变化规律更相近,预测结果最准确。
Figure 4 Comparison of real value and predicted values by other methods on test set图4 测试集真实值与其它方法预测值对比
3.3.3 一致性分析
为了更准确地分析各BSA预测方法的一致性,本文采用Bland-Altman分析法,以每种方法的人体表面积预测值与人体表面积真实值的均值为横坐标,两者之间的差值为纵坐标,绘制Bland-Altman分析散点图。DFNN预测方法与其它对比BSA预测方法的散点图如图5所示,图中方法名称均代表使用此方法得出的体表面积。由散点图可以看出,在所有的对比方法中,DFNN预测方法的95%一致性界限范围最小,这意味着DFNN方法的一致性最好。
Figure 5 Bland Altman scatter plots 图5 Bland-Altman散点图
4 讨论
BSA在医学等领域有着极其重要的应用价值,在用药剂量选择、计算肾小球滤过率以及烧伤评估等方面起着十分重要的作用。然而现有BSA计算方法只考虑了人体少量参数,另外通过匹配特定的简单函数来估计方法参数,误差较大。三维测量获得的BSA更精确稳定,但三维测量大多昂贵且耗费时间较多,且这些测量(例如CT扫描)对人体辐射较大。本文提出了一种有效的方法来实现BSA临床计算,帮助医生更快更精确地获得病人体表面积,并通过多个实验证明了其有效性。首先,通过相关性分析选出6个与BSA相关性最高的影响因子,与之前的BSA计算方法相比,增加了几种不同的特征,这是降低体表面积计算误差的重要措施;然后,建立DFNN预测方法,实现BSA自动预测。
在与传统方法的比较中,本文选择了最新的Yu和Kuehnapfel计算方法进行对比。从实验结果可以看出,3种方法中DFNN的精度最高,误差最小,预测效果最好。这主要是因为借助相关性分析选取了与BSA相关性最高的特征变量,增加了人体参数,提高了预测精度。此外,神经网络不仅可以学习特征变量与BSA之间的关联,还可以自动从简单特征中学习提取到更深层、复杂的特征,既避免了传统的复杂计算也提高了BSA预测方法的精度,从而获得了更加精确的预测值。
在与其它方法的比较中,本文对DFNN、BP神经网络、MLR和随机森林进行BSA回归模型构建。结果表明,DFNN回归方法预测结果优于BP神经网络、MLR和随机森林模型的。DFNN使用ReLU激活函数,避免了梯度消失问题,通过使用带标签的数据进行训练,误差自上到下传播,利用误差来调整各层之间的权重,使得4种方法中DFNN获得了最高预测精度。根据Bland-Altman散点图也可以看出,DFNN在所有方法中95%一致性界限范围最小,一致性最好。
本文使用的样本数据量较小,还需要收集更多的体表数据以进一步优化模型。未来,随着样本数据增加,在大数据条件下选择构建合适的方法进行训练,以获得更高的BSA计算精度,提出更全面、适合不同种族的BSA计算方法。
5 结束语
为得到BSA的精确预测值,本文研究针对以往BSA计算方法指示性状较少的问题进行改进,借助相关性分析选择6个相关性较高的影响因子参与BSA预测计算,同时引入DFNN来构建回归模型计算BSA。在交叉验证与测试集验证的情况下,深度前馈神经网络分别与2种传统计算方法和3种其它方法进行比较,并进行了一致性分析。所有实验结果表明,本文所提出的回归方法能获得最高精度的预测值,能最准确地计算BSA,给予临床医学最好的帮助。