唐晓波 刘亚岚
摘 要:[目的/意義]咨询问题提示列表能引导咨询者在智能问答和智能咨询系统进行咨询并为动态咨询引导提供基础。目前,关于问题提示列表构建的研究大多采用专家咨询法、访谈法,这些方法无法满足智能咨询服务要求,本文以有问必答网中糖尿病问答为例,提出了基于Sentence-BERT语义表示的咨询问题提示列表自动构建模型。[方法/过程]本文首先在糖尿病相关文献调查和分析的基础上确定糖尿病类目体系,并人工标注咨询问题类别;其次使用LDA模型对每类问题集进行主题聚类;然后各主题下通过Sentence-BERT预训练模型进行问题语义表示,textRank算法计算问题重要性并排序;最终冗余处理后构建出咨询问题提示列表。[结果/结论]实验结果表明,本文提出的模型能有效构建出信息质量较高的、内容丰富的咨询问题提示列表,对咨询引导有促进作用。
关键词:问题提示列表;智能问答;智能咨询;问答社区;糖尿病咨询;LDA;Sentence-BERT
DOI:10.3969/j.issn.1008-0821.2021.08.001
〔中图分类号〕G2526 〔文献标识码〕A 〔文章编号〕1008-0821(2021)08-0003-13
Research on Automatic Construction Method of Consultation Question
Prompt List Based on Sentence-BERT Semantic Representation
——Taking Diabetes Counseling as an Example
Tang Xiaobo1,2 Liu Yalan2
(1.The Center for Information System Research,Wuhan University,Wuhan 430072,China;
2.School of Information Management,Wuhan University,Wuhan 430072,China)
Abstract:[Purpose/Significance]The consultation question prompt list can guide the consultants to consult in the intelligent question answering system and intelligent consulting system and provide the basis for dynamic consulting guidance.At present,most of the research on the construction of the question prompt list adopt the expert consultation method and the interview method.Those methods cant meet the requirements of intelligent consulting services.[Method/Process]This paper took the diabetes question and answer texts in 120ask Q&A community as an example and proposed consultation question prompt list automatic construction model based on Sentence-BERT semantic representation.This paper first determined the diabetes category system based on the investigation and analysis of diabetes-related literature,and manually labeled the questions;secondly,the LDA model was used to cluster each type of question set;then for each topic the Sentence-BERT model was used to represent the semantics of the questions and the textRank algorithm calculated the importance of the questions and ranked them;after the final redundant processing,consultation question prompt list was constructed.[Result/Conclusion]The experimental results showed that the model proposed in this paper could effectively construct a high-quality and rich-content consultation question prompt list,which promoted consulting guidance.
Key words:question prompt list;intelligent question and answering;intelligent consulting;Q&A community;consult on diabetes;LDA;Sentence-BERT
十八大以来,面对新一轮的科技革命和产业变革,党中央确立了人工智能发展国家战略,积极推动人工智能与各产业融合,实现智能化服务。随着社会经济和信息技术的快速发展,咨询活动已融入社会经济的各个方面,如何利用信息技术优化咨询过程,实现智能咨询已成为重要研究内容。智能咨询通过智能咨询系统实现,以解决咨询者的实际问题为目标,需要咨询者的充分参与,然而由于专业知识的限制,咨询者在进行专业咨询时,可能面临不知如何提出问题或者不能充分描述咨询意愿的状况[1-2],咨询效率很大程度上取决于其是否能在咨询时得到有效帮助,智能咨询系统应对咨询者进行咨询引导,分主题提供咨询问题模板,辅助咨询者进行信息咨询[3]。
问题提示列表(Question Prompt List,QPL)是用于咨询者在访谈过程中进行问题咨询以获取特定信息的结构化表格,表格中列出咨询者最常见的需要咨询的系列问题,可以用于引导咨询者进行咨询[4]。在医学领域,使用问题提示列表有利于鼓励和促进医患之间信息交流,增加医疗决策参与度。咨询问题提示列表是智能问答和智能咨询系统中的问题提示列表。基于已有咨询信息自动构建的咨询问题提示列表有3方面的作用:首先,可以較为全面地反映咨询者的咨询需求,增强对咨询者咨询需求的了解;其次,可以一定程度上解决咨询者由于领域知识缺乏引起的无法充分描述咨询需求的问题,从咨询内容、词汇用语、语言逻辑等细粒度方面给予咨询者相关提示,相当于问题模板,实现咨询引导;最后,由于咨询问题提示列表中的问题具有语义相似度低、总体语义覆盖全面的特点,可以将其中每个问题作为语义标签标引咨询问题,作为动态咨询引导的基础。
目前,问题提示列表大多基于访谈方式构建[5-6],在构建问题提示列表时同时考虑问题的重要性、全面性和新颖性,但是这种构建方式存在调查样本少、调查不全面、构建过程繁琐的问题[6],且通过访谈等方式获取的文本数据也并非实际客观咨询数据。随着信息技术的快速发展,社会化问答社区中存在大量咨询文本,可为问题提示列表构建提供数据支撑,同时文本挖掘和自然语言处理技术也可为问题提示列表构建提供技术支撑,基于社会化问答社区自动构建咨询问题提示列表具有可行性。
根据问题提示列表的特点,本文参考自动文本摘要等研究,提出了基于Sentence-BERT语义表示的咨询问题提示列表自动构建模型,同时最新研究表明糖尿病是我国重要的公共卫生问题,糖尿病患病率为128%,患病人数约为13亿,但是很多成年人对该疾病并没有正确的认知[7],提高糖尿病咨询效率对于该疾病的防治具有重要作用,故本文以糖尿病为例进行实证研究。Sentence-BERT(简称SBERT)是由普适知识处理实验室在BERT模型基础上提出的预训练模型,相较于Word2vec和BERT模型,更适用于文本相似度度量、语义搜索和语义聚类等任务[8]。本文在人工标注糖尿病问题类别后,先使用LDA模型对每类问题集进行主题聚类,再抽取每个主题下的重要问题,该方法的优点在于能够更细粒度地挖掘问题主题,避免次要主题问题被遗漏,保证了咨询问题提示列表的全面性;使用Sentence-BERT预训练模型进行问题语义表示,该方法能够充分挖掘出问题语义信息,在问题相似度度量上的表现更优。本文提出的模型能够自动构建出有效的咨询问题提示列表,提高了咨询效率。
1 相关研究
11 问题提示列表
问题提示列表按主题列出了某一特定领域的一系列咨询问题,结构清晰、内容全面、表达简洁,能够引导咨询者进行问题咨询,提高咨询效果,目前已在多种医疗环境中使用,包括癌症、糖尿病、冠状动脉疾病、老年医学、普通实践、妇科和皮肤病学、外科等[9]。
目前,有关问题提示列表的研究分为理论研究和方法研究两种。问题提示列表理论研究主要是有关问题提示列表对于优化咨询结果、增强医患双方沟通、提高咨询满意度的有效性。如Lim L等将患者随机分为QPL组和对照组进行实验,结果显示QPL患者在初次就诊与手术前一日之间的焦虑明显减轻,术后更大程度地减少焦虑,问题提示列表能够提高咨询的满意度并减少患者焦虑[10]。Mancini J等制定了有针对性的骨髓增生异常综合症QPL,通过对患者和家庭护理人员进行QPL有用性调查发现,多数都认为QPL是“绝对”有用的,通过QPL进行干预的提议受到普遍欢迎,并且可以特别满足患者在预后信息方面的特定需求[11]。Brown R F等让正在进行治疗性临床试验的乳腺癌、肺癌和泌尿生殖系统癌症患者进行咨询前和咨询后的简短问卷调查,实验表明,问题提示表有潜力作为一种简单、廉价的干预手段来帮助进行此类交流[12]。Sansoni J E等基于谷歌文献和雪球搜索得到42篇QLP相关文献,对QPL作为交流辅助手段的用途和有效性进行分析,发现QPL可以增加用户提出的问题[13]。
问题提示列表方法研究主要是关于基于具体领域如何构建问题提示列表,如廖瑶姬等通过文献回顾和深度访谈确定了哮喘病儿童父母信息需求主题,并通过两轮专家咨询法确定哮喘病问题提示列表[4]。Renovanz M等为鼓励患者在知情同意咨询期间获取信息,通过文献综述、患者访谈和两次专家访问的方法构建脊柱神经外科手术问题提示列表并进行验证[5]。刘冠男通过文献回顾、半结构化访谈,结合德尔菲专家咨询法研制了早期宫颈癌病人术前信息需求问题提示表,促进宫颈癌患者与医生之间的沟通[6]。Lederer S等为使慢性肾脏病患者参与医疗保健对话,通过涉及半结构化电话采访的两阶段、混合方法,构建出包括7个子主题的慢性肾脏病问题提示表,实验表明,大多数患者非常愿意使用QPL[14]。郜心怡等对晚期癌症患者QPL进行汉化,使用德尔菲法和患者认知性访谈进行文化调适,结果表明,修订后的中文版QPL具有良好的可行性[15]。问题提示列表能够促进沟通咨询,但是目前问题提示列表的构建大多基于传统的专家咨询法、访谈法等,存在调查样本有限、构建过程繁琐的问题,无法满足智能咨询服务需求,在目前的大数据环境下,可以使用文本挖掘和自然语言处理技术自动构建问题提示列表。
12 自动文本摘要
针对特定疾病,问答社区中存在大量咨询文本,其中许多咨询问题内容相似,文本摘要技术能够解决这类文本信息过载问题,在保持原有信息的情况下,对原有咨询文本进行凝练表达,形成问题摘要,减少咨询者的参考负担,目前该技术已经在新闻摘要、学术文献摘要、社交媒体摘要、电子商务评论摘要以及答案摘要等多个领域得到很好的应用。如林莉媛等在充分考虑评论情感与主题两者的情况下,提出了一种基于情感的PageRank算法框架,从评论语料中抽取文本情感摘要[16]。在学术问答社区,陶兴等针对当前用户生成内容,利用Word2vec词向量生成模型,借助最大边界相关思想进行问答文本自动摘要[17]。黄波等将外部语料库信息用词向量的形式融入TextRank算法中,通过TextRank与Word2vec的结合,同时考虑句子间相似度、关键词覆盖率等,计算句子重要性,最终获取摘要文本[18]。肖元君等基于Word2vec和TextRank算法生成无向图网络找到关键句,根据文章结构和LDA模型所提取的关键词赋予句子不同权重,最终生成新闻文本摘要[19]。根据问答社区咨询文本特点,考虑咨询主题,文本摘要技术能够应用于关键问题抽取,最终构建出咨询问题提示列表。
2 基于Sentence-BERT语义表示的咨询问题提示列表自动构建模型
根据问答社区和问题提示列表的特点,本文提出了基于Sentence-BERT語义表示的咨询问题提示列表自动构建模型,该模型主要包含4个模块,分别是数据预处理与人工类别标注模块、基于LDA的咨询问题主题发现模块、咨询问题重要性排序模块以及咨询问题提示列表生成模块,该模型如图1所示。
21 数据预处理与人工类别标注
211 数据预处理
由于问答社区用户提问的自由性,问答社区问
句存在表述不规范、语意模糊等问题,本文的数据预处理操作是将从此处获得的文本数据转化为规范化文本,以便下一步的操作。数据预处理主要包括:
数据获取:用Python编写网络爬虫,从问答社区中获取问题标题、详细问题描述、回复个数等字段信息。由于本文的目标是构建咨询问题提示列表,问题标题相对于详细问题描述具有噪音少、描述清晰简洁的特点,故将问题标题作为研究对象。
数据清洗:咨询问题无回复,则认为咨询问题质量不高,故删除无回复的记录,同时删除重复记录;由于问答社区用户提问的自由性,人工去除无意义的噪音数据,同时对标点符号不用、乱用等问题进行修正;若问题标题因疑问词缺失等原因而语义不明、不完整,从详细问题描述中人工抽取症状描述句和问句作为标题;对于少数表达不准确和不规范的问题进行少量的调整;构建糖尿病医学同义词表,规范专业术语,如将“1型糖尿病”替换为“一型糖尿病”。
212 人工类别标注
问题提示列表的一级指标是问题所属类别,大多通过文献调查和专家访谈法确定类目体系,结构清晰、领域特色突出。本文首先根据美国糖尿病协会和相关文献[20-21]对糖尿病健康信息的分类,结合问答社区中糖尿病问题实际情况,将糖尿病咨询问题划分为7个大类,如表1所示,然后根据该分类体系对糖尿病咨询问题进行人工类别标注。人工类别标注共有3名研究生同学参加,这3名同学均对糖尿病知识有充分的了解,在开始标注之前,大家进行探讨并初步达成标注共识,之后由1个同学进行类别标注,当不确定问题所属类别时,由3名同学投票决定问题类别。
22 基于LDA的咨询问题主题发现模块
潜在狄利克雷分布(Latent Dirichlet Allocation,LDA)是一种贝叶斯概率模型,采用概率推断算法处理文本,识别出文本隐含的主题信息,由于该方法处理效率较高,在文本分类、信息检索等任务中被广泛应用。该模型包含词—主题—文档3层结
构[22],具体如图2所示。LDA主题模型的主要思想是一篇文档以一定的概率选择了某个主题,并且这个主题又以一定的概率选择了某个词,结合这一事实,LDA主题模型最终目标是基于已有文档—词分布,训练出文档—主题分布和主题—词分布。
图2中,D表示原始数据中的文档,Z为数据集合中的主题,是反映潜在主题强弱的先验概率,为描述所有潜在主题词概率分布的先验概率,θd代表文档—主题分布,φz是主题—词分布,Wd,i为文档的词向量,根据LDA模型的结构,可以得到以下联合概率公式:
p(w,z;α,β)=p(w|z;α,β)p(z;α,β)=p(w|z;β)p(z;α)(1)
其中p(z;α)为主题序列的概率,p(w|z;β)为给定主题条件下词序列的概率。
通过LDA模型的训练,最终可以得到每个咨询问题的主题概率分布以及主题的词概率分布,将每个咨询问题的最大概率主题作为该问题的最终主题,完成咨询问题主题发现。
2.3 咨询问题重要性排序模块
2.3.1 Sentence-BERT模型
Sentence-BERT(简称SBERT)预训练模型由普适知识处理实验室的Nils Reimers和Iryna Gurevych于2019年提出,该模型适用于文本相似度度量、语义搜索和语义聚类等任务[8]。SBERT预训练模型将BERT模型和孪生网络两部分结合在一起,是在BERT(BERT-base-uncased)模型上做出的微调,使得训练得到的句子嵌入更好地用于相似度度量等任务,SBERT模型代表性结构如图3所示。
图3 SBERT模型
BERT是一种预训练模型[23],其结构图如图4所示。BERT采用Transformer语言模型,模型本质是编码器—解码器结构,根据该结构来进行特征抽取,融合上下文语义[24]。其主要包括两个部分:遮蔽语言模型和下一句预测。遮蔽语言模型,即随机遮蔽15%的词语,通过模型训练预测这些词,这样可学习到能够融合不同方向文本的表征。下一句子预测是预测输入BERT的两个句子是否连续,通过构建一个二分类模型进行预测,这部分模型能够捕捉两个句子的联系,使模型具备理解长序列上下文联系的能力。
图4 BERT结构图
孪生网络又称为连体网络,网络中的连体是通过共享权值来实现,它是一种有监督学习算法[25],适用于相似度度量,孪生网络结构图如图5所示。孪生神经网络有两个输入X1和X2,将其作为参数为W的同一神经网络模型的输入,进行编码映射,形成输入在新的空间中的表示,通过计算损失函数,来评价两个输入的相似度,孪生神经网络的训练目标是让两个相似的输入距离尽可能的小,两个不同类别的输入距离尽可能的大。
图5 孪生网络结构图
Sentence-BERT模型是BERT模型在语义表达上的优势和孪生网络在相似度度量任务上的优势的完美结合。当给定两个句子,首先SBERT模型的BERT部分采用Transformer语言模型和遮蔽语言模型,使用注意力机制,能够结合句子的上下文文本信息,生成两个固定维度的初始句子嵌入向量。然后采用Pooling层(Average-pooling和Mean-pooling)对BERT嵌入结果进行特征提取,转化为向量u、v,最后整合向量u、v,有3种模型训练方式,它能对BERT嵌入结果进行微调,使得最终嵌入结果更适用于文本相似度度量等任务。这3种模型训练方式如下:
1)针对分类任务,对u、v进行拼接,使用Softmax函数进行分类输出,交叉熵作为损失函数,如图1所示,输出结果如式(2)所示:
o=softmax[Wt(u,v,u-v)](2)
2)直接计算u、v两者间的余弦相似度,将其作为输出结果,均方根误差作为损失函数。
3)若给定3个文本,分别是文本a、与a相似的文本p、与a不相似的文本n,则将式(3)作为损失函数:
max=(Sa-Sp-Sa-Sn+ε,0)(3)
普适知识处理实验室通过训练大规模数据集得到了针对英文、中文、德语、西班牙语等100多种语言的多个预训练模型,一些模型是通用模型,而其他一些则为特定用例生成嵌入,使用时只需传递模型名称即可加载预训练的模型,本文使用的模型名称是Distiluse-base-multilingual-cased,SBERT预训练模型的完整文件均已在普适知识处理实验室的GitHub上发布(网址:https://github.com/UKPLab/sentence-transformers)。
2.3.2 咨询问题重要性排序
TextRank算法被广泛应用于句子重要性度量任务。为充分挖掘句子语义信息,很多研究将TextRank算法与Word2vec模型结合使用,通过语料训练Word2vec模型,获取词向量,对词向量进行平均或TF-IDF加权平均操作得到句子向量表示,从而度量句子间相似度,获取句子重要性。Word2vec模型不适用于一词多义情况且不能很好地挖掘语法、语义等更深层次的复杂特征,目前大多针对中文的Word2vec模型,需要自行获取语料训练模型,模型训练质量极大程度上取决于语料库的大小。本文使用SBERT预训练模型进行句子语义表示,能够解决Word2vec模型存在的以上问题。
SBERT预训练模型将咨询问题作为输入,输入问题经过编码转换后,输出是一个512维的高维空间向量,问题间语义相似度可以用对应高维向量的余弦相似度表示,取值在[0,1]之间,越接近0,则表示两问题的语义越不相近,越接近1,则表示两问题的语义越相似。使用SBERT预训练模型对主题下的咨询问题进行语义表示,构建问题相似度矩阵。
将问题相似度矩阵作为TextRank算法输入,构建问题图模型,其中图模型中节点表示问题,边的权值表示问题间的相似度,待模型迭代至稳定状况后,得到每个咨询问题的重要性,然后根据重要性进行问题排序,TextRank算法的重要性计算公式如式(4)[26]:
WS(Vi)=(1-d)+d×∑Vj∈In(Vi)wji×WS(Vj)∑Vk∈Out(Vj)wjk(4)
式(4)中,WS(Vi)表示咨询问题i的重要性程度,In(Vi)为入链集合,Out(Vj)为出链集合,wji表示咨询问题i与咨询问题j的相似度,d表示阻尼系数。
2.4 咨询问题提示列表生成模块
2.4.1 问题抽取数目确定
将每类问题作为独立的问题抽取单位,根据问题抽取率來确定问题抽取数目,如式(5):
n=N*ρ(5)
其中每类问题数目为N,问题抽取率为ρ,每类问题抽取数目为n。
根据每类问题下各主题的数量权重确定该主题问题抽取权重,一般来说,主题包含的问题数目越多,应当抽取的问题越多,相反,主题包含的问题数目越少,该主题应当抽取的问题数目越少:
SNi=Ni∑i=Ti=1Ni(6)
其中SNi表示主题i问题抽取率,Ni表示主题i中包含的问题个数,T表示主题个数。
根据主题问题抽取率,确定每个主题问题抽取数量,如式(7):
ni=n*SNi(7)
其中n表示每类问题抽取数目,ni表示该类别下主题i应抽取的问题数量。
2.4.2 冗余处理
获得咨询问题重要性之后,按重要性由高到低对咨询问题进行排序,语义越相近的兩问题排序可能越接近,直接取排名靠前的若干问题组成咨询问题提示列表可能存在语义冗余,为避免这种情况,需要对其进行冗余处理,咨询问题提示列表的具体生成过程如下:
1)设置问题抽取率ρ,确定每类问题抽取总数。
2)根据每类问题集的主题分布情况,确定每一主题问题抽取比例及抽取数目。
3)每一主题下,基于TextRank算法的问题重要性计算结果,按重要性由高到低对问题进行排序。
4)计算相邻问题相似度,设定相似度阈值λ,若问题与相邻上一条问题的相似度小于λ,则满足抽取条件,否则不满足,按重要性顺序保留满足抽取条件的不超过指定抽取数目的问题,其中重要性排序第一的问题一定保留,记该主题下保留的最后一个问题为P。
5)若该主题下保留的问题实际数目小于指定抽取数目,则根据3)中排序结果依次取P之后的若干问题保留,直到保留问题数等于指定抽取数目。
6)生成咨询问题提示列表。
3 实验与结果分析
3.1 数据采集与人工类别标注
目前国内存在大量医药类问答社区,如有问必答网、寻医问药网、39健康网等,本文以有问必答网为例进行实验。有问必答网是国内比较有名、信息质量较高的医药问答平台[27],该平台作为连接患者和医生的纽带,不仅给患者提供医疗看诊服务,也让医生有了更大的施展空间。笔者通过Python编写网络爬虫从有问必答问答社区获取糖尿病相关问答数据作为实验数据,问答数据的时间跨度为2020年3月25日—10月12日,共8 000条,问答数据包含有问题标题、问题详细描述、回复个数等字段,经过数据预处理后剩余4 728条,随机抽取300条咨询问题,由两名研究生同学根据分类说明进行咨询问题分类,两人标注结果的Kappa值[28]为0.836,说明标注结果的一致性程度较高,所有咨询问题人工类别标注结果如表2所示。
3.2 评价标准
咨询问题提示列表基于问答社区的问答内容产生,本身并不具有统一的、标准的参考内容,不能使用准确率、召回率等指标作为质量检测指标,为验证咨询问题提示列表抽取质量,本文在参考相关文献的基础上[17],引入平均信息熵、平均相似度、平均信息质量这3个指标,对生成的咨询问题提示
列表进行质量监控。通过对比具有不同规模句子集的咨询问题提示列表和完整问题集在这3个指标上的表现,初步验证本文提出的咨询问题提示列表自动构建模型的有效性。
信息熵[29]通常用来量化一个系统的信息含量,可以衡量一个句子的知识丰富程度,本文引入平均信息熵这一指标,使得不同规模的句子集具有可比性,其计算公式如下:
其中H()是句子集平均信息熵,m为句子数,H(S)为一个句子的信息熵,xk为句中关键词,n为关键词总数,p(xk)表示关键词出现概率。
平均相似度可以衡量句子集的平均冗余程度,其计算公式如下:
L()=∑mi=1∑mj=1,j≠isim(veci,vecj)m·(m-1)(10)
sim(veci,vecj)=veci·vecjveci·vecj(11)
其中L()表示句子集平均相似度,sim(veci,vecj)表示两句子的余弦相似度,veci、vecj是两个句子的向量化表示。
平均信息质量是平均信息熵与平均相似度的差值,平均信息质量越大,表示句子集的信息质量越高,其计算公式化如下:
AIQ()=H()-L()(12)
3.3 实验过程和结果
本次实验采用Python3.6.7作为编程语言,Pycharm为集成开发环境,编程过程中使用的第三方开源工具有Pytorch[30]、Gensim[31]、Sentence-transformers[32]、Numpy[33]等,设吉布斯抽样迭代次数为2 000,随机数种子为1,问题抽取率ρ为4%,相似度阈值λ为0.4。LDA模型进行主题聚类,根据困惑度随主题数变化趋势,结合实际主题聚类情况确定每类糖尿病问题的主题数,根据式(5)确定每类糖尿病问题的抽取总数,根据式(6)计算出每类问题下每个主题的问题抽取权重,结果如表3所示,最终构建出的糖尿病咨询问题提示列表如表4所示。
为充分验证本模型的有效性,将基于Word2vec语义表示的咨询问题提示列表构建实验作为对比实验,咨询问题提示列表和完整问题集在平均信息熵、平均相似度、平均信息质量上的表现如表5、表6所示,可以看出在多个糖尿病问题类别上,基于SBERT和基于Word2vec语义表示构建的咨询问题提示列表相对于完整问题集在平均信息质量上均有了提升,使用自动摘要方式构建咨询问题提示列表是有效的,同时可以观察到对于绝大多数咨询问题类别,基于SBERT语义表示的方法相对于基于Word2vec的方法在信息质量提升度上的表现更好。
为进一步说明SBERT模型相对于Word2vec在本实验中的优势,本文比较在两种语义表示方法下问题相似度的分布情况,表7是关于各类别问题相似度方差情况,图6是关于各类别问题相似度总体分布情况。由表7和图6可知,基于SBERT语义表示的问题相似度分布趋向于正态分布且离散程度高,而基于Word2vec模型的问题语义相似度总体较高且分布较为集中,离散程度较低,这是因为相对于Word2vec模型,SBERT模型不仅能够考虑词汇之间的语义差异,而且能考虑词汇的上下文信息、句法信息等,在两问题已经归属于某一类别的情况下,其更能够捕获句子间的细微差异,更好地区分两句子的相似程度,且基于有监督训练得到的SBERT模型在句子相似度度量上的结果更符合人的主观判断,因此,针对本文的研究问题,基于SBERT进行问题语义表示有一定的优势。
通过对糖尿病咨询问题提示列表的内容进行分析可知,咨询者在进行糖尿病诊断咨询时,主要从血糖情况、口干口渴消瘦等相关症状、遗传、检查报告这4个角度询问是否患有糖尿病或者妊娠性糖尿病;在药物治疗方面,咨询者主要咨询降糖药如何选择、药物剂量及减量与停用、联合用药、药物副作用、孕期用药、胰岛素使用及快舒尔无针注射器的特點与使用等多个方面的内容;在治疗方案方面,咨询者主要咨询血糖居高不下、药效不明显、糖尿病患者手术、中医治疗以及孕期血糖高等方面的治疗问题;在控制方面,咨询者主要询问血糖控制情况、血糖监测方法、血糖仪使用等相关问题以及关于餐后2小时血糖高于餐后1小时等血糖方面的困惑;在饮食和健康方面,咨询者主要咨询糖尿病患者饮食注意事项,包括水果、牛奶、蜂胶等,以及不同身体状况下如何饮食等;在并发症方面,咨询者主要咨询糖尿病足、视网膜病变、糖尿病肾、糖尿病神经病变等方面的内容,主要症状有眼睛模糊、脚部浮肿、脚烂等。
由此可见,咨询问题提示列表不仅相对于完整问题集在平均信息质量上有了提升,且能较为全面地涵盖多个主题的咨询问题,从咨询内容、词汇用语、语言逻辑等多个方面给咨询者提供咨询参考,本文提出的基于Sentence-BERT语义表示的咨询问题提示列表自动构建模型能够充分考虑问题的全面性、重要性和新颖性,取得了较好的实验效果。
4 结论与展望
针对现阶段问题提示列表构建大多采用专家咨询法、访谈法等,本文提出了一种基于Sentence-BERT语义表示的咨询问题提示列表自动构建模型。首先,该模型对每类糖尿病问题集使用LDA模型进行主题发现,其次通过Sentence-BERT预训练模型对问题进行语义表示,使用余弦距离度量不同问题之间的相似度,并基于TextRank算法对问题进行重要性排序,最后冗余处理后,构建出咨询问题提示列表,研究结果表明该模型具有较好的实验效果。
本文的创新点在于:①提出了基于问答社区的咨询问题提示列表自动构建模型。区别于传统问题提示列表构建方法,本文的研究对象是问答社区中真实、客观存在的咨询文本,通过对咨询者实际咨询文本的语义挖掘,实现了咨询问题提示列表的自动构建,满足了智能咨询服务要求;②在每类问题集下使用LDA进行主题聚类,能够更深层次地挖掘咨询问题主题,保证咨询问题提示列表内容的全面性;③使用Sentence-BERT模型进行咨询问题语义表示。相较于BERT模型和Word2vec模型,基于Sentence-BERT预训练模型的语义表示结果在文本相似度度量任务上表现更优。
本文存在一些不足和局限性:①本文仅根据语义相似度度量咨询问题的重要程度,但是问答社区中问题的浏览数、提问时间等一定程度上也能够反映问题的重要程度,本文对此没有考虑;②传统问题提示列表构建过程中需要领域专家对问题进行评价,由于问答社区没有此类数据,当前仅考虑咨询者的咨询需求,由此建议问答社区增加问题质量评价功能,领域专家可以对问题的重要性、准确性等进行评价,据此融合专家和咨询者意见构建咨询问题提示列表。咨询问题提示列表是一项有意义的基础性工作,在今后的研究中将继续优化咨询问题提示列表构建模型并将其应用在更多的领域,同时在动态咨询引导方面做相关探索。
参考文献
[1]Molinero R I,García-Madruga J A.Knowledge and Question Asking[J].Psicothema,2011,23(1):26-30.
[2]Miyake N,Norman D A.To Ask a Question,One Must Know Enough to Know What is Not Known[J].Journal of Verbal Learning and Verbal Behavior,1979,18(3):357-364.
[3]张玉峰.智能信息系统[M].武汉:武汉大学出版社,2008:499-522.
[4]廖瑶姬,高国贞,彭雅琴.基于信息需求的哮喘问题提示列表的构建[J].护理研究,2020,34(3):384-387.
[5]Renovanz M,Haaf J,Nesbigall R,et al.Information Needs of Patients in Spine Surgery:Development of a Question Prompt List to Guide Informed Consent Consultations[J].Spine Journal,2019,19(3):523-531.
[6]刘冠男.早期宫颈癌病人术前信息需求问题提示表的构建[D].沈阳:中国医科大学,2018.
[7]Li Y Z,Teng D,Shi X G,et al.Prevalence of Diabetes Recorded in Mainland China Using 2018 Diagnostic Criteria from the American Diabetes Association:National Cross Sectional Study[J].BMJ,2020,369.
[8]Reimers N,Gurevych I.Sentence-BERT:Sentence Embeddings Using Siamese BERT-Networks[J].arXiv Preprint arXiv:1908.10084,2019.
[9]Dimoska A,Tattersall M H N,Butow P N,et al.Can a“Prompt List”Empower Cancer Patients to Ask Relevant Questions?[J].Cancer,2008,113(2):225-237.
[10]Lim L,Chow P,Wong C Y,et al.Doctor-patient Communication,Knowledge,and Question Prompt Lists in Reducing Preoperative Anxiety-A Randomized Control Study[J].Asian Journal of Surgery,2011,34(4):175-180.
[11]Mancini J,Butow P N,Julian-Reynier C,et al.Question Prompt List Responds to Information Needs of Myelodysplastic Syndromes Patients and Caregivers[J].Leukemia Research,2015,39(6):599-605.
[12]Brown R F,Bylund C L,Li Y,et al.Testing the Utility of a Cancer Clinical Trial Specific Question Prompt List(QPL-CT)During Oncology Consultations[J].Patient Education and Counseling,2012,88(2):311-317.
[13]Sansoni J E,Grootemaat P,Duncan C.Question Prompt Lists in Health Consultations:A Review[J].Patient Education and Counseling,2015,98(12):1454-1464.
[14]Lederer S,Fischer M J,Gordon H S,et al.A Question Prompt Sheet for Adult Patients with Chronic Kidney Disease[J].Bmc Nephrology,2016,17(1):1-10.
[15]郜心怡,孫墨然,陈长英.晚期癌症患者问题提示列表的引入与修订[J].护理学杂志,2020,35(18):40-43.
[16]林莉媛,王中卿,李寿山,等.基于PageRank的中文多文档文本情感摘要[J].中文信息学报,2014,28(2):85-90.
[17]陶兴,张向先,郭顺利,等.学术问答社区用户生成内容的W2V-MMR自动摘要方法研究[J].数据分析与知识发现,2020,4(4):109-118.
[18]黄波,刘传才.基于加权TextRank的中文自动文本摘要[J].计算机应用研究,2020,37(2):407-410.
[19]肖元君,吴国文.基于Gensim的摘要自动生成算法研究与实现[J].计算机应用与软件,2019,36(12):131-136.
[20]Zhang J,Zhao Y.A User Term Visualization Analysis Based on a Social Question and Answer Log[J].Information Processing & Management,2013,49(5):1019-1048.
[21]金碧漪,许鑫.社会化问答社区中糖尿病健康信息的需求分析[J].中华医学图书情报杂志,2014,23(12):37-42.
[22]朱光,刘蕾,李凤景.基于LDA和LSTM模型的研究主题关联与预测研究——以隐私研究为例[J].现代情报,2020,40(8):38-50.
[23]Devlin J,Chang M W,Lee K,et al.Bert:Pre-training of Deep Bidirectional Transformers for Language Understanding[J].arXiv Preprint arXiv:181004805,2018.
[24]Vaswani A,Shazeer N,Parmar N,et al.Attention is All You Need[J].arXiv Preprint arXiv:1706.03762,2017.
[25]Chopra S,Hadsell R,LeCun Y.Learning a Similarity Metric Discriminatively,with Application to Face Verification[C]//2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition,IEEE,2005:1:539-546.
[26]Mihalcea R,Tarau P.Textrank:Bringing Order Into Text[C]//Proceedings of the 2004 Conference on Empirical Methods in Natural Language Processing,2004:404-411.
[27]成全,王火秀,駢文景.基于证据推理的医疗健康网站信息质量综合评价研究[J].数字图书馆论坛,2020,(4):53-59.
[28]Warrens M J.Chance-Corrected Measures for 2×2 Tables That Coincide with Weighted Kappa[J].The British Journal of Mathematical and Statistical Psychology,2011,64(2):355-365.
[29]Shannon C E.A Mathematical Theory of Communication[J].The Bell System Technical Journal,1948,27(3):379-423.
[30]PyTorch[EB/OL].https://pytorch.org/docs/master/generated/torch,2021-03-24.
[31]Gensim[EB/OL].http://radimrehurek.com/gensim/,2021-03-24.
[32]Sentence-transformers[EB/OL].https://github.com/UKPLab/sentence-transformers,2021-03-24.
[33]NumPy[EB/OL].http://www.numpy.org/,2021-03-24.
(责任编辑:孙国雷)