敖弟华,田熙睿,马明勋,张 波,陈 敏,彭艳丽
圆锥角膜是最常见的原发性角膜扩张疾病,其特征是角膜局部变薄并向前的锥形突出[1-2]。据统计圆锥角膜发病率约5/10000~23/10000主要由于各研究之间采用了不同定义和诊断标准[2-3]。圆锥角膜晚期可出现急性角膜水肿甚至角膜穿孔,常常需要进行角膜移植,因此其诊治强调早期、及时,以避免视力进一步下降。但早期圆锥角膜临床表现并不明显,仅表现为高度不规则近视散光,为鉴别诊断带来了不小的困难。目前基于Scheimpflug断层扫描技术的Pentacam眼前节分析仪因其能提供角膜前后表面的准确情况,通过三维重建角膜前后表面并与最佳拟合球面(best-fit sphere, BFS)进行比较获得角膜高度数据,同时配备Belin/Ambrósio增强扩张显示系统(Belin/Ambrósio enhanced ectasia display, BAD)来评估角膜扩张风险。因此在圆锥角膜筛查中应用广泛。
然而Pentacam在评估角膜数据时所参考对比的样本数据库数据来源于欧洲人种[4],而亚洲人种的眼前节结构尺寸(角膜直径)相对白色人种明显较小[5-6],有研究发现角膜直径与Pentacam测量参数显著相关,尤其是BAD系统中的标准化指标在小直径角膜患者中明显增大,可导致超过50%的患者被误判为可疑圆锥角膜[7-9]。因此如何进一步提升对可疑圆锥角膜的鉴别能力成为临床工作的难点。
随着计算机算力的不断增强,人工智能算法的不断发展,基于深度学习的图像分类技术开始被运用在各个领域,不仅如此,图像分类技术本身也有了长足的发展[10-12]。除卷积神经网络(convolutional neural networks,CNN)[12]及注意力机制[13]之外,近年来,谷歌团队提出的Vision Transformer[14-15](ViT)模型,在几乎没有修改原始Transformer[16]的结构基础上,直接将图片切分为序列输入,从而完成基础的视觉分类工作。在以往的研究中,已有团队利用机器学习算法对角膜特征建立数据模型[17-19],以提高圆锥角膜诊断准确率,但针对小直径角膜群体的样本数据建立及圆锥角膜诊断辅助模型尚无报道。
本研究首次尝试结合深度学习中的CNN模型和Transformer模型,搭建基于小直径角膜的角膜地形图数据集,构造数据模型对角膜形态进行诊断分类,辅助圆锥角膜的早期诊断,为早期筛查及治疗提供真实有效的指导作用。
1.1对象诊断性研究。收集重庆南坪爱尔眼科医院就诊的小直径角膜(Pentacam地形图所测直径≤11.1mm)患者共830例830眼,其中男338例,女492例,年龄14~36(平均23.19±5.71)岁,其中2020-01/2022-03在重庆南坪爱尔眼科医院已行角膜屈光手术患者731例731眼,2015-01/2022-03确诊圆锥角膜患者99例99眼。屈光手术患者纳入标准:(1)术前检查时2a内近视进展小于0.50D,双眼无圆锥角膜相关体征;(2)术后随访时间3mo以上,期间未发现术后角膜扩张;(3)术前Pentacam角膜地形图:QS项为“OK”,检查范围直径≥8mm。排除标准:有其他角膜疾病。圆锥角膜患者纳入标准:由2位角膜科专家联合诊断(1)具有圆锥角膜典型体征:Fleischer环、Vogt线、Munson征、角膜中央或偏颞下部呈明显锥状突起、角膜中央变薄明显等;(2)Pentacam角膜地形图:典型圆锥角膜分级(topographical keratoconus classification,TKC)阳性,Topometric综合地形图:表面变异指数(index of surface variance,ISV)、垂直非对称指数(index of vertical asymmetry,IVA)、圆锥角膜指数(keratoconus index,KI)、中心圆锥角膜指数(center keratoconus index,CKI)、高度非对称指数(index of height asymmetry,IHA)、高度轴偏心指数(index of height decentration,IHD)提示异常,角膜前、后表面高度图岛状改变。本研究经重庆南坪爱尔眼科医院伦理审查委员会批准(No.IRB2022002),所有患者都充分了解手术及研究的风险和益处,并签署知情同意书,所有流程均符合《赫尔辛基宣言》的要求。
1.2方法
1.2.1诊断及分组由2位角膜科专家利用Pentacam地形图中Belin/Ambrósio增强扩张显示(Belin/Ambrósio enhanced ectasia display,BAD)系统将已行屈光手术患者数据标注为正常角膜、可疑圆锥角膜,同时联合诊断并标注圆锥角膜。分类指标:(1)角膜高度数据:角膜后表面高度差异图、角膜后表面高度差异图、角膜前表面高度偏差值(Df)和后表面高度偏差值(Db);(2)角膜厚度数据:平均厚度进展偏差值(Dp)、最薄点厚度偏差值(Dt)、Ambrósio厚度最大变化率偏差值(Da)和总偏差值(Do)。角膜前表面高度差正常值为<5μm,可疑值为5~7μm,病理值为>7μm,角膜后表面高度差正常值为<12μm,可疑值为12~16μm,病理值为>16μm;Df、Db、Dt、Dp、Da正常值为<1.6,可疑值为1.6~2.6,病理值为>2.6;Do正常值同上,可疑值为1.6~3.0,病理值为>3.0。正常角膜组:角膜高度数据及厚度数据均在正常范围;可疑圆锥角膜组:角膜高度数据及厚度数据为可疑或病理;圆锥角膜组:2位角膜科专家根据临床表现和Pentacam角膜地形图数据联合诊断(图1)。
图1 数据处理及分类示意。
1.2.2采集数据通过Pentacam三维眼前节分析仪导出七类原始三维角膜地形图数据,共4个逗号分隔值(Comma-Separated Values,CSV)文件,包含角膜前表面高度、角膜后表面高度、角膜前表面曲率、角膜后表面曲率、前房深度、全角膜的屈光度和角膜厚度,数据描述了在眼球的任意位置对应的数值大小。将7类角膜数据拼接在一起,对数据进行预处理后进行保存,以形成完整的角膜地形图数据集。
1.2.3建立模型本研究模型基于PyTorch机器学习库构建,在其基础上进行开发改进及试验。在数据特征提取部分采用由卷积神经网络及跳跃连接构成的ResNet50结构,在提取角膜地形图关键信息的同时,保证梯度的反向传播,以解决网络较深时梯度消失的问题,加快训练过程;此外,引入基于自注意力机制的Transformer模型,它能以并行的方式进行矩阵计算,可以更好地捕捉数据内部相关性以及学习远距离依赖关系。
具体步骤如图2所示:(1)从Pentacam三维眼前节分析仪中收集角膜直径≤11.1mm以下的所有角膜地形图数据,并按照正常角膜、可疑圆锥角膜和圆锥角膜三类进行标注,以此作为原始数据。(2)根据不同类别的三维角膜地形图数据,使用通道拼接的方式将其直接合并,并对数据进行裁剪、归一化、数据转换等预处理,构建模型训练数据集。(3)先利用残差神经网络Resnet50(ResNet, Residual Network)对数据进行初步特征提取,再将得到的特征图输入到Transformer模块中,利用其内部的编码解码及自注意力机制,添加位置信息并完成特征融合。(4)使用全连接层输出圆锥角膜的诊断分类结果,通过交叉熵损失函数进行模型的反向传播训练,再通过样本交叉验证结果,获得最终的分类模型。(5)使用诊断模型对验证集进行正常角膜、可疑圆锥角膜和圆锥角膜的诊断,计算诊断准确率、敏感度、特异度等指标。(6)采用受试者工作特征曲线对比三种数据模型诊断的效能。
图2 算法建模流程示意图。
1.2.4训练设置数据集中包括了正常角膜、可疑圆锥角膜、圆锥角膜三类数据,通过ResNet模型、Vision Transformer模型及本文使用的CNN+Transformer模型进行两两对比实验。在模型的训练中,Batchsize设置为8,根据训练次数,每训练10次后将学习率变为前一轮的0.95,以便损失函数最终能达到收敛的效果。优化器选用adam,损失函数为交叉熵损失函数,训练集与验证集比例为4∶1,共训练200次。
统计学分析:采用SPSS 25.0进行统计学分析,计量资料采取平均数±标准差表示,采用受试者工作特征曲线评估三种数据模型的诊断效能,P<0.05表示差异具有统计学意义。
2.1纳入患者的一般资料本研究共纳入患者830例830眼,通过计算机随机采样方法随机筛选训练集患者665例,验证集患者165例。纳入患者的一般资料见表1。
表1 纳入患者的一般资料
2.2三种不同模型对正常角膜和可疑圆锥角膜的诊断情况三种深度学习算法模型在对包含正常角膜与可疑圆锥角膜的数据集进行训练与诊断时,验证集准确率分别为85.57%、86.11%和86.54%,受试者工作特征曲线下面积分别为0.823、0.830和0.842(表2,图3)。
图3 三种数据模型对正常角膜和可疑圆锥角膜数据的验证集进行诊断的受试者工作特征曲线。
表2 三种不同模型对正常角膜和可疑圆锥角膜的诊断情况 %
2.3三种不同模型对可疑圆锥角膜和圆锥角膜的诊断情况三种不同模型对包含可疑圆锥角膜和圆锥角膜数据的验证集进行训练和诊断,验证集准确率分别为97.22%、95.83%和98.61%,受试者工作特征曲线下面积分别为0.951、0.939和0.988(表3,图4)。
图4 三种数据模型对可疑圆锥角膜和圆锥角膜数据的验证集进行诊断的受试者工作特征曲线。
表3 三种不同模型对可疑圆锥角膜和圆锥角膜的诊断情况 %
圆锥角膜是以角膜扩张、中央变薄向前突出呈圆锥形为特征的一种眼病,圆锥角膜患者的治疗需要做到早期筛查早期干预,但圆锥角膜的早期临床表现并不明显,难以及时诊断,目前临床多根据角膜地形图及角膜层析成像进行诊断。其中Pentacam断层扫描技术可通过数据分析,输出大量标准化角膜地形参数和角膜地形图像供临床医生参考[20-21]。随着近年来角膜激光手术的需求量逐渐增加,如何快速、准确地筛查圆锥角膜是目前临床急需解决的问题。人工智能可联合分析多个参数,加速传统的医疗筛查程序,能够在很短的时间内提供诊断信息。Pentacam可输出多个相关参数,对于机器学习纳入的参数过多会增加计算的冗余量,而参数过少则会降低计算的精确度,Ruiz等[22-23]纳入不同的参数进行分析,结果显示纳入22个参数的数据模型其准确率反而高于纳入25个参数的模型,由此可见筛选合适的参数对保障模型计算精度的重要性;Cao等[24]选择对11个Pentacam分析出角膜数据进行分析学习,最终筛选出5个敏感度最高的参数分别为球镜度数、前房深度、角膜后表面曲率、角膜中央厚度和角膜最薄点厚度。因此本研究选取角膜前表面高度、角膜后表面高度、角膜前表面曲率、角膜后表面曲率、前房深度、全角膜的屈光度和角膜厚度数据纳入模型学习。
对于Pentacam数据的处理,Chen等[17]直接利用Pentacam获取角膜轴向曲率图、角膜高度图、角膜厚度图,捕捉不同角膜的图像特征建立算法模型,在测试集上检测圆锥角膜和健康角膜的准确率为97.85%;Shen等[25]则选用10个Pentacam输出的角膜地形参数进行分析和学习。以往的研究其纳入的数据无论是角膜图像还是角膜地形参数,均是由检查设备软件分析建立的,即在模型学习前Pentacam对原始数据已经进行了预先处理分析,因此数据处理过程中对某些信息的误判常常被一并带入模型建立过程。例如Pentacam的分析诊断系统内用作对比的数据库中数据多来源于欧洲人种,对于角膜直径较小的亚洲人,其角膜地形图与圆锥角膜具有高度相似性,在临床使用时其诊断出的阳性率较高,曹开伟等[8]研究发现角膜直径会干扰Pentacam的角膜高度数据和角膜厚度进展参数,小直径角膜患者出现假阳性比例更高;Ding等[9]研究发现BAD-D值在小直径角膜患者组中明显增大,可导致50.5%的患者被警示可疑圆锥角膜,提示BAD系统初步筛选出的可疑圆锥角膜需要参考角膜直径进行进一步判断。因此本研究尝试使用更完整、更原始的CSV文件数据建立小直径角膜样本数据库,参考既往对角膜直径的研究,选取角膜直径≤11.1mm作为研究对象[7-8],构建深度学习模型,对小直径角膜患者进行筛查诊断。
以往研究曾借助多种深度学习方法开发诊断模型,神经网络能够提取到不同水平的特征,网络的层数越多,意味着能够提取到不同水平的特征越丰富。并且,越深的网络提取的特征越抽象则越具有语义信息,然而简单的提高网络深度会导致梯度弥散或梯度爆炸。同时随着层数增加,训练集上的准确率常出现饱和甚至下降,出现网络退化的问题。为了解决上述问题,便出现了残差神经网络(ResNet)[26-27]。残差神经网络将训练设计为两部分,一部分是残差映射F(x),另一部分是恒等映射x。由于残差值一般较小,相比原始网络特征,残差学习更加容易,并且当残差为0时,增加网络层数仅仅做了恒等映射,不会导致网络性能的下降。当网络过深时,为了防止模型参数过多导致的训练过慢,ResNet还采用1×1卷积的方式,将256维的特征图先降维至64维,经过3×3卷积后再通过1×1卷积恢复至256维,以此来减少计算和参数量。Kuo等[28]构建了3种传统CNN模型对Pentacam数据进行学习和训练,ResNet模型展现了最高的分类效能,诊断正常角膜和圆锥角膜的准确率为95.8%,然而ResNet卷积操作的感受野有限,仅能聚焦于角膜适合诊断的区域,在信息获取方面存在局限性。近年最新提出的Vision Transformer模型(ViT)的核心为多头自注意力机制,能以并行的方式进行矩阵计算,可以更好地捕捉数据内部相关性以及学习远距离依赖关系,实现任一通道与所有通道之间的跨通道特征融合[29],经过多次的注意力操作后,对所有特征图进行均值池化,并与全连接网络相连。最终利用Softmax层将模型的预测结果以概率的形式展现出来,输出概率最大值所对应的类别即是模型判断的输入样本类别。Lee等[30]建立的ViT模型对眼前段OCT图像展现了较高的年龄分类能力,展现了ViT模型在分析年龄相关的眼前段疾病的极大潜能,但其训练难度较大,对样本集的数据量要求更大[14-15]。
针对以上存在的问题,因此本研究尝试结合两类模型,将ResNet模型最后一个模块中的卷积替换为Transformer中的多头自注意力操作,以尝试获得更好的圆锥角膜诊断结果。通过原始角膜地形图数据的导出、特征拼接、数据预处理及数据标注,获取不同类型的角膜数据,并生成相应的角膜数据样本库。利用卷积学习大尺度图像中抽象和低分辨率的特征图,同时利用跳跃连接避免出现梯度消失的问题;通过自注意力机制融合特征图中包含的信息,然后通过Transformer模块进行远距离的特征融合,生成特征向量,最后通过全连接神经网络对特征向量进行分类识别。在诊断正常角膜与可疑圆锥角膜时,验证集准确率为86.54%,在诊断可疑圆锥角膜与圆锥角膜时CNN+Transformer在验证集上获得98.61%的准确率。与本研究结果相似,Ruiz等[22]基于Pentacam数据的模型对于圆锥角膜和正常角膜诊断的准确率为92.6%,而亚临床期圆锥角膜与正常角膜的诊断率为65.2%,而在顿挫型圆锥角膜和正常角膜的鉴别上敏感性为79.1%,特异性为97.9%[23]。针对圆锥角膜较容易被模型诊断,而早期圆锥角膜的诊断准确率较差的问题,可能有以下几种原因。首先,圆锥角膜的临床进展是一个长期过程,据估计有50%的亚临床圆锥角膜在16a内发展为圆锥角膜而最大的风险时间是在发病的前6a[3],因此仅根据一张地形图像进行预测是不准确的。其次本研究数据库中的可疑圆锥角膜本质上属于正常角膜,其角膜地形图特征与正常角膜重合范围较大,因此所以三种模型准确率均不高。由于圆锥角膜通常累及双眼,对于早期圆锥角膜的诊断,双眼角膜的不对称性是一个关键特征。Shen等[25]研究发现双侧地形图差异算法可以提高圆锥角膜的敏感性和特异性,以此补充传统诊断模型,然而各类角膜地形图特征参数对诊断的影响仍然需要更大的样本量来支持分析。
本研究存在一定局限性:(1)为对角膜地形图数据提示异常的患者排除圆锥角膜,对所有已行角膜屈光手术的患者均随访3mo以上,但仍不能完全排除圆锥角膜的可能性。(2)圆锥角膜发病率较低,角膜直径≤11.1mm的患者占比较少,因此本研究中圆锥角膜的数据样本时间跨度较长,数量较为有限。同时机器算法的运行需要标准化的数据库和一致性的诊断标准才能保证其精度,对于一种罕见的进展性疾病的早期检测,明确分类和预测严重程度的变化是非常有难度的。例如可疑圆锥角膜、亚临床期圆锥角膜、顿挫型圆锥角膜,其筛查标准并未完全统一,这致使样本数据库不能准确分类,因此很难直接比较各类人工智能算法对于圆锥角膜的诊断效能。
总之,CNN+Transformer模型结合了卷积的平移不变性以及Transformer全局特征获取的特点,在圆锥角膜的诊断中效果优于ResNet和Vision Transformer模型,可以帮助提升临床医疗中可疑圆锥角膜的高精度筛查。对于本研究的分类结果,仍然需要临床医生联合患者个体特征进行综合考虑。在未来研究工作中,可将解决数据不平衡问题作为重点研究方向,并尝试在临床使用中实现对诊断数据智能采集、数据集构建等功能,以便扩大数据样本,进行模型的自学习,进一步提高模型的准确率和泛化性。