NL2SQL 技术在三级公立医院绩效考核中的应用研究
作者: 庄润祥 李思尧
摘要:该文研究了基于自然语言处理和深度学习的NL2SQL技术在三级公立医院绩效考核系统中的应用。通过将自然语言查询转换为SQL语句,该技术有效提高了数据检索的效率和准确性,为医院绩效考核提供了更加智能、便捷的工具。案例研究展示了该技术的实际应用效果,并对其未来发展进行了展望。
关键词:自然语言处理;深度学习;NL2SQL;绩效考核系统
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2025)05-0064-03 开放科学(资源服务) 标识码(OSID) :
0 引言
随着公立医院绩效考核工作的推进,对数据分析效率和便捷性的需求日益增长。NL2SQL技术,即将自然语言查询转换为SQL语句的技术,为解决这一问题提供了新的途径。本文研究了NL2SQL技术在三级公立医院绩效考核系统中的应用,并具体探讨了该技术如何通过提高数据检索的效率和准确性来优化医院绩效考核流程,旨在提升公立医院绩效考核系统的智能化水平。
1 相关技术概念
1.1 深度学习与自然语言处理(NLP)
深度学习是机器学习的一个分支,通过模仿人脑处理信息的方式,利用多层神经网络发现数据的复杂模式。它在处理复杂任务时表现出色,特别是在图像识别、语音识别、自然语言处理以及医学图像分析等领域。自然语言处理使机器能够理解和生成语言,而深度学习的进步极大地推动了NLP的发展。RNN、LSTM、Transformer[1]及BERT的应用,使NLP取得了突破性进展,提升了系统性能,拓宽了应用场景,极大地增强了机器的语言能力[2]。
1.2 SQL 与NL2SQL
SQL作为管理和操作关系数据库的编程语言,能够执行创建、检索、更新及删除等多种数据库记录管理任务,是信息化社会中的关键技术。然而,对于非专业人员来说,灵活使用SQL进行数据探索存在一定难度。为此,NL2SQL技术应运而生。NL2SQL结合了自然语言处理(NLP) 与数据库查询领域的前沿成果,旨在将用户的自然语言查询请求转化为标准的SQL 查询命令[3]。该技术利用深度学习算法解析自然语言的含义,并准确翻译成SQL代码,极大地提升了非专业用户访问数据库的便捷性和效率。NL2SQL技术的实现流程包括:对用户提供的自然语言输入进行细致分析,明确查询的核心要素;运用词向量表示法、循环神经网络和注意力模型等先进方法解析自然语言序列,捕捉意义关联;基于上述信息生成符合数据库规则的SQL命令,并通过优化措施提升执行效率与准确性。整个NL2SQL架构由前端界面、中间层和目标数据库三部分组成,其中中间层尤为关键,负责将自然语言理解转化为数据库操作指令,促进了用户与数据资源之间的高效沟通[4]。
2 三级公立医院绩效考核系统需求分析
2.1 三级公立医院绩效考核
国家推行三级公立医院绩效考核,旨在全面提升医院管理和医疗服务质量。该考核机制通过构建科学合理的评价体系,涵盖医疗质量、运营效能、持续发展能力及满意度评估等多方面,采用定量与定性指标综合评定医院表现,既反映现状又关注长远发展。同时,绩效考核对医院信息系统提出了高要求,强调数据处理的准确性、完整性和时效性,以支持高效决策。然而,实际操作中面临诸多挑战:传统绩效评估系统依赖人工,效率低下且易出错;医疗信息量庞大复杂,系统难以应对;现有平台功能单一,缺乏灵活性,难以满足个性化需求;且数据分析和图形展示能力不足,无法为管理层提供深入直观的见解。因此,医院须加强信息化建设,提高数据管理水平,以应对绩效考核的挑战。
2.2 基于NL2SQL 技术的绩效考核系统需求
在开发基于自然语言处理和深度学习技术的NL2SQL系统在支持三级公立医院绩效评估的过程中,需要具体而全面地掌握系统的功能需求和非功能性要求。
功能需求方面,系统应能够准确解析并理解用户以自然语言形式提出的查询请求,例如查询“门诊患者平均预约诊疗率”和“门诊次均费用增幅”等具体的绩效考核指标。系统应能利用深度学习技术,自动将这些查询转换成SQL语句,实现对数据库的有效访问。此外,系统还应提供可视化展示功能,以便用户能够直观理解和分析绩效评估结果,并生成详尽的评估报告。为了提升用户体验,系统将采用AI对话界面设计,使用户能够通过自然语言与系统进行交互,例如询问“今年门诊患者的平均预约诊疗率是多少?”系统将自动理解并生成相应的SQL查询,返回准确的结果。
非功能性需求方面,系统需要具备高性能、高安全性和用户友好性等特点。为确保用户查询能够得到及时准确的响应,系统必须具备快速的反应速度和高稳定性。同时,必须实施有效的安全策略,以防止患者和医疗机构的关键数据遭到未经授权的访问或泄露。用户友好性则要求系统界面简洁直观,操作流程简便,确保用户能够轻松上手并高效使用系统进行绩效考核工作。AI对话界面的设计将使得用户无须具备技术背景即可与系统互动,大大简化操作流程,提升用户体验。
3 系统设计
3.1 系统框架设计
构建一个针对三级公立医院的绩效管理系统,该系统在保留通用系统报表数据展现的基础上,运用了基于自然语言处理及深度学习技术的NL2SQL解决方案,特别是SPAN、X-SQL和BERT等模型。通过结合依存句法分析与时间模板,旨在实现用户能够利用自然语言查询医院关键绩效指标(KPIs) 。此系统整合了一个拥有7B规模的开源Llama大型语言模型,以此增强其对于自然语言的理解与生成能力,并采用AI对话界面设计,让用户能够以口语化的方式提出问题并获得数据洞察。整个系统的架构涵盖了前端展示、BI后端服务[5]、接口层、读写服务及计算引擎等多个组成部分,支持接入多种数据库类型,确保信息的即时更新与准确性。此外,该平台将定期同步医院内部的数据记录,并通过离线调度服务自动完成枚举值的计算工作,从而为智能问答功能提供支持。
系统框架设计描述如下。
1) 前端展现及BI模块:提供用户界面,允许用户以自然语言形式输入查询请求,如“本月门诊患者的平均预约诊疗率是多少?”,并以文字或图表界面展示数据。
2) 接口层:作为前端与后端服务之间的桥梁,接收前端的请求并转发至后台服务。智能问答接口:接收用户的自然语言查询,调用智能问答服务获取数据后返回给前端展现;数据同步接口:定期从医院内部数据库同步数据,生成周期性绩效考核报表。
3) 读写服务:处理数据库的读写请求,通过缓存机制提高性能。
4) 智能问答及语义解析:利用NL2SQL技术,理解用户的自然语言查询,转换为数据库查询,获取结果后进行语义解析[6],以自然语言形式返回给用户。
5) SQL 质量检查:这个模块会仔细检查生成的SQL语句,确保每个部分都是正确的。它会验证公式是否正确无误,选择的列是否恰当,以及WHERE条件是否合理等。通过这种方式,可以大大提高最终查询的质量,确保返回给用户的信息是准确且有用的。
6) 计算引擎:接收数据同步接口及读写服务的调用,返回临时查询请求,并生成公立医院绩效考核周期性报表。
具体细节请参见图1。
3.2 数据准备及训练
3.2.1 数据准备阶段
在数据准备阶段,首先需要广泛搜集三级公立医院绩效考核的相关数据。这些数据来源可能包括医院的电子健康记录(EHR) 、医院信息系统(HIS) 、手术麻醉系统、人力资源管理系统(HRP) 以及国家卫生健康委发布的相关考核指标及操作手册等。对每项绩效指标进行详细定义,明确其计算方法,并确定所需数据的具体来源。接着,深入研究医院信息系统(HIS) 的数据库架构,识别各考核指标与数据库中相应字段的对应关系。基于这些信息,构建训练数据集,包括自然语言查询及其对应的SQL查询语句。这些训练样本应涵盖多样化的查询场景和指标组合,以提升模型对不同查询类型的适应能力。
3.2.2 模型训练与优化
在模型训练阶段,选择一个具有7B参数规模的开源Llama大型语言模型作为基础,并搭建训练环境,采用NVIDIA RTX 4090 显卡、Intel Gold 系列CPU 以及Python和PyTorch深度学习框架进行训练。使用预处理后的数据集对模型进行训练,初步训练后,使用测试数据集评估模型效果,将逻辑准确率作为模型评价方式。逻辑准确率指模型预测的SQL语句结果与实际的SQL语句的一致性。根据反馈进一步优化模型,调整模型参数和优化算法,以提高模型性能和预测准确性,如增加训练样本量或调整模型架构,直至达到性能标准[7]。监控损失函数值和准确率等关键性能指标,确保模型有效收敛。随着模型训练轮数的增加,其预测的准确性也随之提高。在训练初期,尤其是当训练轮数不足5轮时,模型在预测SQL语句方面的准确度显著提升。然而,一旦训练轮数超过5轮,准确度的增长速度开始放缓。在经过50轮的训练后,模型在SQL语句预测方面的性能达到了顶峰,准确度高达91.4%。
3.2.3 输出结果处理与验证
在输出结果处理阶段,模型生成的SQL查询语句需要通过计算引擎执行,并将结果解析为易于理解的格式。这可以通过自定义解析函数或现有的解析工具库实现。根据应用需求,对解析后的数据进行格式化处理,如转化为表格或图表,以增强信息的可读性。最后,对输出信息进行验证,确保准确性和可靠性。
3.2.4 迭代更新
将训练完成的模型部署到实际应用场景,如医院绩效评估系统。为确保模型的稳定性和可靠性,定期收集用户反馈,持续进行模型的调整和优化。此外,随着医院数据的更新和考核指标的变化,定期重新训练模型,以适应新的需求。
4 NL2SQL 技术在三级公立医院绩效考核系统中的应用实践
基于以上AI问答模式设计的系统,在三级公立医院绩效考核的实践中,通过自然语言到SQL(NL2SQL) 技术,极大地提升了数据处理的效率和准确性。当用户提出具体查询需求,如“请查询2024年11月相对于2023年11月的门诊次均费用增长百分比”时,系统能够迅速理解并自动转换为SQL查询语句,直接从数据库中提取并计算出所需的数据,如图2所示。
系统也能理解用户不同的统计区间需求,并自动调整统计范围。对于已经过训练的三级公立医院绩效考核指标,如“门诊患者平均预约诊疗率”[8],系统能直接给出用户所需的答案。基于系统对医院数据库的理解,即使对于三级公立医院绩效考核指标以外的HIS数据查询需求,系统也能保持较高的准确性。得益于大型语言模型的优势,系统还能对输出的多个指标值进行比较或趋势分析,并对输出的指标进行初步评价。这种自动化处理方式显著降低了用户使用系统的学习成本,极大提升了数据处理的速度,系统能够即时响应查询请求,无须等待人工分析或开发新的查询工具,从而减少了对专业数据库管理人员的依赖。这种及时性对于医院管理层而言至关重要,因为它使他们能够基于最新数据做出快速决策,进而提高了医院的整体运营效率和服务质量[9-10]。
5 结束语
结果表明,NL2SQL技术在三级公立医院绩效考核体系中的应用取得了显著成效。该技术的应用不仅提升了系统性能、缩短了响应时间,还提高了用户满意度及数据处理的准确性。展望未来,随着技术的持续发展,自然语言SQL(NL2SQL) 技术在医疗领域的应用潜力巨大,特别是在构建智能绩效评估体系方面,这项技术正逐渐成为研究的重点领域之一。
参考文献:
[1] 孙红,黄瓯严.融合LSTM的自然语言转结构化查询语句算法的研究与设计[J].小型微型计算机系统,2023,44(1):63-67.
[2] 姚俊华,汤代佳.基于自然语言处理技术的政务智能搜索引擎应用探索[J].软件工程,2023,26(2):59-62,58.
[3] 郑耀东,李旭峰,陈和平,等.基于中文自然语言的SQL生成综述[J].计算机系统应用,2023,32(12):32-42.
[4] 曹金超.一种基于深度学习的中文自然语言查询生成SQL语句技术研究[D].杭州:浙江大学,2020.
[5] 刘译璟,徐林杰,代其锋.基于自然语言处理和深度学习的NL2SQL技术及其在BI增强分析中的应用[J].中国信息化,2019(11):62-67.
[6] 周浩冉.基于语义路径注意力网络的NL2SQL模型研究及应用[D].上海:东华大学,2023.
[7] 邓臻凯.面向复杂问句的NL2SQL研究[D].南京:东南大学,2022.
[8] 雷红娟,李俊华.三级公立医院绩效考核操作手册及其启示[J].中国卫生标准管理,2021,12(17):23-26.
[9] 陈晔,董四平.我国三级公立医院绩效考核指标体系解读与评析[J].中国卫生政策研究,2020,13(2):19-25.
[10] 张友昌.公立医院绩效考核运营效率指标计算和填报探讨[J].财务与会计,2024(6): 73-74.
【通联编辑:代影】