一种针对电子病历描述的查询重构方法与流程

文档序号:21094273发布日期:2020-06-16 20:09阅读:来源:国知局

技术特征:

1.一种针对电子病历描述的查询重构方法,其特征在于,包括

步骤1、对数据集中的电子病历文本和医疗文献文本进行预处理;

步骤2、训练svm分类器对电子病历文本进行查询意图预测;

步骤3、获取电子病历文本的所有子查询并对其进行初步预筛选;

步骤4、训练查询质量预测模型,从步骤3中预筛选输出的子查询中选取最优子查询;

步骤5、结合步骤2得到的查询意图与步骤4输出的最优子查询得到最终的重构查询;

其中

步骤1:对数据集中的电子病历文本和医疗文献文本进行预处理

1.1、提取纯文本

因为电子病历文本本身就是纯文本,所以无需此步骤。而医疗文献文本是以xml格式存储的网页文件,需要去除其中无用的css和js代码,并根据xml标签取出需要的纯文本数据,包括文献的标题、摘要、关键词和正文部分,使预处理后的文献文本拥有统一格式。

将电子病历纯文本和医疗文献提取后的纯文本提供给步骤1.2;

1.2、去除停用词

利用预处理词表去除纯文本中的停用词,包括一些不含有语义信息的词汇,以及使用频率过高的词汇。

去除停用词后结果提供给步骤1.3;

1.3、还原词性

将不同的词性整合还原为词根,英文中同一个含义的词会有不同时态的变化,将这些词进行词性还原。

还原词性后即完成了步骤1的文本预处理工作,将预处理后的电子病历文本提供给步骤2和步骤3,而将预处理后的医疗文献文本提供给步骤4。

步骤2:训练svm三分类器对电子病历文本进行查询意图预测

步骤2利用步骤1中得到的预处理后的电子病历文本作为训练集来训练svm分类器进行查询意图的判断,具体包括以下步骤。

2.1、为训练集中的每一个电子病历文本标注三分类标签:若电子病历文本内容属于诊断(diagnosis),标注为1;若电子病历文本内容属于治疗方案(treatment),标注为2;若电子病历文本内容属于诊断检测手段(test),标注为3。标注后的结果提供给步骤2.2。

2.2、训练三分类器。

三分类器的训练使用现有的支持向量机svm算法,训练时需要输入电子病历文本的特征和步骤2.1中标注的三种分类标签。分类器的训练需要用到两个电子病历文本的特征:(1)tf-idf值;(2)语义信息。

(1)tf-idf是一种统计方法,用以评估一字词对于一个语料库中的其中一份文件的重要程度。其中词频(termfrequency,tf)指的是某一个给定的词语在该文件中出现的频率。逆向文件频率(inversedocumentfrequency,idf)是由总文件数目除以包含该词语的文件数目,再将得到的商取以10为底的对数得到。tf-idf值是这两个值的乘积,公式为

其中nω表示文件中词ω出现的次数,n表示文件中的总词数,nd表示语料库中文件总数,nω表示语料库中包含词ω的文件数。

(2)语义信息指三部分信息:是否包含诊断结果(值为0/1)、是否表明已完成检查(值为0/1)、查询文本长度(值为0-200)。

将训练得到的三分类器提供给步骤2.3。

2.3、将电子病历文本输入已训练好的三分类器,并将分类结果(即查询意图)提供给步骤5。

步骤3:获取电子病历文本的所有子查询并对其进行初步预筛选

理论上一个包含n个查询词的查询可以得到指数量级个子查询,例如含3个查询词的查询语句“fevercoughheadache”可拆分成的子查询有“fever”、“cough”、“headache”、“fevercough”、“feverheadache”、“coughheadache”、“fevercoughheadache”。穷举所有可能的子查询进行排序是不现实的,所以首先需要对子查询进行预筛选。子查询预筛选包含以下步骤。

3.1、在电子病历文本的所有子查询中选取长度在3-10之间的子查询。子查询长度指的是查询中的单词数目。研究表明使检索效果最佳的查询长度在3-6之间,考虑到本发明针对的电子病历长文本,将长度最大阈值定义在10。结果提供给步骤3.2。

3.2、计算3.1中得到的每个子查询的平均互信息量,选取互信息量最高的30个子查询。子查询的平均互信息量计算公式如下:

