中医药数据挖掘系统的构建与应用
2021-08-23王晰李海燕亢力刘静邢雁辉杨策杨乐李小阳雷蕾
王晰 李海燕 亢力 刘静 邢雁辉 杨策 杨乐 李小阳 雷蕾
摘要:目的 针对中医药数据的特点和数据挖掘的需求,开发中医药数据挖掘系统(TCM Miner)。方法 TCM Miner基于中医药术语词表,围绕中医药数据挖掘工作中的数据清洗、集成、变换、选择等需求,分别构建用于数据清洗的数据拆分与合并、正异名替换、文本内容抽取、矩阵转换、中医药文本ETL等功能模块,用于数据挖掘的关联关系挖掘、聚类挖掘、贝叶斯处理等功能模块,及用于中医药翻译的专业文章翻译模块。结果 TCM Miner有效地解决了中医药数据挖掘过程中数据非标准化、个性化等问题,能够辅助科研人员进行数据清洗、数据挖掘及中医药文章翻译,节省了科研人员的时间精力。结论 TCM Miner为中医药数据清洗和分析提供了有效工具,为中医药传承创新提供有效途径。
关键词:中医药;数据挖掘;数据清洗
中图分类号:R2-05;TP311.5 文献标识码:A 文章编号:2095-5707(2021)04-0001-06
DOI: 10.3969/j.issn.2095-5707.2021.04.001 开放科学(资源服务)标识码(OSID):
Construction and Application of TCM Miner
WANG Xi, LI Hai-yan, KANG Li, LIU Jing, XING Yan-hui, YANG Ce, YANG Le, LI Xiao-yang, LEI Lei*
(Institute of Information on Traditional Chinese Medicine, China Academy of Chinese Medical Sciences, Beijing 100700, China)
Abstract: Objective To develop TCM Miner in view of the characteristics of TCM data and the needs of data mining. Methods Based on the vocabulary of TCM terms, focusing on the data cleaning, integration, transformation, selection, and other requirements in the data mining of TCM, TCM Miner built function modules for data cleaning, such as data splitting and merging, positive synonym replacement, text content extraction, matrix conversion, TCM text ETL, etc., functional modules for data mining, such as association relationship mining, cluster mining, Bayesian processing for data mining, and professional article translation modules for TCM translation. Results TCM Miner could effectively solve the problems of non-standardization and personalization of data in the process of data mining of TCM, which can be used to assist researchers in data cleaning, data mining and translation of TCM articles, saving researchers time and energy. Conclusion TCM Miner provides an effective tool for TCM data cleaning and analysis, offering an effective way for TCM inheritance and innovation.
Key words: TCM; data mining; data cleaning
基金項目:中国中医科学院基本科研业务费自主选题(ZZ140304、ZZ140309、ZZ11-106)
第一作者:王晰,E-mail: 3317669472@qq.com
*通讯作者:雷蕾,E-mail: leilei@mail.cintcm.ac.cn
在大数据时代背景下,数据挖掘工作逐步在中医药领域开展起来,目前数据挖掘技术在中医证候归纳、中医方剂、名中医临床经验、中药药性、中药知识图谱、针灸取穴规律、针灸方法选择与应用等领域均有大量应用,为临床诊治疾病、新药开发、医学科研等提供了参考、奠定了基础[1-2]。然而由于中医药数据的不规范性、小样本宽数据蕴含复杂信息的特点[3],中医药数据尤其是医案数据的挖掘和传统的“数据挖掘”有不少差别。目前主流的数据挖掘工具如SPSS、R Software、RapidMiner、Weka等已经广泛应用于自然科学、技术科学、社会科学的各个领域。然而,它们并未考虑中医药数据的特点,因此在中医药数据清洗和挖掘方面有一定局限性。为此,我们开发了针对中医药数据特点的中医药数据挖掘系统(TCM Miner,http://tcmminer. cintcm.com:8023/tcm/index.jsp),它是整合数据清洗工具、数据挖掘工具和中英文翻译工具的软件系统,为中医药科研工作者提供数据清洗、数据挖掘计算及中医药文献翻译服务,既能满足学者对于一般数据的挖掘分析,如文献计量分析、穴位组配规律分析、中药组方规律分析等;又能满足中医药数据特定需求,如辅助中药、证候、穴位名称的规范。TCM Miner于2017年正式发布,已经用于中医药数据挖掘领域。蔺亚东等[4]使用TCM Miner完成了基于数据挖掘的中医治疗糖尿病肾病用药规律分析,可为临床辨治糖尿病肾病提供参考。张伏芝等[5]利用TCM Miner完成了基于中医临床文献的糖尿病周围神经病变用药规律分析,为其中医临床用药和中药新药开发提供参考。王伟斌[6]以古今郁证医案为基础,利用TCM Miner分析挖掘郁证辨治规律,为现代郁证的临床治疗提供参考。
1 中医药数据挖掘系统的构建
1.1 中医药数据挖掘系统总体设计
TCM Miner由页面表现层、模块应用层、功能服务层、核心技术层、数据管理层5个部分组成,见图1。页面表现层为所有用户登录的入口;模块应用层是系统内所有的模块划分及对应的功能模块;功能服务层为系统内用到的所有服务,包括文档服务、搜索服务、关联服务等;核心技术层利用Spring Security构成了核心的权限验证体系,并通过日志审计等操作规范用户行为;数据管理层主要包括TCM Miner后台数据库,存储用户角色权限、日志统计等相关数据。
1.2 中医药数据挖掘系统功能设计
数据挖掘又称为知识发现,即从数据中挖掘知识[7]。常用的数据挖掘方法有关联规则、聚类、分类与预测等[8],其一般流程包括数据处理、数据挖掘和知识发现三部分,具体包括数据清理、数据集成、数据选择、数据变换、数据挖掘、模式评估和知识表示等步骤。目前,数据挖掘工具的功能多集中在数据处理和数据挖掘方面。TCM Miner基于中医药数据的特点,针对数据处理和数据挖掘设计了10个功能模块,见图2。⑴数据清洗:包括数据拆分与合并、频次统计、正异名替换、文本内容抽取、矩阵转换、中医药文本ETL(数据抽取、转换和加载)和专业文章翻译模块。⑵数据挖掘:包括关联关系挖掘、聚类挖掘和贝叶斯处理模块。
1.2.1 数据拆分与合并模块 中医药处方数据多以“草河车、白芷、防风、大黄……”这样的数据格式呈现,在数据分析过程中常常需要对中药名称进行统计、替换、修正。TCM Miner数据处理模块可以实现数据的拆分与合并,便于进一步对术语进行统计与规范。
1.2.2 频次统计模块 对于数据拆分与合并后的结果,可以通过频次统计模块完成数据的统计。此外,对于中药、证候的正异名统计问题,TCM Miner内置中药和证候等中医药术语词表,可以辅助统计输入数据中规范术语的频次。
1.2.3 正异名替换模块 在对中医药文本进行处理时,常常需要将中医药异名替换为正名,工作繁琐又耗时。正异名替换模块内置中医药术语词表,包括2015年版《中华人民共和国药典》、《中华本草》《GB/T 16751.1-1997中医临床诊疗术语 疾病部分》《GB/T 16751.2-1997中医临床诊疗术语 证候部分》《中国中医药学主题词表》(第3版)、2016年版《医学主题词表(中文)》等,支持用户进行中医药数据的规范化处理,提高了数据挖掘的针对性和实用性及中医药术语翻译的准确性。
1.2.4 文本内容抽取模块 中医医案多以大段文本的形式存储,而且夹杂着大量无效信息,不利于数据分析与挖掘。TCM Miner通过自然语言处理技术和内置的中医药术语词表,可以提取处方数据,为进一步分析处方用药规律奠定基础。
1.2.5 矩阵转换模块 数据挖掘领域常用的SPSS、RapidMiner等软件有着强大的计算功能,而中医药处方数据存储格式大多不符合它们的格式要求。TCM Miner的矩阵转换模块可以将一組具有固定分隔符号的数据转换成不同形式的矩阵格式,包括数据矩阵、共现矩阵、边权矩阵等,辅助用户与SPSS、RapidMiner等软件联合使用。此外,对于数据矩阵,该模块还提供逆矩阵计算,可以将数据矩阵转换成固定符号分隔的数据,极大地方便科研工作的回溯。
1.2.6 中医药文本ETL模块 在实际科研工作中,文本或pdf格式的数据无法直接进行数据分析,需要将数据转换为Excel格式,通过中医药文本ETL模块,可以进行txt、doc、docx、xls、xlsx、pdf等多种格式的相互转化。
1.2.7 关联关系挖掘模块 关联关系挖掘可以发现存在于数据中的隐藏关系[9],TCM Miner基于Apriori算法[10],通过设置最小支持度和最小置信度完成关联分析。如使用TCM Miner关联关系挖掘模块分析针灸取穴规律,挖掘不同穴位的组配关系。
1.2.8 聚类挖掘模块 聚类是数据挖掘、模式识别等研究方向的重要研究内容之一[11],把1组个体按照相似性归成若干类别。TCM Miner使用聚类经典算法k-means算法,在使用时需要设置k值,即聚类个数。
1.2.9 贝叶斯处理模块 贝叶斯分类是一种统计学分类方法,可以在已知的样本类型数据中学习一个模型后预测未知类型样本属于特定类的概率[12]。通过贝叶斯处理模块,可以计算中药、证候、症状等要素之间的概率关系。
1.2.10 专业文章翻译模块 中医药翻译对中西文化交流起到非常重要的桥梁作用。目前常用的翻译软件如百度翻译、谷歌翻译、有道翻译等对中医药类型文本的翻译不够准确。TCM Miner内置2016年版《医学主题词表(中文)》,可以有效进行中医药术语的英文翻译工作。
1.3 中医药数据挖掘系统工作流程设计
⑴文件上传:用户将本地文件上传到TCM Miner,上传结束后,页面有上传文件数据的展示。⑵配置参数:不同功能模块有不同的参数配置需求,用户根据需要进行参数设置。⑶结果展示:点击运行,页面会出现运行结果展示。⑷结果下载:用户可以将运算结果下载到本地。
2 中医药数据挖掘系统的应用
文献计量分析可以定量揭示某一学科领域的发展历程、研究热点及发展方向,是中医药数据挖掘领域的主要研究方向之一,主要涉及期刊、主题词/关键词、作者、机构、发表年份、基金等指标的统计挖掘。本文以针灸治疗失眠的文献计量研究为例,展示TCM Miner的应用步骤,见图3。
2.1 文本处理
以中国生物医学文献服务系统为数据来源,并以("入睡和睡眠障碍"[不加权:扩展] AND "针灸疗法"[不加权:扩展])AND 2016-2020[日期]为检索式,得到459条记录,下载为.txt文本格式,然后使用TCM Miner中医药文本ETL模块将文本题录转换成Excel格式,见图4。
2.2 频次统计
对于以固定分隔符分隔的一组数据,例如关键词、作者、机构等,可以通过TCM Miner的数据拆分与合并模块将数据转换为单个词,然后使用频次统计模块对词频进行统计,见图5。对于本身为单个词的数据,例如发表年份、期刊等,可以直接使用TCM Miner的频次统计模块进行统计,见图6。
2.3 主题词/关键词聚类分析
对主题词/关键词聚类分析可以了解一个领域的研究热点。有学者使用SPSS的层次聚类方法对2003-2013年国内生物医学类科技期刊的主题词进行分析,探讨国内可吸入颗粒物PM2.5研究的热点[13]。使用TCM Miner的矩阵转换模块将关键词列转换为数据矩阵,然后输入到SPSS中进行层次聚类分析,见图7。
2.4 作者高频组合分析
使用TCM Miner的关联关系挖掘模块对作者频繁项集和强关联关系进行分析,可以找出作者的高频组合,进一步明确研究团队的情况,见图8。
3 总结与展望
做好中医药数据挖掘工作是中医药传承创新的重要方面,然而费时费力的数据处理让研究者对数据挖掘工作望而却步。一般来说,在整个数据挖掘工作中,至少60%的精力和时间花在数据处理上[14]。中医药数据有着自身的特点,例如中药、证候等同物异名现象广泛存在,中医医案存储形式多为大段文本,规范术语需要耗费大量的人力,给中医药数据挖掘工作带来不便。TCM Miner以中医药术语词表为支撑,形成了服务于中医药领域数据清洗、数据挖掘、文本翻译领域的应用系统,有效帮助科研人员进行中医药数据拆分与合并、频次统计、正异名替换、文本内容抽取、数据转换、数据挖掘、文本翻译等工作,节省了科研人员的时间与精力,为中医药领域的处方用药规律分析、文献分析、针灸取穴规律分析等提供了有效工具。
由于数据的更新速度快,原有的词表需要不断更新,而且随着数据挖掘的算法越来越多,系统功能模块也需要不断增加和优化。TCM Miner将不断完善内置中医药术语词表和功能模块,更好地为中医药科研人员提供服务。
参考文献
[1] 徐静雯,夏菁,邸若虹,等.数据挖掘技术在中医药研究中的应用进展[J].医学综述,2019,25(18):3672-3676,3681.
[2] 曾悅,张君.数据挖掘技术在中医药领域应用[J].中国中医药信息杂志,2012,19(3):99-100.
[3] 朱彦,朱玲,崔蒙.论中医药数据挖掘[J].中华中医药杂志,2016, 31(8):2932-2935
[4] 蔺亚东,张伏芝,雷蕾,等.基于数据挖掘的中医治疗糖尿病肾病用药规律分析[J].中国中医药信息杂志,2020,27(5):102-106.
[5] 张伏芝,蔺亚东,雷蕾,等.基于中医临床文献分析糖尿病周围神经病变的用药规律[J].中国实验方剂学杂志,2020,26(13):199-205.
[6] 王伟斌.基于古今医案的郁证辨治规律研究[D].北京:中国中医科学院,2019.
[7] 胡雪琴,杨寅,崔蒙.关于中医药数据挖掘研究理念变迁的探讨[J].中国中医药图书情报杂志,2017,41(1):12-15.
[8] HAN J W, Kamber M, PEI J.数据挖掘概念与技术(原书第3版)[M].范明,孟小峰,译.北京:机械工业出版社,2012.
[9] 周琳,刘树春.关联规则在中医临床信息分析中的应用[J].中国中医药图书情报杂志,2014,38(4):13-15,21.
[10] 常少春.高效频繁项集发现方法与Apriori的改进[D].镇江:江苏科技大学,2011.
[11] 孙吉贵,刘杰,赵连宇.聚类算法研究[J].软件学报,2008,19(1):48-61.
[12] 邢雁辉,崔蒙,储戟农,等.基于贝叶斯分类算法的治疗中风中药组方研究[J].中西医结合心脑血管病杂志,2015,13(4):471-474.
[13] 李玉洁,雷蕾,刘栩岑,等.2003-2013年国内生物医学类科技期刊可吸入颗粒物相关研究文献分析[J].中国实验方剂学杂志,2015, 21(3):1-5.
[14] 陈亚楠,卓佳,廖廷悟.浅谈数据预处理理论[J].中国证券期货, 2010(9):153.
(收稿日期:2021-02-03)
(修回日期:2021-02-28;编辑:郑宏)