系统评价可为临床实践和医疗卫生决策提供重要证据支持。但在系统评价的制作过程中,文献筛选和数据提取是非常耗时的工作步骤。自然语言处理(NLP),作为计算机科学和人工智能的研究方向之一,可加速系统评价中的文献筛选和数据提取过程。本文回顾了系统评价对快速文献筛选和数据提取的需求;介绍了 NLP 的发展历程和机器学习类型,系统整理了现有可用于系统评价初筛、全文筛选和数据提取过程的 NLP 工具;讨论了现有 NLP 在系统评价领域应用时存在的问题,并对其未来发展提出了展望。
引用本文: 秦璇, 刘佳利, 王雨宁, 邓可, 马玉, 邹康, 李玲, 孙鑫. 自然语言处理在系统评价中的应用. 中国循证医学杂志, 2021, 21(6): 715-720. doi: 10.7507/1672-2531.202012150 复制
系统评价是一种文献综合方法,围绕特定的临床问题和需求,收集某一具体医学问题的相关研究,按照纳入和排除标准筛选文献,严格评价纳入研究的偏倚风险并提取所需数据,然后进行证据合成,得到当前的最佳证据[1]。然而,在系统评价制作过程中,文献筛选和数据提取是非常耗时的工作步骤。随着医学的飞速发展,医疗领域积累了大量的科学文献和医疗文本数据。截至 2020 年 5 月,PubMed 公共检索平台收集了 3 000 多万份医疗文献,而 2010 年为 2 000 万份,平均每年增加 100 万份[2]。与此同时,为确保检索结果的全面性,检索策略要求灵敏度超过 98% 而特异性低于 75%,这导致了初检文献中包含大量与研究目的无关的文献[3]。另一方面,Cochrane 手册建议系统评价应每两年更新一次[4]。然而超半数的系统评价发表时间和最后检索时间相隔 14 个月[5],因此 7% 的系统评价发表时结果已经过时[6]。而系统评价研究者需要筛选海量检出文献[7]。有研究显示,发表一篇系统评价平均需花费研究者 67.3 周的时间,无关文献率平均高达 97.1%[8]。由于文献总量大、检索策略特异度低和更新需求频繁的原因,在系统评价过程,研究者需要长期耗费巨大的人力、物力在文献筛选和数据提取的工作中[9]。如何从这些文本数据中快速、高效地提取有效的信息,是急需解决的问题。
自然语言处理(nature language processing,NLP)在 20 世纪 50 年代首次提出,作为计算机科学和人工智能的方向之一,主要是通过计算机算法来实现计算机对人类语言的理解和生成。目前 NLP 发展迅速,具有广泛的应用场景,已在文本挖掘、情感分析、信息检索、机器翻译等领域取得突出进展,受到自然科学领域的广泛关注。
与此同时,系统评价过程中的文献筛选和数据提取任务,与 NLP 已有的实际应用场景类似。系统评价的初筛和全文筛选任务,即是将文献分为两类(纳入或排除),这属于文本分类问题。与之相似的 NLP 工业应用场景为新闻分类。对于新闻分类,网上大量的新闻手工归档难度大,利用 NLP 判断一个新闻的类别(经济、文化等),也属于文本分类问题。系统评价的数据提取问题,类似于目前 NLP 在金融市场上提取交易决策相关信息用于金融决策,都是需要从文本中提取相关数据。
因此,NLP 作为可快速处理海量信息的方法,可能是一种加速系统评价的有效方法。本文旨在为系统评价研究者提供 NLP 在加速系统评价筛选方面的应用方法和工具进行总结,以期为系统评价者应用相关工具提供参考。
1 NLP 简介
随着技术的发展,人工智能展现出了高效而准确的实际应用效果,各行各业开始引入人工智能技术进行变革。NLP 作为计算机科学和人工智能的重要研究方向之一,也逐步受到研究者重视。随着 NLP 算法的快速发展,NLP 的应用变得越来越广泛。系统评价员作为 NLP 潜在使用者,了解 NLP 技术的发展和现有技术类型,有利于选取合适的 NLP 工具。
1.1 NLP 的发展
由于自然语言的复杂性,NLP 研究进展缓慢,直至引入机器学习相关算法,才极大地推进了 NLP 发展。NLP 的发展经历了基于规则、基于统计和基于机器学习三个阶段[10]。在这三个阶段中,基于机器学习的 NLP 方法在应用中展现出较佳的实际效果。
在基于规则的方法中,需要专业人员人工制定规则,从而根据规则开发算法。这种策略高度依赖于专业人员对语言学和专业问题本身的掌握程度。同时,由于语言表达的多样性,单一规则的方法难以覆盖所有的知识领域,无法满足复杂的实际需求。
在基于统计的方法中,需要 NLP 研究者先尝试构建语料库和词库,使计算机基于统计模型来学习文本特征,然后再构建具体的任务模型,如文本分类和数据提取。在这一策略中,研究者不再直接处理文字单词本身,而是使用基于语言学的数字特征来表示文本中的每一个单词,通过数学模型来构建关系,以到达机器理解文本的目的。基于语言学的数字特征包括词频、词性、词根、词序等语言学量化的特征。这一时期代表模型为隐马尔可夫(hiden Markov model,HMM)[11]、K-邻近(k-nearest neighbor,KNN)[12]、支持向量机(support vector machine,SVM)[13]、朴素贝叶斯(naive Bayes,NB)[14]、条件随机场(conditional random field,CRF)[15]等。基于统计的策略中,研究者不断深入研究文字的特征向量,使产生的数字向量高维稀疏,难以构建有效的连接关系,这使得整个 NLP 模型的准确度难以提高。
在基于机器学习的方法中,文本的特征数字向量不再由研究者人为设计,而是通过语言模型将文本中的每一个单词映射为低维度的数字向量。数字向量的数值来源于模型计算结果,不受人为控制,由文本本身及相应的语言模型产生低维的数字向量,从而解决数字向量的高维稀疏问题。这一时期常用的模型为词向量(word2vec)[16]、卷积神经网络(convolutional neural networks,CNN)[17]、循环神经网络(recurrent neural network)[18]、长短期记忆(long short-term memory,LSTM)[19]、全自注意力网络(transformer)[20]和预训练的深度双向全自注意力网络语言模型(bidirectional encoder representations from transformers,BERT)[21]等。
在这三个阶段中,基于机器学习的 NLP 方法在实际应用中展现出较佳的效果。因此,NLP 逐渐被广泛地应用于多个现实场景,如机器翻译、智能移动设备等。故系统评价员在选取 NLP 工具时,可考虑优先采用基于机器学习方法的 NLP 工具。
1.2 机器学习的类型
目前常用的 NLP 算法大多是基于机器学习。了解机器学习的类型,有助于使用者掌握这类 NLP 工具的使用方法。NLP 工具的核心在于 NLP 算法,基于机器学习的 NLP 算法核心在于机器学习模型。机器学习模型本身由模型结构和模型参数两部分组成。模型结构由研究人员设计作为模型的骨架,模型参数由训练数据计算得到。训练过程则是计算模型参数的过程。根据训练过程,机器学习的类型分为监督学习、无监督学习和半监督学习三种类型。监督学习是指通过使用一组已知类别的样本来调整分类器参数以达到所需性能的过程[22]。无监督学习是指通过使用一组没有已知类别的样本来调整参数[22]。半监督学习是指通过使用少量具有已知类别的样本和大量没有已知类别的样本来调整参数[22]。在监督学习、无监督学习和半监督学习三种类型中,监督学习的精度最佳[23]。基于监督学习的方法做文本分类任务,需要用户提供样本及样本对应的分类标签。
2 NLP 在加速系统评价中的应用
文献总量大、检索策略宽松和更新需求频繁使系统评价研究者需要处理海量文献。研究者可利用 NLP 自动化实现文献筛选和数据提取,加速系统评价进程,帮助快速合成证据。目前 NLP 算法逐渐成熟,然而成熟的系统评价 NLP 工具还很少。对于系统评价研究者而言,NLP 工具操作性更好,学习成本和使用成本更少。本文将从初筛、全文筛选和数据提取三个方面整理现有具有代表性的系统评价 NLP 工具。
2.1 初筛
2.1.1 概述
针对海量的检出文献,系统评价员首先要根据检出文献的题目和摘要来判断该文献是否符合纳入标准,这个过程为初筛。相较于全文筛选和数据提取,初筛领域的 NLP 工具较多。
2.1.2 现有工具工作原理和性能总结
目前具有代表性的初筛工具见表 1。根据机器学习类型,现有初筛工具可分为半自动化监督学习和监督学习两类。半自动化监督学习代表性工具为 Abstrackr[24, 25]、EPPI-reviewer[26]、Rayyan[27]、ASReview[28]、DoCTER[29]、Colandr[30]和 SWIFT-Active Screener[31];监督学习的代表性工具为 GAPscreener。
在使用半自动化监督学习工具时,通常需要用户将初筛文献的摘要信息上传至工具中,在工具内将显示文本(包括题目、摘要、杂志、关键词和作者信息),用户人工判断文本的类别(相关或者不相关),在用户人工判断了一定数量文献后,工具采用内置模型预测文本的相关性,并对所有文本进行相关性排序[24, 25]。
半自动化监督学习工具的常用评价指标为 WSS@95。WSS(work saved over sampling),表示达到同样期望的召回率,文献按相关性排序,其相比于随机排序,可以减少文献筛选负担的百分比。WSS@95 即为期望召回率为 95% 时,该模型可减少的文献筛选负担所占百分比。一个完全有序的列表的最大可能 WSS 评分接近 1,此时筛选的百分比接近 0,表明筛选负担的理论上可 100% 减少。WSS 评分为 0 或负值则表明,随机排序将与优先级排序一样有效或更有效。
根据表 1 显示,从节省工作量的效果角度来评价,在文章案例中 ASReview 的节省工作量效果最佳。就用户调查结果而言,Rayyan 和 Covidence 工具是最常用的系统评价工具[32],然而 Covidence 在筛选上的帮助为高亮关键词,并不能实现自动化筛选[33]。
在使用监督学习工具时,需要用户将检索结果文献的摘要信息上传至工具中,工具即可自动化筛选摘要。目前的代表性工具为 GAPscreener[34, 35]。该工具只能用于识别与人类基因相关的文献摘要。其本身不能直接完成系统评价的初筛任务,仅能作为一种特定文献类别的识别工具。该工具本身采用了 SVM 模型,基于监督学习的方式训练工具模型,训练数据中阳性样本来自 HuGE Navigator 数据集,阴性样本为随机产生的 10 000 篇文本,训练得到的模型为通用模型。在实际使用中不需要用户进行文本分类工作。该工具的案例表现效果较好:召回率、特异度和精确度分别为 97.5%、98.3% 和 31.9%。其优点在于召回率高,特异度高,无需用户标注文本对应的分类标签,其缺点在于仅能筛选特定类型的文本。
2.2 全文筛选
2.2.1 概述
经过初筛后,进一步查找符合纳入标准或不确定文献的全文,再基于全文信息判断该研究是否符合纳入标准,这个过程为全文筛选。从技术角度出发,文献全文信息主要以 PDF 文件的形式存在,计算机需要将 PDF 转化为 xml、txt 等代码可读取的文本形式。相较于初筛的摘要文本,全文文本增加了信息量,相应的也增加了难度。目前没有具有代表性的可直接用于自动化全文筛选的工具,仅有部分 PDF 全文解析工具。
2.2.2 现有工具工作原理和性能总结
目前没有具有代表性的可直接用于自动化全文筛选的工具,RobotReviewer[36]有分析全文信息功能的工具。但 RobotReviewer 工具不能直接用于全文筛选,其具有识别 PDF 文件中描述 PICOS 原则句子的能力。若将 PICOS 原则的句子进一步结构化,可以帮助 PDF 文本筛选工具进行系统评价的全文筛选。目前全文筛选的难点在于全文信息复杂多样、文本获取难度高、解析难度高。特别是中文文本的解析更为困难,目前研究难点包括中文的分词、中文词意消歧、句法模糊等。在书写中文时,汉字间没有间隔,如何组词划定字词边界是中文分词的难点问题。
2.3 数据提取
2.3.1 概述
经过初筛和全文筛选,最后,还要提取所有符合纳入标准的研究的数据,这个过程为数据提取。这一阶段,要求工具可以识别和提取出用户需要的信息内容。这一阶段的工具较少,目前系统评价尚无自动化数据提取工具。
2.3.2 现有工具工作原理和性能总结
目前主要有三类辅助工具:① 针对某一类文本进行数据提取,如 Spotfire-DXP[37],仅提取国家医学图书馆临床试验网站的 xml 数据;② 数据提取辅助工具,帮助格式转化、补充摘要信息和生成长文本摘要,不直接提供数据提取功能,如 Engauge Digitizer 将图片转文字、Data Abstraction Assistant(DAA)[38]帮助定位摘要信息在全文中的内容、Spá[39]实现 PDF 的自动注释和形成文本摘要;③ 可用于用户自身感兴趣信息的提取,如 Colandr[30]、Covidence[33]都是辅助工具。Covidence 提供全文的关键词高亮功能,也提供数据提取自定义表格和模板。
目前的数据提取工具的主要发展方向为便捷人工提取,如关键词高亮和提取自定义表格和模板,其代表性工具为 Covidence,但该工具为商业软件,目前需要注册后付费使用。
2.4 综合应用 NLP 的实例
目前 NLP 工具在系统评价中的综合利用并不多。Clark[40]使用了一系列工具来加速系统评价过程,在两周内完成了液体摄入对尿路感染影响的系统评价。在该案例中,这篇文章共使用了 10 种工具,分别服务于设计系统的检索策略,同时在 PubMed 或 Medline(Ovid)中进行检索、去重、筛选题目摘要获取全文和评价偏倚风险。其中涉及筛选题目和摘要功能的工具为 SRA Helper、Robot Search 和 EndNote。SRA Helper 通过词频分析对文本进行聚类,通过对文本的聚类来加速对题目和摘要的筛选。RobotSearch 通过 NLP 算法识别 RCT 类型的摘要来加速对题目和摘要的筛选。EndNote 工具主要是通过分组功能来加速对题目和摘要的筛选,分组功能的实现不包含任何 NLP 自动化工作。在这个综合案例中,系统评价工作得到了明显加速,然而其中涉及的语义理解工作大部分依旧通过人工识别来完成。
在该案例中,涉及的语义理解工作(文献筛选和数据提取)仅部分通过 NLP 工具来自动化完成,但系统评价完成速度已得到了明显提升。若未来进一步发展 NLP 工具,实现文献筛选和数据提取的自动化,可进一步加速系统评价过程。
3 讨论与展望
3.1 问题总结
NLP 技术在系统评价领域中具有广泛的应用前景。然而,NLP 目前在系统评价领域的应用仍处于初级阶段。主要存在以下问题:① 系统评价研究者对 NLP 技术缺乏了解。目前 NLP 技术的前沿领域是通过深度学习算法来实现的,目前系统评价研究者对 NLP 的理解多停留在基于规则,由专家制定规则完成对文献的筛选和信息的提取。然而这种规则要求制定者具有深厚的临床专业背景和语言学背景,这也意味着研究者需要花大量时间和精力在制定规则上。同时,这样的规则仅适用于单一任务,一旦变换语言环境,变换研究问题,则规则不再适用。临床问题种类繁多且表述语言也在变化,导致研究者需要持续地花费大量时间和精力制定规则,② 利用基于监督学习进行文本分类和数据提取,这类方法面临的问题包括筛选结果不稳定、缺乏统一评价环境和缺乏训练数据。目前,基于监督学习的 NLP 工具,多是针对每个项目获得相应的训练数据,进行自动化,其结果依赖用户给定的人工分类结果,这意味着工具筛选结果不稳定。在用户上传数据量小的时候,将存在筛选模型过度拟合的情况;在用户上传的人工分类效果不佳时,模型识别纳入文本的能力也不佳。此外,各个初筛项目间的分类模型是独立的,分类效果也是独立的,难以在一个公平环境中比较各个自动化筛选工具的效果。同时,训练数据很难得到,因为系统评价员很少报告(甚至记录)系统评价引文在什么阶段被排除在外,③ 现有的 NLP 工具多为辅助性工具,主要用于辅助信息的格式转化,无法直接提供信息提取的功能。利用相关性进行排序,得到的是筛选的间接结果,无法得到准确的纳入或者排除结果。PICOS 的识别属于句子级别,全文的纳入和排除结果依旧需要人工识别给出。
3.2 展望
系统评价的海量文本处理需求与 NLP 技术的海量文本识别的能力相契合。因此,NLP 在加速系统评价领域具有广阔的应用前景。未来 NLP 在系统评价中的应用可向几个方向发展:① 加强 NLP 在系统评价方面应用工具的开发,促进 NLP 技术在系统评价领域应用的推广。现有的自然语言算法在逐渐成熟,然而成熟的包含 NLP 语义识别功能的系统评价工具还不多,加强自然语言算法在系统评价领域的成果转化,将算法以操作简易的 NLP 工具形式,在系统评价领域进行应用和推广,有利于 NLP 技术在系统评价领域的推广,② 建立大型语料库,为基于监督学习的 NLP 技术提供训练数据,为 NLP 在系统评价领域的应用效果提供公共的测评标准。基于 PICOS 原则建立通用型监督学习模型,建立大型语料库,用于训练 NLP 模型识别文本中的 PICOS,提取相关信息,再针对特定研究问题设定 PICOS 的纳入标准来确定最终的纳排结果。在这一思路下,构建的 NLP 模型具有更强的泛化能力,也可以降低 NLP 对单次项目数据质量的依赖,③ 关注 NLP 技术的最新进展,有利于 NLP 技术在系统评价领域的应用。基于监督学习的 NLP 算法,在结果敏感度上有较佳的表现,然而监督学习需要大量人工标注信息,人工标注过程耗时耗力。NLP 中半监督学习和非监督学习,对人工标注数据的需求量不大。关注半监督学习和监督学习在 NLP 中的发展,可以帮助研究者在保证正确率的情况下,减少人工工作量。
总之,NLP 技术本身近年来取得了长足的进步,然而目前在系统评价领域的应用较少。若能加快 NLP 在系统评价中的应用研究和推广,可加速整个循证医学领域的证据合成,为临床决策提供大量真实可靠的医学信息,促进医疗卫生决策的科学化。
系统评价是一种文献综合方法,围绕特定的临床问题和需求,收集某一具体医学问题的相关研究,按照纳入和排除标准筛选文献,严格评价纳入研究的偏倚风险并提取所需数据,然后进行证据合成,得到当前的最佳证据[1]。然而,在系统评价制作过程中,文献筛选和数据提取是非常耗时的工作步骤。随着医学的飞速发展,医疗领域积累了大量的科学文献和医疗文本数据。截至 2020 年 5 月,PubMed 公共检索平台收集了 3 000 多万份医疗文献,而 2010 年为 2 000 万份,平均每年增加 100 万份[2]。与此同时,为确保检索结果的全面性,检索策略要求灵敏度超过 98% 而特异性低于 75%,这导致了初检文献中包含大量与研究目的无关的文献[3]。另一方面,Cochrane 手册建议系统评价应每两年更新一次[4]。然而超半数的系统评价发表时间和最后检索时间相隔 14 个月[5],因此 7% 的系统评价发表时结果已经过时[6]。而系统评价研究者需要筛选海量检出文献[7]。有研究显示,发表一篇系统评价平均需花费研究者 67.3 周的时间,无关文献率平均高达 97.1%[8]。由于文献总量大、检索策略特异度低和更新需求频繁的原因,在系统评价过程,研究者需要长期耗费巨大的人力、物力在文献筛选和数据提取的工作中[9]。如何从这些文本数据中快速、高效地提取有效的信息,是急需解决的问题。
自然语言处理(nature language processing,NLP)在 20 世纪 50 年代首次提出,作为计算机科学和人工智能的方向之一,主要是通过计算机算法来实现计算机对人类语言的理解和生成。目前 NLP 发展迅速,具有广泛的应用场景,已在文本挖掘、情感分析、信息检索、机器翻译等领域取得突出进展,受到自然科学领域的广泛关注。
与此同时,系统评价过程中的文献筛选和数据提取任务,与 NLP 已有的实际应用场景类似。系统评价的初筛和全文筛选任务,即是将文献分为两类(纳入或排除),这属于文本分类问题。与之相似的 NLP 工业应用场景为新闻分类。对于新闻分类,网上大量的新闻手工归档难度大,利用 NLP 判断一个新闻的类别(经济、文化等),也属于文本分类问题。系统评价的数据提取问题,类似于目前 NLP 在金融市场上提取交易决策相关信息用于金融决策,都是需要从文本中提取相关数据。
因此,NLP 作为可快速处理海量信息的方法,可能是一种加速系统评价的有效方法。本文旨在为系统评价研究者提供 NLP 在加速系统评价筛选方面的应用方法和工具进行总结,以期为系统评价者应用相关工具提供参考。
1 NLP 简介
随着技术的发展,人工智能展现出了高效而准确的实际应用效果,各行各业开始引入人工智能技术进行变革。NLP 作为计算机科学和人工智能的重要研究方向之一,也逐步受到研究者重视。随着 NLP 算法的快速发展,NLP 的应用变得越来越广泛。系统评价员作为 NLP 潜在使用者,了解 NLP 技术的发展和现有技术类型,有利于选取合适的 NLP 工具。
1.1 NLP 的发展
由于自然语言的复杂性,NLP 研究进展缓慢,直至引入机器学习相关算法,才极大地推进了 NLP 发展。NLP 的发展经历了基于规则、基于统计和基于机器学习三个阶段[10]。在这三个阶段中,基于机器学习的 NLP 方法在应用中展现出较佳的实际效果。
在基于规则的方法中,需要专业人员人工制定规则,从而根据规则开发算法。这种策略高度依赖于专业人员对语言学和专业问题本身的掌握程度。同时,由于语言表达的多样性,单一规则的方法难以覆盖所有的知识领域,无法满足复杂的实际需求。
在基于统计的方法中,需要 NLP 研究者先尝试构建语料库和词库,使计算机基于统计模型来学习文本特征,然后再构建具体的任务模型,如文本分类和数据提取。在这一策略中,研究者不再直接处理文字单词本身,而是使用基于语言学的数字特征来表示文本中的每一个单词,通过数学模型来构建关系,以到达机器理解文本的目的。基于语言学的数字特征包括词频、词性、词根、词序等语言学量化的特征。这一时期代表模型为隐马尔可夫(hiden Markov model,HMM)[11]、K-邻近(k-nearest neighbor,KNN)[12]、支持向量机(support vector machine,SVM)[13]、朴素贝叶斯(naive Bayes,NB)[14]、条件随机场(conditional random field,CRF)[15]等。基于统计的策略中,研究者不断深入研究文字的特征向量,使产生的数字向量高维稀疏,难以构建有效的连接关系,这使得整个 NLP 模型的准确度难以提高。
在基于机器学习的方法中,文本的特征数字向量不再由研究者人为设计,而是通过语言模型将文本中的每一个单词映射为低维度的数字向量。数字向量的数值来源于模型计算结果,不受人为控制,由文本本身及相应的语言模型产生低维的数字向量,从而解决数字向量的高维稀疏问题。这一时期常用的模型为词向量(word2vec)[16]、卷积神经网络(convolutional neural networks,CNN)[17]、循环神经网络(recurrent neural network)[18]、长短期记忆(long short-term memory,LSTM)[19]、全自注意力网络(transformer)[20]和预训练的深度双向全自注意力网络语言模型(bidirectional encoder representations from transformers,BERT)[21]等。
在这三个阶段中,基于机器学习的 NLP 方法在实际应用中展现出较佳的效果。因此,NLP 逐渐被广泛地应用于多个现实场景,如机器翻译、智能移动设备等。故系统评价员在选取 NLP 工具时,可考虑优先采用基于机器学习方法的 NLP 工具。
1.2 机器学习的类型
目前常用的 NLP 算法大多是基于机器学习。了解机器学习的类型,有助于使用者掌握这类 NLP 工具的使用方法。NLP 工具的核心在于 NLP 算法,基于机器学习的 NLP 算法核心在于机器学习模型。机器学习模型本身由模型结构和模型参数两部分组成。模型结构由研究人员设计作为模型的骨架,模型参数由训练数据计算得到。训练过程则是计算模型参数的过程。根据训练过程,机器学习的类型分为监督学习、无监督学习和半监督学习三种类型。监督学习是指通过使用一组已知类别的样本来调整分类器参数以达到所需性能的过程[22]。无监督学习是指通过使用一组没有已知类别的样本来调整参数[22]。半监督学习是指通过使用少量具有已知类别的样本和大量没有已知类别的样本来调整参数[22]。在监督学习、无监督学习和半监督学习三种类型中,监督学习的精度最佳[23]。基于监督学习的方法做文本分类任务,需要用户提供样本及样本对应的分类标签。
2 NLP 在加速系统评价中的应用
文献总量大、检索策略宽松和更新需求频繁使系统评价研究者需要处理海量文献。研究者可利用 NLP 自动化实现文献筛选和数据提取,加速系统评价进程,帮助快速合成证据。目前 NLP 算法逐渐成熟,然而成熟的系统评价 NLP 工具还很少。对于系统评价研究者而言,NLP 工具操作性更好,学习成本和使用成本更少。本文将从初筛、全文筛选和数据提取三个方面整理现有具有代表性的系统评价 NLP 工具。
2.1 初筛
2.1.1 概述
针对海量的检出文献,系统评价员首先要根据检出文献的题目和摘要来判断该文献是否符合纳入标准,这个过程为初筛。相较于全文筛选和数据提取,初筛领域的 NLP 工具较多。
2.1.2 现有工具工作原理和性能总结
目前具有代表性的初筛工具见表 1。根据机器学习类型,现有初筛工具可分为半自动化监督学习和监督学习两类。半自动化监督学习代表性工具为 Abstrackr[24, 25]、EPPI-reviewer[26]、Rayyan[27]、ASReview[28]、DoCTER[29]、Colandr[30]和 SWIFT-Active Screener[31];监督学习的代表性工具为 GAPscreener。
在使用半自动化监督学习工具时,通常需要用户将初筛文献的摘要信息上传至工具中,在工具内将显示文本(包括题目、摘要、杂志、关键词和作者信息),用户人工判断文本的类别(相关或者不相关),在用户人工判断了一定数量文献后,工具采用内置模型预测文本的相关性,并对所有文本进行相关性排序[24, 25]。
半自动化监督学习工具的常用评价指标为 WSS@95。WSS(work saved over sampling),表示达到同样期望的召回率,文献按相关性排序,其相比于随机排序,可以减少文献筛选负担的百分比。WSS@95 即为期望召回率为 95% 时,该模型可减少的文献筛选负担所占百分比。一个完全有序的列表的最大可能 WSS 评分接近 1,此时筛选的百分比接近 0,表明筛选负担的理论上可 100% 减少。WSS 评分为 0 或负值则表明,随机排序将与优先级排序一样有效或更有效。
根据表 1 显示,从节省工作量的效果角度来评价,在文章案例中 ASReview 的节省工作量效果最佳。就用户调查结果而言,Rayyan 和 Covidence 工具是最常用的系统评价工具[32],然而 Covidence 在筛选上的帮助为高亮关键词,并不能实现自动化筛选[33]。
在使用监督学习工具时,需要用户将检索结果文献的摘要信息上传至工具中,工具即可自动化筛选摘要。目前的代表性工具为 GAPscreener[34, 35]。该工具只能用于识别与人类基因相关的文献摘要。其本身不能直接完成系统评价的初筛任务,仅能作为一种特定文献类别的识别工具。该工具本身采用了 SVM 模型,基于监督学习的方式训练工具模型,训练数据中阳性样本来自 HuGE Navigator 数据集,阴性样本为随机产生的 10 000 篇文本,训练得到的模型为通用模型。在实际使用中不需要用户进行文本分类工作。该工具的案例表现效果较好:召回率、特异度和精确度分别为 97.5%、98.3% 和 31.9%。其优点在于召回率高,特异度高,无需用户标注文本对应的分类标签,其缺点在于仅能筛选特定类型的文本。
2.2 全文筛选
2.2.1 概述
经过初筛后,进一步查找符合纳入标准或不确定文献的全文,再基于全文信息判断该研究是否符合纳入标准,这个过程为全文筛选。从技术角度出发,文献全文信息主要以 PDF 文件的形式存在,计算机需要将 PDF 转化为 xml、txt 等代码可读取的文本形式。相较于初筛的摘要文本,全文文本增加了信息量,相应的也增加了难度。目前没有具有代表性的可直接用于自动化全文筛选的工具,仅有部分 PDF 全文解析工具。
2.2.2 现有工具工作原理和性能总结
目前没有具有代表性的可直接用于自动化全文筛选的工具,RobotReviewer[36]有分析全文信息功能的工具。但 RobotReviewer 工具不能直接用于全文筛选,其具有识别 PDF 文件中描述 PICOS 原则句子的能力。若将 PICOS 原则的句子进一步结构化,可以帮助 PDF 文本筛选工具进行系统评价的全文筛选。目前全文筛选的难点在于全文信息复杂多样、文本获取难度高、解析难度高。特别是中文文本的解析更为困难,目前研究难点包括中文的分词、中文词意消歧、句法模糊等。在书写中文时,汉字间没有间隔,如何组词划定字词边界是中文分词的难点问题。
2.3 数据提取
2.3.1 概述
经过初筛和全文筛选,最后,还要提取所有符合纳入标准的研究的数据,这个过程为数据提取。这一阶段,要求工具可以识别和提取出用户需要的信息内容。这一阶段的工具较少,目前系统评价尚无自动化数据提取工具。
2.3.2 现有工具工作原理和性能总结
目前主要有三类辅助工具:① 针对某一类文本进行数据提取,如 Spotfire-DXP[37],仅提取国家医学图书馆临床试验网站的 xml 数据;② 数据提取辅助工具,帮助格式转化、补充摘要信息和生成长文本摘要,不直接提供数据提取功能,如 Engauge Digitizer 将图片转文字、Data Abstraction Assistant(DAA)[38]帮助定位摘要信息在全文中的内容、Spá[39]实现 PDF 的自动注释和形成文本摘要;③ 可用于用户自身感兴趣信息的提取,如 Colandr[30]、Covidence[33]都是辅助工具。Covidence 提供全文的关键词高亮功能,也提供数据提取自定义表格和模板。
目前的数据提取工具的主要发展方向为便捷人工提取,如关键词高亮和提取自定义表格和模板,其代表性工具为 Covidence,但该工具为商业软件,目前需要注册后付费使用。
2.4 综合应用 NLP 的实例
目前 NLP 工具在系统评价中的综合利用并不多。Clark[40]使用了一系列工具来加速系统评价过程,在两周内完成了液体摄入对尿路感染影响的系统评价。在该案例中,这篇文章共使用了 10 种工具,分别服务于设计系统的检索策略,同时在 PubMed 或 Medline(Ovid)中进行检索、去重、筛选题目摘要获取全文和评价偏倚风险。其中涉及筛选题目和摘要功能的工具为 SRA Helper、Robot Search 和 EndNote。SRA Helper 通过词频分析对文本进行聚类,通过对文本的聚类来加速对题目和摘要的筛选。RobotSearch 通过 NLP 算法识别 RCT 类型的摘要来加速对题目和摘要的筛选。EndNote 工具主要是通过分组功能来加速对题目和摘要的筛选,分组功能的实现不包含任何 NLP 自动化工作。在这个综合案例中,系统评价工作得到了明显加速,然而其中涉及的语义理解工作大部分依旧通过人工识别来完成。
在该案例中,涉及的语义理解工作(文献筛选和数据提取)仅部分通过 NLP 工具来自动化完成,但系统评价完成速度已得到了明显提升。若未来进一步发展 NLP 工具,实现文献筛选和数据提取的自动化,可进一步加速系统评价过程。
3 讨论与展望
3.1 问题总结
NLP 技术在系统评价领域中具有广泛的应用前景。然而,NLP 目前在系统评价领域的应用仍处于初级阶段。主要存在以下问题:① 系统评价研究者对 NLP 技术缺乏了解。目前 NLP 技术的前沿领域是通过深度学习算法来实现的,目前系统评价研究者对 NLP 的理解多停留在基于规则,由专家制定规则完成对文献的筛选和信息的提取。然而这种规则要求制定者具有深厚的临床专业背景和语言学背景,这也意味着研究者需要花大量时间和精力在制定规则上。同时,这样的规则仅适用于单一任务,一旦变换语言环境,变换研究问题,则规则不再适用。临床问题种类繁多且表述语言也在变化,导致研究者需要持续地花费大量时间和精力制定规则,② 利用基于监督学习进行文本分类和数据提取,这类方法面临的问题包括筛选结果不稳定、缺乏统一评价环境和缺乏训练数据。目前,基于监督学习的 NLP 工具,多是针对每个项目获得相应的训练数据,进行自动化,其结果依赖用户给定的人工分类结果,这意味着工具筛选结果不稳定。在用户上传数据量小的时候,将存在筛选模型过度拟合的情况;在用户上传的人工分类效果不佳时,模型识别纳入文本的能力也不佳。此外,各个初筛项目间的分类模型是独立的,分类效果也是独立的,难以在一个公平环境中比较各个自动化筛选工具的效果。同时,训练数据很难得到,因为系统评价员很少报告(甚至记录)系统评价引文在什么阶段被排除在外,③ 现有的 NLP 工具多为辅助性工具,主要用于辅助信息的格式转化,无法直接提供信息提取的功能。利用相关性进行排序,得到的是筛选的间接结果,无法得到准确的纳入或者排除结果。PICOS 的识别属于句子级别,全文的纳入和排除结果依旧需要人工识别给出。
3.2 展望
系统评价的海量文本处理需求与 NLP 技术的海量文本识别的能力相契合。因此,NLP 在加速系统评价领域具有广阔的应用前景。未来 NLP 在系统评价中的应用可向几个方向发展:① 加强 NLP 在系统评价方面应用工具的开发,促进 NLP 技术在系统评价领域应用的推广。现有的自然语言算法在逐渐成熟,然而成熟的包含 NLP 语义识别功能的系统评价工具还不多,加强自然语言算法在系统评价领域的成果转化,将算法以操作简易的 NLP 工具形式,在系统评价领域进行应用和推广,有利于 NLP 技术在系统评价领域的推广,② 建立大型语料库,为基于监督学习的 NLP 技术提供训练数据,为 NLP 在系统评价领域的应用效果提供公共的测评标准。基于 PICOS 原则建立通用型监督学习模型,建立大型语料库,用于训练 NLP 模型识别文本中的 PICOS,提取相关信息,再针对特定研究问题设定 PICOS 的纳入标准来确定最终的纳排结果。在这一思路下,构建的 NLP 模型具有更强的泛化能力,也可以降低 NLP 对单次项目数据质量的依赖,③ 关注 NLP 技术的最新进展,有利于 NLP 技术在系统评价领域的应用。基于监督学习的 NLP 算法,在结果敏感度上有较佳的表现,然而监督学习需要大量人工标注信息,人工标注过程耗时耗力。NLP 中半监督学习和非监督学习,对人工标注数据的需求量不大。关注半监督学习和监督学习在 NLP 中的发展,可以帮助研究者在保证正确率的情况下,减少人工工作量。
总之,NLP 技术本身近年来取得了长足的进步,然而目前在系统评价领域的应用较少。若能加快 NLP 在系统评价中的应用研究和推广,可加速整个循证医学领域的证据合成,为临床决策提供大量真实可靠的医学信息,促进医疗卫生决策的科学化。