点击“中华口腔医学杂志”快速关注本刊官微
作者:常荍 王少烽 左飞飞 王凡 龚蓓文 王亚杰 谢贤聚
通信作者:谢贤聚
作者单位:首都医科大学口腔医学院正畸科(常荍、王少烽、王凡、龚蓓文、谢贤聚);北京朗视仪器股份有限公司(左飞飞、王亚杰)
引用本文:常荍, 王少烽, 左飞飞, 等. 基于深度学习的头颅侧位X线片自动诊断分类研究[J]. 中华口腔医学杂志, 2023, 58(6): 547-553. DOI: 10.3760/cma.j.cn112144-20230305-00072.
目的
基于深度学习构建头颅侧位X线片自动诊断分类模型,为正畸临床诊断提供参考。
方法
收集2015年1月至2021年12月就诊于首都医科大学口腔医学院正畸科的正畸患者头颅侧位X线片2 894张,构建数据集,包括1 351例男性和1 543例女性,年龄(26.4±7.4)岁。先由1名正畸专业主治医师和1名博士研究生(正畸工作年限分别为8和5年)进行人工定点,测量头影测量项目并进行初分类,再由1名正畸专业主任医师和1名主治医师(正畸工作年限均超过20年)进行核查,内容包含8项骨性和牙性诊断分类。数据按7∶2∶1的比例分别纳入训练集、验证集和测试集。使用开源DenseNet121网络(一种深度学习模型)构建头颅侧位X线片自动诊断分类模型。模型训练后,使用测试集计算模型的分类准确性、精确性、敏感性、特异性,输出受试者工作曲线并计算曲线下面积评估模型性能;输出热力图,可视化模型关注区域。
结果
成功构建头颅侧位X线片自动诊断分类模型,其对1张头颅侧位X线片作出8项诊断分类平均需要0.112 s。其中5项诊断分类的准确性为80%~90%,包括矢状骨面型、下颌发育、垂直骨面型、上前牙倾斜情况和下前牙突出情况;3项诊断分类的准确性为70%~80%,包括上颌发育、下前牙倾斜情况、上前牙突出情况。各项诊断分类的总体95%可信区间曲线下面积均≥0.90。热力图显示,分类成功的头颅侧位X线片的激活区域分布于分类相关结构区域。
结论
本项研究基于DenseNet121网络构建了头颅侧位X线片自动诊断分类模型,其可实现8项临床常用诊断项目的快速分类。
通过头影测量分析颅颌面软硬组织的结构及其相互关系,有助于作出正确的诊断和矫治设计。为解决人工定点耗时、定点者间变异大的问题[ 1 ],学者开始探讨使用人工智能进行自动定点工作[ 2 , 3 , 4 ]。2015年国际生物医学图像研讨会(International Symposium on Biomedical Imaging,ISBI)的公开牙科X线图像分析挑战赛设定了19个自动定位的标志点,同时进行8项头影测量项目的诊断分类[ 5 , 6 , 7 ]。自动定点推导分类的准确性与定点准确程度关系密切,同时,相关基准平面或标志点的变异也可对测量项目产生影响[ 8 ],造成与临床医师经验不符的诊断结果。通过深度学习模型进行直接图像分类,直接学习头颅侧位X线片中不同类型解剖结构的内在特征,不经过定点过程,可一定程度避免标志点误差或变异导致的诊断分类错误。Yu等[ 9 ]首次采用深度学习模型直接对矢状及垂直骨面型进行诊断分类。Yim等[ 10 ]将诊断分类进一步扩展,增加了覆𬌗诊断分类。Kim等[ 11 ]证实,与自动定点推导分类相比,直接图像分类具有一定优势。目前头颅侧位X线片的直接图像分类研究主要针对矢状及垂直骨面型分类,未能单独分析上颌与下颌的骨性特征,而牙性分类仅包含覆𬌗,影响其临床进一步应用。本项研究拟通过开源DenseNet121网络构建头颅侧位X线片自动诊断分类模型,扩展骨性及牙性诊断分类,以期为临床提供参考。
本项研究为回顾性研究,得到首都医科大学附属北京口腔医院伦理委员会批准(批准号:CMUSH-IRB-KJ-PJ-2022-49),资料收集获得患者或其监护人同意,并签署知情同意书。
1.资料收集:收集2015年1月至2021年12月就诊于首都医科大学口腔医学院正畸科的正畸患者头颅侧位X线片共2 894张,构建数据集,其中包括1 351例男性和1 543例女性,年龄(26.4±7.4)岁(14~54岁)。纳入标准:患者年龄>14岁。排除标准:头颅侧位X线片存在运动伪影或其他质量问题。头颅侧位X线片均由首都医科大学口腔医学院影像科使用口腔X射线机(Kodak 8000C,Carestream Health,加拿大)拍摄,拍摄参数:电压80 kV,电流10 mA,X线放射时间:0.5 s。头颅侧位X线片以“.tiff”格式存储,分辨率1 360像素×1 840像素,图片尺寸17.3 cm×23.4 cm。
2.数据分类:参考临床需求,纳入临床常用的8项骨性和牙性诊断分类项目。具体:矢状骨面型[ANB角(上牙槽座点、鼻根点与下牙槽座点构成的角)]、上颌发育[SNA角(上牙槽座角)]、下颌发育[SNB角(下牙槽座角)]、垂直骨面型[SN-GoGn角(下颌平面角)]、上前牙倾斜情况[U1-SN角(上颌中切牙长轴与前颅底平面相交的下内角)]、下前牙倾斜情况[IMPA角(下中切牙长轴与下颌平面相交的上内角)]、上前牙突出情况[U1-NA距(上颌中切牙切缘至鼻根点-上牙槽座点连线的垂直距离)]、下前牙突出情况[L1-NB距(下颌中切牙切缘至鼻根点-下牙槽座点连线的垂直距离)]。进行10个解剖标志点的人工标注,包括鼻根点(N点)、蝶鞍点(S点)、上牙槽座点(A点)、下牙槽座点(B点)、髁顶点(Gn点)、上中切牙切缘点(UI点)、上中切牙根尖点(UIA点)、下中切牙切缘点(LI点)、下中切牙根尖点(LIA点)。由1名正畸专业主治医师及1名博士研究生(正畸工作年限分别为8和5年)进行定点统一培训,明确标志点定义及描记方法。分别使用Image J软件(NIH,美国)进行所有头颅侧位X线片标志点描记,2人结果取均值。2周后采用随机函数抽取50张头颅侧位X线片进行复测,结果显示,2名观察者内可信度较高(ICC>0.99,P<0.001),观察者间可信度较高(ICC>0.90,P<0.001);观察者内变异度分别为(1.02±0.85)和(0.90±0.79)mm。观察者间变异度为(1.24±1.05)mm。
定义8项头影测量项目的计算方式,可具体分为:三点定义角度、两线交角、点到线的距离[ 12 ]。标志点坐标经计算后得到测量项目数值,根据中国人恒牙期正常值进行初步分类[ 13 ]。分类结果由两名高年资正畸医师(1名主任医师及1名主治医师,正畸工作年资均超过20年)进行核查,若有与临床诊断经验不符的诊断,分析其原因并讨论仲裁进行人工修正,作为最终分类结果。
由于纳入多项分类标签,部分类别存在类不平衡,故采用欠采样技术,以数目最少类的图片数作为最终纳入数据集的图像数,保持类别均衡,数据见 表1 。采用随机函数按7∶2∶1分入训练集、验证集和测试集,分别用于模型训练、调整及性能评估。
3.模型训练:对数据集头颅侧位X线片进行旋转,添加随机噪声等数据增强操作。原始图像分辨率为1 360像素×1 840像素,预处理操作为缩放至原图15%,缩放后大小为204像素×276像素。模型训练过程:采用经过预训练的开源DenseNet121网络(一种深度学习模型),输入头颅侧位X线片图像,输出为预测的类别。DenseNet121网络由一系列卷积层、池化层、密集块、全连接层和Softmax分类器组成,具体包括:①先采用1个卷积核为7×7、步长为2的卷积操作得到138像素×102像素的特征图,再采用1个池化核为3×3、步长为2的最大池化操作得到69像素×51像素的特征图。②继续采用4个密集块和3个过渡层交替堆叠的方式构建网络,1个密集块由多个密集连接组成,每个密集连接包括1个1×1卷积层和1个3×3卷积层,每个密集连接的输入为前面所有密集连接的输出拼接,输出为不改变大小的特征图,4个密集块分别有6、12、24和16个密集连接。过渡层由1个1×1卷积层和1个2×2平均池化层组成,于每个密集块之间使用,可将特征图大小和特征图通道数均减半,即经过3个过渡层后特征图分别为34像素×25像素、17像素×12像素和8像素×6像素。③通过1个7×7 全局平均池化层和1个全连接层得到1个三维向量,最后用Softmax函数将该向量转换为3个类别的概率值。DenseNet 121网络作为1个经典的卷积神经网络,最大亮点是建立层与层间的密集连接,且其通过特征在通道上的连接实现了特征复用,从而在多种任务上取得较好成绩。训练时损失函数为交叉熵损失函数,批量大小为32,使用学习率为0.01的随机梯度下降优化器进行优化,选取验证集准确性最高的模型作为最终的头颅侧位X线片自动诊断分类模型。本项研究所有操作均使用Python语言实现,在Ubuntu20.04系统下运行。涉及算法模型的操作主要基于Pytorch深度学习框架开发,并在型号为NVIDIA GeForce RTX 3080的图形处理器上训练和测试。
4.模型评估:应用测试集评价头颅侧位X线片自动诊断分类模型。根据混淆矩阵计算分类的准确性、精确性、敏感性和特异性,受试者工作曲线显示模型诊断分类的综合性能,绘制受试者工作曲线(receiver operating characteristic curve,ROC曲线)并计算曲线下面积(area under the curve,AUC)。为增加模型可解释性,对模型关注区域进行可视化,使用梯度加权分类激活映射方法生成热力图[ 14 ]。
1.头颅侧位X线片自动诊断分类模型的构建及性能:经过200次迭代,本项研究成功构建基于开源DenseNet 121网络的头颅侧位X线片自动诊断分类模型,其可实现8项临床诊断分类,对1张头颅侧位X线片作出8项诊断平均需0.112 s。8项诊断分类项目的具体分类准确性、精确性、敏感性、特异性及AUC结果见表2及表3 ,其中矢状骨面型、下颌发育、垂直骨面型、上前牙倾斜情况、下前牙突出情况的分类准确性为80%~90%,上颌发育、下前牙倾斜情况、上前牙突出情况的分类准确性为70%~80%。
2.头颅侧位X线片热力图:见图1 , 2 。分类成功的热力图显示,对于骨性分类,诊断矢状骨面型时,上下颌骨前部区域被激活;诊断垂直骨面型时,上下颌骨后部区域被激活;诊断颌骨发育情况时,上下颌区域被分别激活。对于牙性分类,诊断上下前牙倾斜、突出情况时,激活区域分别位于上下前牙区域,激活范围略有区别。分类失败的热力图显示,激活区域分布弥散或集中于不相关的结构上。
图1 头颅侧位X线片自动诊断分类模型分类成功的热力图 A:矢状骨面型;B:上颌发育情况;C:下颌发育情况;D:垂直骨面型;E:上前牙倾斜情况;F:下前牙倾斜情况;G:上前牙突出情况;H:下前牙突出情况
图2 头颅侧位X线片自动诊断分类模型分类失败的热力图 A:垂直骨面型(激活范围分布弥散);B:上前牙突出情况(激活范围位于关注结构外)
近年,可进行头颅侧位X线片自动分析的人工智能技术发展迅速,在高效率分析的同时,更可融合专家经验,提供更准确的专业参考。其中,头颅侧位X线片的自动诊断分类可分为自动定点推导分类和直接图像分类。前者需根据自动定点计算测量项目,推导诊断分类。而自动定点不可避免存在误差,目前人工智能自动定点的径向误差为1 mm左右[ 2 , 15 ],对2 mm成功检测率而言,仍有部分标志点的定点误差与临床要求存在差距。测量项目需组合使用多个标志点,误差来源多、易受影响且难以评估[ 16 ]。若测量结果处于正常范围边界,即使微小的误差变化也可能导致错误分类,进而改变诊断分类结果。Hwang等[ 7 ]研究显示,自动定点分类SNA角的分类准确性显著低于其他分类,可能与A点的自动识别困难相关。除定点误差外,测量项目还受基准平面的影响,如SNA角受前颅底平面倾斜角度影响明显,直接计算推导而不分析影响因素,较易出现错误分类。Kim等[ 11 ]对比人工智能定点分类和直接图像分类,发现具有更大感兴趣区的直接图像分类模型在骨性分类中表现出更好的性能。直接图像分类关注整体解剖结构,而非单一标志点;其直接学习不同类型解剖结构的内在特征,而不依靠人为提取的测量项目参考值,并包含了专家的诊断分类经验。因而人工智能对头颅侧位X线片的直接图像分类具有一定的优势,但单纯诊断不能体现骨性和牙性不调的严重程度,将自动定点和自动诊断结合的人工智能头颅侧位X线片自动分析体系可为临床提供全面、准确、快速的参考依据。
目前头颅侧位X线片直接图像分类研究仅限2~3项诊断分类,包括矢状骨面型、垂直骨面型、覆𬌗,远不能满足临床需求。本项研究扩展诊断分类项目,囊括4项骨性和4项牙性诊断分类。在矢状骨面型的基础上,进一步区分上下颌发育情况。对于牙性分类,着眼于头颅侧位X线片独有的诊断信息,选择前牙唇倾、前突程度,与正畸方案减数与否关系密切。8项诊断分类可基本满足临床需求。
本项研究整体分类结果显示,骨性诊断分类的准确性除上颌发育(78%)外,其余诊断分类的准确性为86%~89%。牙性诊断分类的准确性为73%~85%,低于骨性分类,推测对于模型训练,颌骨可能相比牙齿有更大的可关注区域。对比数据量接近的上下颌发育情况,上颌分类的准确性较低,尤其是上颌后缩分类,本项研究模型对上颌后缩类型图像特征的识别相对困难。精确性评价模型的查准性能,敏感性评价模型的查全性能,特异性评价模型的误诊情况[ 17 ]。针对不同诊断分类目的,侧重指标不同。本项研究各诊断分类的各项性能较均衡。AUC是量化ROC曲线的指标,可对模型性能进行综合评价[ 18 ]。AUC超过0.90时,模型有较高的准确性。本项研究各诊断分类项目AUC均值均≥0.90,可为临床提供一定参考。
对于具体分类,本项研究模型对不同诊断分类的性能略有区别。矢状骨面型诊断分类中,骨性Ⅲ类错𬌗的分类准确性高于骨性Ⅰ类和Ⅱ类错𬌗,与Li等[ 19 ]、Yu等[ 9 ]及Yim等[ 10 ]的结果一致,可能与人工智能模型更易提取骨性Ⅲ类错𬌗图像特征相关。而Kim等[ 11 ]发现骨性Ⅰ类和Ⅱ类错𬌗的分类准确性高于骨性Ⅲ类错𬌗,可能与各研究应用的模型相关。对于垂直骨面型分类,本项研究模型对低角的分类准确性最高,其次是高角和均角,与Yim等[ 10 ]的结果一致,而Yu等[ 9 ]对高角和低角的分类准确性相似,均高于均角。分类性能的区别可能与不同模型及数据分布相关。
对分类错误的数据进行分析,2/3的误判数据邻近分类正常值边界。Yu等[ 9 ]在正常值分类的基础上,增加了剔除矢状及垂直骨面型正常值边界0.2和0.3倍标准差区间的数据生成模型Ⅱ和模型Ⅲ,结果显示诊断模型的性能从模型Ⅰ到模型Ⅲ明显提高。类别之间统计界限的增加使分类更容易,人工智能模型更易获取图像分类特征。采用这种方式,虽然准确性提升但数据分布不连续,不符合临床需求[ 10 ]。另外,对于分类标准,有学者采用ANB角及Wits值[ 9 , 19 ],同时满足两者条件才被纳入研究,这也是对临界数据的一种筛选,不能同时满足两项标准的数据被剔除。无论对正畸专业医师还是对人工智能,临界病例的分类诊断同样存在难度。人工智能分类的本质是输出对应分类标签概率。分类明确的数据分类概率高,而临界病例分类概率较低。因而,实际应用中输出带有分类概率的分类对临床医师把握临界病例分类决策有一定参考意义。
数据集的数量和样本分布对模型分类性能尤为重要。训练集数据越多越全面,模型泛化性能越好。医学数据集具有类别不平衡的特点[ 20 ]。在不平衡数据集上训练分类模型,模型可能倾向于将样本预测为多数类[ 21 , 22 ]。虽然同样获得较高的正确率,但无法保证少数样本的分类准确性。由于本项研究进行多项分类,较难兼顾每项分类数据均衡,除矢状骨面型外,存在类不平衡情况。因此,本项研究应用欠采样技术。这可导致个别类别的训练数据量减少。本项研究矢状骨面型分类数据量高于现有研究且分布均衡[ 9 , 10 , 11 , 19 ];该项分类性能高于其他分类,可能与数据量相关。垂直骨面型分类数据量略低于Yu等[ 9 ],Yim等[ 10 ]的研究中该分类数据量达2 174例,但低角仅占18.4%。今后应着重针对个别分类继续扩充数据量,提高分类性能。
人工智能的应用面临黑盒问题,即输入和输出已知,但内部可解释性较差,人工智能的计算过程无法解释和理解[ 23 ]。虽然无法直接解释模型如何推算出结果,但可通过热力图观察激活影响诊断结果的区域是否与人类思维相同,从另一角度解释算法[ 24 ]。分类成功的热力图显示,人工智能模型激活区域分布于分类相关结构区域,由此可以判断该决策是可靠的,人工智能模型可模仿人类思维过程。但结果中也存在个别分类成功的图像激活区域位于其他位置。在下颌发育情况的分类中,下颌前突数据的激活区域出现于上颌。分析可能由于下颌前突和上颌后缩伴发,人工智能模型可能在寻找其他规律,提示数据集分类时,下颌前突分类中也应关注上颌发育情况,纳入更多数据进行验证,从而获得更好的临床可信度。
综上,头颅侧位X线片直接图像分类可避免定点误差及标志点变异造成的分类错误,参考专家的经验,寻找头颅侧位X线片中不同类型解剖结构的内在特征。本项研究基于开源DenseNet121网络构建了头颅侧位X线片自动诊断分类模型,扩展了现有的自动分类项目,实现8项临床常用诊断项目的快速分类,可为临床提供一定参考。
(参考文献略)
*转载请获得本公众平台许可*