基于深度迁移学习的中药饮片识别研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于深度迁移学习的中药饮片识别研究
发表时间:2019-08-20T10:48:30.937Z 来源:《中国医学人文》2019年第07期作者:李红波[导读] 对中药饮片进行鉴定识别,有利于规范中药材市场,加强中药饮片的质量监控;对中药饮片鉴别进行定量化研究,促进中药饮片的客观化发展。
保定冀中药业有限公司河北保定 071000 摘要:医学的发展为与人们生命健康有着密切关系。我国是中药材资源丰富的国家,同时中药饮片在临床防病治病过程中得到广泛应用,据相关报道,2017年中药饮片市场规模达到2330亿元,2018年达到2734亿元,可见中药饮片庞大的市场价值。中药饮片是由中药材经过洗净、炮炙、加工等环节制成;然而,在其加工过程中往往由于各方面原因造成药材形状变更、颜色失真、外表混淆等情况,不易区
分;且由于药材的真伪、优劣与临床用药的安全有效有直接关联;因此对中药饮片进行鉴定识别,有利于规范中药材市场,加强中药饮片的质量监控;对中药饮片鉴别进行定量化研究,促进中药饮片的客观化发展。
关键词:深度迁移学习;中药饮片;识别方法引言
中药饮片是中医药中从自然取材的,进行初步加工后自然风干或炮制制成薄厚不一的片状或块状饮片。这种制作方法不仅保留了药物最原始的药效,还有利于中药饮片的调配和存放,在熬制过程中也有利于药物成分的充分析出,保证在运用中药饮片的治疗过程中可以发挥良好的作用。随着人们生活水平和文化素养的提高,多数患者主动要求医生开具中药饮片进行调理治疗。 1中药饮片是中医用药的核心物质基础 1.1药典奠定了中药饮片法定地位
自2010年版《中国药典》开始,以法定形式明确了中药材有别于中药饮片,并将中药饮片按照处方药品管理,同时《中国药典》明确规定制剂生产中的药味均指饮片,从标准收载体例上明确了“性味与归经”“功能与主治”“用法与用量”为饮片的属性,《中国药典》作为国家药品法典,奠定了中药饮片的法定地位。
1.2中药饮片是中医用药安全、有效的保障
中药饮片是临床用药和中成药生产投料的物质基础,科学、规范的炮制可使饮片“减毒增效”,在增强疗效的同时能够减少临床不良反应。中药饮片的真伪、优劣直接关系到临床医生调剂疗效和中成药的质量,只有遵循传统中医理论,经过规范的生产、炮制、加工工艺才能保证生产出质量合格的中药饮片,质量均一、稳定的中药饮片是中成药生产和中药临床用药安全、有效的基本保障。 2研究方法
在饮片识别任务中,由于图像的数量大、种类多,而从零开始训练来调整模型费时费力且对算力要求较高,可行性较低。利用迁移学习的思想,将在大数据上训练好的成熟模型迁移到所做任务中并进行微调,使模型针对任务进行自适应学习,以达到更好的效果。例如,A 与B为基于ImageNet数据集训练的两种不同的AlexNet网络(将数据集平分为A、B部分,以此训练对应的网络)。BnB定义为:将训练好的B 网络前n层进行frozen(即冻结,保留前n层的网络参数),将剩下的8-n层随机初始化,然后在B数据集上进行分类训练。BnB+表示在B网络的基础上加上finetune(即微调,不冻结该n层,在训练中进行调整)。AnB与BnB类似,将训练好的前n层A网络对B网络进行frozen,随机初始化剩下的8-n层,再对B数据集进行训练。大量研究发现,对网络的前3层进行不同操作,得到的分类准确率差别较小,但在4~7层上的准确率差距较大。此外,使用的finetune模型(如AnB+和BnB+)在所有的层操作上均有较好的表现。因此可得到以下结论:
1)神经网络的前三层几乎都是通用特征(generalfeature),对通用特征进行迁移效果更好。
2)若源域和目标域数据存在较大区别,直接执行迁移操作,会导致结果不理想(如AnB)。网络进行finetune可在一定程度上克服数据间的差异。
3)在深度迁移网络中加入finetune(如AnB+和BnB+),效果会有较大提升。
人们尝试在不同网络层上添加自适应层(使得不同数据域间的分布更加接近,最终满足finetune的要求),经多次试验得到在分类器的前一层加入自适应可以达到最佳效果。在共愿层的AlexNet神经网络上,DDC固定前苑层,在第愿层分类器前一层上加入自适应层。
对于深度迁移学习,其损失可定义为其中,l表示网络的最终损失,表示网络在源域上的常规分类损失(和正常的深度网络损失一致),表示网络在数据域自适应上产生的损失(深度迁移独有,需要注意的部分),为自适应损失在最终损失上的占比参数。由于DDC中使用MMD(最大均值差异,用M表示)进行自适应度量,其损失函数为
3实验过程
3.1实验数据处理
整体代码使用Google的tensorflow框架进行搭建。为了方便调整参数和网络结构,我们在模型训练过程中记录中间状态,并使用tensorflow提供的tensorboard工具进行可视化处理。图1和图2分别为在200000次的训练迭代中模型的准确率与损失值的变化曲线(设置平滑因子0.7使其标准化)。
从曲线的变化趋势来看,随着训练迭代次数的增加,模型在测试集和训练集上的精确度逐渐增大,损失值不断减小,且两数据集损失差距较小。说明该模型在200000次训练后,方差和偏差均较低,模型拟合度较好,达到了预期的效果。
3.2模型训练
这里在保证模型超参数(学习率、训练次数等)不变的情况下,对自适应层数进行调整,再统一测试分类效果。测试数据设置为5个批次,每个批次包含30种饮片,共600张图像。
无自适应层由于未进行数据的自适应操作,其错误率平均值达到了37.9%,效果较差。在添加自适应层后,其错误率明显下降了。在增加自适应层的过程中,错误率从第1到第3层不断降低,在第4层有一定的反弹。可以认为自适应层对源域和目标域的数据分布进行了调整,随层数的增加,自适应程度的上升有利于模型对数据的拟合。但当自适应程度较高时,可能会导致模型的泛化能力下降。在本实验中,可认为自适应层数为3时的模型效果最佳。在最佳模型的基础上,为了得到更为细致的精确率分布情况,我们对原饮片图像数据集
按15%的比例随机抽取样本,共得到测试图片6165张,使用最佳模型进行测试,结果如表1所示。
在模型最终的输出矩阵中,包含137个分类对应的权值,通过softmax获得各分类的相对概率,并按值大小进行排序。TopN表示测试图片对应的分类标签,在输出矩阵的前N个集合中。从Top1到Top3,精确率上升幅度较大,可认为有较好的分类效果。从Top5到Top20精确率上升停滞,其原因可能:未识别样本存在,噪声过大导致无法识别,样本的分类标注错误。
3.3模型整体分析
为了表现模型的处理效果,我们选取最佳模型(即自适应层数为3),并建立4个人工组,在相同的数据集(设置为5个批次,每个批次包