其中n(x,y)表示在整个语料库中,单词x和单词y同时出现在窗口大小为25的文档中的频率,n(x)、n(y)分别表示单词x和单词y在语料库中出现的频率。nc表示整个语料库的单词数。计算一个子查询中任意两个单词的互信息量,并将它们的加权平均值作为子查询的平均互信息量。

步骤3最终得到预筛选后的30个子查询,此结果提供给步骤4。

步骤4:训练查询质量预测模型,从预筛选后的子查询中选取最优子查询

4.1、为子查询标注查询质量分数

对步骤3得到的每一个预筛选后的子查询进行一轮检索,检索的目标文献集来自步骤1中预处理后的医疗文献文本集。搜索引擎使用的是lemur开源项目中的indri5.11。将检索结果与trec会议提供的评价标准对比,计算得到检索的平均准确率得分,并将其标注为该子查询的查询质量分数。标注了查询质量分数的子查询作为此步骤的结果提供给步骤4.2。

4.2、训练查询质量预测模型

查询质量预测模型的训练使用现有的svmrank算法,训练时需要输入可以表征子查询质量的指标和步骤4.1中标注的查询质量分数。

模型训练需要用到以下指标,对训练集中的每个子查询计算:(1)逆文档频率相关指标;(2)简化查询清晰度指标;(3)语料/查询相似特征指标;(4)查询可扩展性指标。

在分别介绍这些指标前定义此步骤用到的符号含义。对一个查询q,假设它包含查询词ω1,…ωn,语料库c中n(ωi)表示查询词ωi在语料库中出现的频率,n(ωi,ωj)表示语料库中查询词ωi,ωj(i≠j)同时出现在一个长度为25个单词的窗口中的频率,nc表示语料库包含的词语总数,nω表示出现过查询词ω的文档数,nd表示语料库中所有文件的数目。pc(ω)表示语料库中查询词ω出现的概率,p(ω|q)表示查询语句q中ω出现的概率,sω表示词语ω的同义词集。

(1)逆文档频率相关指标计算公式为:

其中nω为包含单词ω的文档数,nd为语料库中总文档数。对于每个子查询,计算每个查询词idf值的和、最大值、标准偏差、算术平均值、几何平均值和调和平均值共同作为查询质量指标。

(2)简化查询清晰度指标计算公式为:

其中pml(ω|q)为查询q中单词ω的出现的频率,pc(ω)单词ω在语料库中出现的频率。

(3)语料/查询相似特征指标计算公式为:

和逆文档频率相关指标一样,我们计算每个查询词scq值的和、最大值、标准偏差、算术平均值、几何平均值和调和平均值共同作为查询质量指标。

(4)查询可扩展性指标

本发明首次提出了一个反映查询扩展性能的指标——查询可扩展性指标。计算公式为:

其中sω为查询词ω的同义词集,p(α|q)指查询模型中查询词α的出现概率。可以认为查询可扩展性越高的查询,其查询质量越高,因为在对它们进行查询扩展后可以检索到更多的相关文档。

将训练得到的查询质量预测模型提供给步骤4.3。

4.3、对步骤3得到的每一个预筛选后的子查询,计算步骤4.2中表征子查询质量的4个指标,并将其输入到步骤4.2训练得到的查询质量预测模型得到该子查询的查询质量得分。选取30个子查询中查询质量得分最高的子查询作为最优子查询,结果提供给步骤5。

步骤5:结合查询意图和最优子查询得到最终的重构查询

将步骤2得到的查询意图和步骤4得到的最优子查询结合作为最终结果的重构查询。


技术总结
一种针对电子病历描述的查询重构方法,为临床决策支持中针对电子病历长文本的查询重构方法。信息检索中的查询重构是指将用户输入的信息进行自动化处理形成新的查询表达式的过程,目的是为了在大量复杂的信息数据中进一步挖掘用户查询的真正意图,提升检索效果。在医疗领域中,医学文献检索是临床决策支持的一个重要应用,它将电子病历文本作为查询输入从海量医学文本中获取需要的信息。而电子病历的描述十分复杂,为得到有效的检索效果需要进行查询重构。对此,本发明针对具有冗余信息的电子病历描述长文本,利用子查询分割和筛选及查询质量预测技术,选取查询质量最高的子查询替代原始查询,并预测查询意图重构查询,提高了检索效率。

技术研发人员:方钰;姚窅;陆明名;黄欣;翟鹏珺
受保护的技术使用者:同济大学
技术研发日:2020.01.17
技术公布日:2020.06.16
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1