1、Microcomputer Applications Vol.39,No.9,2023文章编号:10 0 7-7 57 X(2023)09-0023-03基金项目基于BERT的医学智能问答模型研究微型电脑应用2 0 2 3年第39 卷第9 期汪子健1:3,李传富1.2.3*(1.安徽中医药大学,医药信息工程学院,安徽,合肥2 30 0 12;2.合肥综合性国家科学中心,人工智能研究院(安徽省人工智能实验室),安徽,合肥2 30 0 8 8;3.安徽中医药大学,第一临床医学院,安徽,合肥2 30 0 38)摘要:传统医学智能问答系统多采用基于问答数据库的问题相似度匹配方式实现,该方法效率低,并且
2、需要很高的标注成本才能建立训练数据集。针对这些问题,设计基于自注意力机制的双向编码表示(BERT)的自动答案生成医学智能问答模型。采用BERT预训练模型输出作为语义嵌入,并结合注意力机制传递到下游自然语言翻译模型中,联结成BERT问答模型。在英文医疗问答数据集MedQuAD和中文医疗问答数据集cMedQA2两个开源数据集进行训练和测试,BLEU值分别达到了42.2 5和44.6 0,相比其他模型均有明显提高,可以将该模型用于实际问题中。关键词:智能问答模型;BERT模型;预训练;注意力机制中图分类号:TP395文献标志码:AResearch on Medical Intelligent Que
3、stion Answering Model Based on BERTWANG Zijianl-3,LI Chuanful-2.3*(1.College of Medical Information Engineering,Anhui University of Chinese Medicine,Hefei 230012,China;2.Artificial Intelligence Research Institute of Hefei Comprehensive National Science Center(Anhui Artificial Intelligence Laboratory
4、),Hefei 230088,China;3.First Clinical Medical College,Anhui University of Traditional Chinese Medicine,Hefei 230038,China)Abstract:Traditional medical intelligent question answering systems are mostly implemented by question similarity based on aquestion answering database.This method is inefficient
5、 and requires a high cost of labeling to establish training data sets.In re-sponse to these problems,we propose a medical intelligent question answering model based on bidirectional encoding represen-tation from transformers(BERT)to generate automatic answer.The model uses the output of the BERT pre
6、-training model assemantic embedding and combines the attention mechanism.It is transmitted to the downstream natural language translationmodel and connected to the BERT question answer model.After training and testing in two open-source datasets,i.e.,MedQuAD and cMedQA2,the BLEU values reached 42.2
7、5 and 44.60,respectively,which are significantly improved com-pared with other models.The model can be used in practical application.Key words:intelligent question answering model;BERT model;pre-training;attention mechanism展 1-2 。马满福等 3 提出基于格子卷积神经网络(LCN)的医0引言疗知识问答模型,以医学词向量作为模型输人并利用LCN智慧医疗的发展和建设能有效缓解
8、医疗资源紧缺的压力,提高医疗服务水平。随着“互联网十医疗健康”发展,各种提供医疗健康信息的在线问诊平台得以快速发展,在新冠病毒疫情防控期间发挥了重要的支撑服务作用。为了提升在线问诊平台医患问答效率及患者使用体验,需要利用现有的网络问诊数据构建医学智能问答系统。智能医疗问答系统II是基于医学大数据、自然语言处理(NLP)技术,为用户提供准确的疾病诊断结果和个性化的医疗信息服务。它对医学知识普及以及辅助医生高质量解答患者疑问有着重要的意义,近年国内外学者的研究也使这项任务取得了较大进基金项目:安徽高校协同创新项目(GXXT-2020-015)作者简介:汪子健(1996 一),男,硕士,助教,研究方
9、向为中医药信息学;通信作者:李传富(196 6 一),男,博士,教授,研究方向为医学影像智能化诊断。23来提取医疗问题特征,计算该特征与关系向量的相似度,进而训练医疗知识问答模型,准确率可达8 9.0%,但模型对于一个问题到多个答案的1对n模式准确率表现不佳。为了对问题和答案之间的复杂关系进行建模,ZHANG等 4 利用CNN和GRU开发了一种混合模型,该模型结合了不同神经网络结构的优点,能够提取深层次的语义特征并对比句子之间的差异,但其推理速度会随着问题库的增大而变慢,难以满足应用级别的问答系统要求。ABACHA等 5提出了一种基于RQE(recognizing question entai
10、lment)的QA方法,并描述了其应用在真实医学问题上的QA系统和资源,并在此Microcomputer Applications Vol.39,No.9,2023研究的基础上,构建了一个包含47 457 个问答对的医学领域数据集。传统问答系统多采用基于问答数据库的问题相似度匹配方式实现 6 ,然而,该方法效率差且需要很高的标注成本建立训练数据集。针对上述问题,本研究训练一个自动答案生成模型,根据患者问题自动生成答案。本文根据医学问答系统特点,结合预训练神经网络语言模型 7 ,利用医学问答中存储的信息域,首先使用BERTL8I提取输人序列的表征,然后通过注意力机制将提取出的表征与神经机器翻译(
11、NMT)模型 9 中的各层编码器与解码器进行融合,最终构建了基于BERT的医学问答生成模型。1基于BERT的医学问答模型设计从头开始训练BERT模型会受到计算资源的限制,本文重点关注如何使用预训练的BERT模型来完成自然语言翻译任务。文献 10 指出通过相似度找到符合问题的答案是困难且耗时的,因此提出通过自动生成答案来解决这一问HBAdd&NormFeedForwardAdd&NormBERT-EncSelfAttentionAttention二二BERT图1BERT问答模型架构图基于BERT的医学问答模型主要分为3个处理步骤。编码器最终会从最后一层输出H,其中L为编码器的步骤1设源语言域为,
12、任意给定一个句子E输入总层数。BERT模型中,得到表征输出HB=BERT()。其中,hB.iE步骤3:设S,是在时间步t之前的解码器的第1层隐藏HB是中的第i个wordpiece的表征。状态,有S,=(s i,s i-1)。值得注意的是,Si是一个特殊步骤2:设HB是编码器的第1层的隐藏表征,H是序的标记,代表序列的起始,S是预测单词在t一1时间步的词列的词嵌人。对于任意的iEl,h是H的第i个元嵌人。对于第1层,首先计算时间步t之前的第l一1层隐藏素,l是句子的长度。对于第l层,有式(1):状态的自注意力s,其次将s分别与HB和HL计算自注意h=(attns(h,HE,Htl)+力,并将这两
13、层注意力层的输出加均求和得到s,最后将s2输人非线性转换层FFN中得到每一层的si,可通过softmaxattn(hf,HB,H),ViEl(1)其中,attns和attnB分别代表两个参数不同的注意力模块,有关注意力模块的函数功能定义详见文献 11。随后,每个h都会进一步使用前馈网络(FFN)进行处理,该函数表示为FFN()=W2max(Wi+bi,0)+b2(2)这里会得到第1层的输出值为式(3):H=(FFN(hi),.,FFN(hi,)基金项目题。他们使用递归神经网络(RNN)框架在多个问答对数据集上训练出一个端到端的模型,再用模型生成简单医疗健康问题的合理答案。本文使用BERT预训练
14、模型作为词嵌入并融合下游神经网络机器翻译模型来替代传统RNN文本生成模型,并最终生成医学问题所对应的答案。本文使用编码器和解码器两个部分组成下游神经网络机器翻译模型。编码器部分主要将BERT模型输出作为编码器注意力层的输人,并循环输出一系列的隐藏单元。解码器部分主要将BERT模型输出作为解码器的注意力层的输人,并将编码器的隐藏单元作为解码器的另一个注意力层的输人,最终循环输出每个隐藏单元对应的输出单元。这两个部分都具有循环迭代特性,即将上一时刻的输出作为下一时刻的自注意力层的输入,并以此循环往复。模型整体架构如图1所示。从左到右分别为BERT、编码器和解码器。虚线表示残差连接,HB代表BERT
15、最后一层的输出,H代表编码器的最后一层输出。SLXdecoderlayerLxencoderlayer微型电脑应用2 0 2 3年第39 卷第9 期Add&Norm工FeedForwardAdd&NormBERT-DecEnc-DecAttentionAttentionTHHAdd&NormSelfAttention二二得到第t个预测单词t。对于该步骤,有式(4):3)=attns(s1,SZi+i,S+1)st=1(attn(s,H,Hn)+attne(st,Ht,Ht)2其中,attns、a t t n B和attne分别代表自注意力模型,BERT-(3)decoder注意力模型和编解码器
16、注意力模型。通过式(4)可24st=FFN(st)(4)Microcomputer Applications Vol.39,No.9,2023以得到每一层的s,将最终得到的st映射到线性转换,并通过Softmax得到第t个预测单词y,。解码过程将会持续执行到遇到句尾标识符为止。BERT的输出作为外部序列表征,使用注意模型将其合并到神经网络机器翻译模型中。这是一种利用预先训练过的模型的通用方法,无须使用分词技术。2实验与结果分析2.1数据集为了训练和测试模型,使用MedQuAD5和cMedQA2L12两个文本数据集。1)M e d Q u A D:该数据集收集12 个NIH网站(如canc-er
17、.gov,n i d d k.n i h.g o v 等),共包含47 457 对英文医学回答。该数据集是一个英文文本数据集,涵盖与疾病、药物、检查等37种与医学相关的问题。2)c M e d Q A 2:该数据集收集自中国医学问答在线论坛(h t t p:/w w w.x y w y.c o m/)。在论坛中,资格医师会根据用户描述的症状给出诊断建议。将该数据集进一步整合为问答对的形式,共包含2 2 6 2 6 7 对中文医学问答。2.2实验设置对于MedQuAD英文数据集,使用bert-base-uncased预训练模型作为语境嵌人层。对于cMedQA2中文数据集,使用BERT预训练模型。
18、对于这两个数据集,实验均采用随机划分数据集的方法;为了提升问答模型性能,依据数据集划分留出法,特将数据集中的95%划分为训练集,3%划分为验证集,剩余的2%为测试集。设定该神经网络机器翻译模型的嵌人尺寸为512,FFN层维为10 2 4,共6 层。BERT问答模型的编码器和译码器模块的参数使用随机初始化。使用Adam作为优化算法,其中初始学习率设置为0.0 0 0 5并使用inverse_sqrt作为学习率调整器。使用beamsearch并设置宽度和长度惩罚因子分别为5和0.8,不使用dropout。本实验的硬件平台是配置为2 intel?Xeon?E-5-2680CPU和3XNVIDIART
19、X6000GPU的一台服务器。2.3实验结果及分析实验使用不同的模型在两个数据集进行训练,以验证集损失值最低保存模型参数,最终在测试集上进行评估,结果如表1所示。从表1可以看出,BERT问答模型在两个数据集上的效果表现最好,Transformer11的效果次之,加人At-tention机制的BiGRUL13和BiLSTML14均比原模型的BLEU值要高。这说明引人注意力机制可以提升模型性能,也表明了BERT问答模型和Transformer模型的优越性。BERT问答模型的复杂度相对于Transformer模型要更加复杂,因此每秒的推理次数较之略有下降。2.4消融实验为了更好地了解BERT问答模型
20、中各模块的作用,还在cMedQA2数据集上实行消融实验,实验结果如表2 所示。首先将BERT的context-aware输出传人下游神经网络机器翻译模型中的注意力机制去除掉,模型中其他条件保持不变,得到BLEU值为43.8 0,较原始模型有所下降。这说明注意力机制在BERT问答模型中起到提升性能的作用。随基金项目后,为了验证context-aware输出对下游神经网络机器翻译模型是否起作用,将BERT问答模型的BERT输出换成随机向量,得到BLEU值为41.0 8,比原模型BLEU值低,这表明使用BERT作为context-aware可以大幅提高下游自然语言翻译模型的准确度,且具有较强的特征提
21、取能力和泛化特性。最后,为了对比BERT和Transformer作为词嵌入的优越性,使用Transformer的编码器模块替换BERT,得到BLEU值为42.59,比原模型有所下降,这表明BERT比Transformer在词嵌人的效果上要好。表1不同模型在两个数据集上的BLEU值模型MedQuADcMedQA2帧率/(顿/s)BiGRU35.60BiLSTM36.95BiGRU+Attention37.30BiLSTM+Attention37.80Transformer41.50BERT问答模型42.25表2 在cMedQA2数据集上对BERT问答模型进行消融实验得到的BLEU值结果消融实验B
22、ERT问答模型BERT特征传人下游层后不加注意力机制替换BERT输出为随机向量使用Transformer的编码器模块替换BERT3总结医学智能问答系统不仅能给患者提供健康咨询以及用药指导,还能及时在线解决患者一些紧急问题。针对传统医学智能问答系统存在的问题,本文融合了BERT与NMT,研究了能自动生成回答的医学智能问答模型。把设计的模型在MedQuAD和cMedQA2两个问答数据集上进行NMT回答生成的实验,其结果比BiLSTM和BiGRU性能更优越。通过消融实验,验证了BERT预训练模型、注意力机制、编码器和解码器对模型性能的提升作用。参考文献1曹明宇.基于知识图谱的中文医学问答系统 D.大
23、连:大连理工大学,2 0 2 0.2 GUPTA D,SUMAN S,EKBAL A.Hierarchical DeepMulti-modal Network for Medical Visual QuestionAnsweringJJ.Expert Systems with Applications,2021,164:113993.3 马满福,刘元喆,李勇,等.基于LCN的医疗知识问答模型J.西南大学学报(自然科学版),2 0 2 0,42(10):25-36.(下转第2 9页)25微型电脑应用2 0 2 3年第39 卷第9 期37.1121138.2519638.4018439.80173
24、42.6043244.60321BLEU44.6043.8041.0842.59Microcomputer Applications Vol.39,No.9,2023复情况,衡量系统的稳定性和可靠性。实际测试用例设计中,针对各种I0操作模拟产生一些错误场景,如使用一些控制开关让响应的读写操作挂死 10 。主要包括:U SB传输故障导致无法正常收发数据包;系统性故障导致maintask无法正常执行;I 2 C 控制器读写故障;SPI 控制器读写故障;GPIO控制器读写故障。测试结果显示,当错误发生后,相应的软watchdog能正确侦测并做出正确处理,主机端驱动能从错误中恢复。4总结本文首先分析了
25、10 桥接器的硬件和软件架构,然后具体阐述了软件的系统性设计,包括USB传输协议的设计与实现,I2C、SPI 和GPIO接口的实现流程,并基于一个硬件watchdog设计实现了多个灵活的软件watchdog,用于提高各个模块的容错能力,提高整个系统的可靠性,且满足低于2mW的功耗设计。最后,列出了系统性能测试流程与结果,分析了可靠性测试原理,表明本文设计在各种错误场景均能正常处理。1 Cypress Semiconductor Corporation.Cypress PSoC5LP33333338338333333833383833388388833353533383333(上接第2 5页)4
26、 ZHANG Y T,LU W P,OU W H,et al.Chinese Med-ical Question Answer Selection via Hybrid ModelsBased on CNN and GRUEJ.Multimedia Tools andApplications,2020,79(21/22):14751-14776.5 A BA CH A B A,D EM NER-FU SH M A N D.A Q u e s-tion-entailment Approach to Question AnsweringJJ.BMC Bioinformatics,2019,20(1
27、):511.6罗玲,李硕凯,何清,等.基于知识图谱、TF-IDF和BERT模型的冬奥知识问答系统 J.智能系统学报,2021,16(4):819-826.7CONNEAU A,LAMPLE G.Cross-lingual LanguageModel PretrainingJ.Advances in Neural InformationProcessing Systems,2019(32):7059-69.8 D EVLIN J,CH A NG M-W,LEE K,e t a l.Be r t:Pr e-training of Deep Bidirectional Transformers fo
28、r Lan-guage Understanding CJ/NAACLHLT.AnnualConference of the North American Chapter of the As-sociation for Computational Linguistics,Minneapolis,USA,2019.9 汪斐,王婧锦.基于语音信号处理和文本识别技术的汉英口语翻译自动评分方法 J.微型电脑应用,2021,37(10):39-41.10ABDALLAH A,KASEM M,HAMADA M A,et al.Automated Question-answer Medical Model B
29、ased onDeep Learning TechnologyCJ/ICEMIS.Proceedings基金项目datasheet.https:/ 许燕.一种应用单片机的倒车雷达预警系统设计与实现 J.微型电脑应用,2 0 2 1,37(12):17 3-17 6.3 王欣宇.MCU技术及市场发展超势分析 JI.集成电路应用,2 0 19,36(10):1-3.4USB Implementers Forum,Inc.Universal Serial BusSpecification Revision 2.0.2000:52-57.5刘鲁兵.基于MCU的I2C总线控制器的设计与验证J.应用科技,
30、2 0 2 1(5):34-37.6程浩.基于串口通信的四核DSP在线升级方案优化设计J.电子测量技术,2 0 2 0,43(2 3):159-16 3.7 孙秀芳,姜凯.基于DSP的SPI接口自举引导程序的实现J.信息与电脑(理论版),2 0 2 1,33(2 0):116-118.8 李李硅.中断调用方式的ARM二次开发接口设计 J.单片机与嵌入式系统应用,2 0 13,13(3):14-17.9 蒋炯炜,雷志军,于鹏.带看门狗喂狗功能的TMS320F2812远程加载技术 J.电子与封装,2 0 16,16(10):23-26.10辛慧娟,肖军.基于NB-IoT技术的多传感器数据采集参考文
31、献系统设计 J.微型电脑应用,2 0 2 0,36(12):35-37.of the 6th International Conference on Engineering&.MIS 2020.September 14-16,2020,Almaty,Kazakh-stan.New York:ACM,2020:1-8.11VASWANI A,SHAZEER N,PARMAR N,et al.At-tention Is All You NeedC/NIPS.Proceedings ofthe 3lst International Conference on Neural Informa-tion
32、Processing Systems.December 4-9,2017,LongBeach,California,USA.New York:ACM,2017:6000-6010.12ZHANG S,ZHANG X,WANG H,et al.Multi-ScaleAttentive Interaction Networks for Chinese MedicalQuestion Answer SelectionJJ.IEEE Access,2018,6:74061-74071.13GRAVES A,JAITLY N,MOHAMED A R.HybridSpeech Recognition wi
33、th Deep Bidirectional LSTMCJ/2013 IEEE Workshop on Automatic SpeechRecognition and Understanding.December 8-12,2013,Olomouc,Czech Republic.2014:273-278.152ZHANG L J,ZHOU Y Q,DUAN X Y,et al.A Hier-archical Multi-input and Output Bi-GRU Model forSentiment Analysis on Customer Reviews JJ.IOPConference Series:Materials Science and Engineering,2018,322:062007.(收稿日期:2 0 2 1-12-2 7)29.微型电脑应用2 0 2 3年第39 卷第9 期(收稿日期:2 0 2 2-0 2-12)