,,,,
花粉过敏症,简称“花粉症(Polinosis)”,是最具代表性的变态反应疾病之一。随着社会工业化进程的加速,花粉症发病率迅速上升,已成为世界性卫生问题,被 WHO 列入21世纪重点防治的三大疾病之一[1-2]。预计在今后20年内,工业化国家50%的人将患上花粉症[3]。花粉症发病率逐年上升,但却难以根治。花粉症患者由于每年与过敏原不可避免地反复接触,疾病不断复发,症状逐渐加重,甚至危及生命[4]。因此,如何提高公民花粉过敏预防意识,为其提供便捷的防治信息,为花粉症患者提供全面而准确的花粉过敏预警信息,为从事变态反应工作的科研人员提供基本的花粉症参考资料等,对有效降低我国花粉症发病率和减少卫生经济负担都具有非常重要的现实意义。笔者结合自然语言处理、光学字符识别(Optical Character Recognition,OCR)、信息可视化、信息检索等技术,构建一个基于花粉过敏的知识服务与过敏预警分析系统,为用户提供知识科普、知识图谱、知识检索和花粉过敏预警等服务。
本文首先对花粉过敏预警系统的相关研究进行评述,并介绍现有的几种花粉过敏预警模型;其次是介绍所构建的花粉症知识图谱与过敏预警分析系统的整体思路和系统架构,并描述本系统整体架构核心功能的实现过程,然后对完成的系统进行评价;最后针对本系统存在的不足就未来研究工作进行展望。
花粉过敏预警分析系统是随着花粉症发病率逐年上升,为了有效降低花粉症的发病率、提高公民预防意识而产生的过敏预警系统。国外花粉过敏预警分析系统起步较早,如美国天气公司(The Weather Company)开发的天气预报系统“The Weather Channel”[5]将花粉分为树木、草本、豚草花粉3类,可预测当日及未来7天某城市的花粉浓度和呼吸舒适度;艾美仕市场研究公司开发的花粉过敏预警网站“Pollen.com”[6]将花粉分为草本和树木两类,可预测美国各地区当日及未来5天花粉过敏的风险程度,并提供过去30天该地区的历史花粉浓度。我国对于花粉症的研究起步较晚,20世纪80年代才开展了第一次大范围的气传致敏花粉分布状况调查工作。我国现有系统主要面临以下问题:鲜见独立花粉过敏预警系统,花粉过敏预警多为其他主题系统的子功能模块,位置较为隐秘,不便于用户查看信息,如上海气象局花粉浓度指数的预报[7];系统服务内容较为单一,仅提供花粉浓度报告、过敏预警或相关预防指南,未向用户提供花粉过敏病因、症状及防治信息,较难提高公民花粉过敏预防意识及为其提供相关便捷信息服务;花粉过敏预警功能不成熟,缺乏精确性,且某些系统并不能保证每日为用户提供花粉过敏预警的信息,严重影响了系统的用户黏性和用户对系统预测结果的信任度。因此开发专业的花粉症知识科普及过敏预警分析系统势在必行。
国内外学者对花粉过敏预测算法研究较少,比较流行的有神经网络模型和多元回归算法。如Puc[8]采用人工神经网络预测日平均桦树花粉浓度,Sánchez-Mesa等[9]利用共生演化神经网络模型预测波兰桦树每日花粉浓度。Kim等人[10]改进了传统的回归模型,开发了一种综合建模方法,首先使用威布尔概率密度函数确定空气传播花粉的最大可能性,然后使用多元回归模型估计每日花粉浓度。该模型成功预测了韩国2010-2012年花粉过敏风险等级,准确率可达85%~95%。吴振玲等[11]使用1999-2004年3-10月天津市河西区铁塔花粉监测数据和气象资料,利用多元线性和非线性回归方法分别建立了全花粉季、分季节(春、夏、秋)、分阶段的花粉预测模型。实验发现,除夏季以外,多元非线性预测模型优于多元线性回归预测模型,分阶段预测方案优于全花粉季和分季节预测方案。
利用神经网络模型预测花粉浓度是当今研究的热点,也是未来研究的方向。由于我国具体情况,如历史花粉浓度数据较少且缺乏连续数据,地域辽阔、植物种类较多,四季分明、南北花期差异较大等原因,本系统采用由中国气象局新技术推广项目“花粉检测预报与服务”资助的天津气象局发布的气传花粉预测模型——分阶段多元非线性预测模型预测每日花粉浓度。该模型是根据整个花粉期的特点,按照花粉量高、低、平稳发展趋势将花粉期分成6个时段分别建立阶段性预测模型即春季花粉开始至高峰期是阶段1,高峰期下降至春季次高峰期为阶段2,次高峰期下降至夏季6 月上旬为阶段3,6月中旬至8月初为阶段4,8月上旬末至秋季高峰期为阶段5,高峰期后下降至花粉季结束为阶段6。阶段性预测模型能够更好地弥补因地区花期差异带来的预测误差,提高预测结果的准确度。
基于我国当前花粉过敏预警系统的不足,参考用户需求和国外花粉过敏预警系统,笔者认为构建花粉症知识图谱与过敏预警分析系统的核心任务“花粉症相关诊疗数据的整合”和“花粉过敏预警模块的构建”。其实现的具体步骤如下。
2.1.1 知识抽取
利用网络爬虫技术、API接口和OCR等技术从期刊、图书和中国公众健康网、中国天气网、百度百科等网站中获取花粉浓度数据、医疗数据、气象数据、地理数据。
2.1.2 数据融合
首先对获取的数据进行分类存储,构建医生、医院、药品和花粉数据库;然后从空间、时间、疾病各维度进行关联分析,构建全国气传致敏花粉地方谱、月份谱、疾病谱,深度挖掘花粉浓度与地区、气候类型、时间之间的关联关系和气传致敏花粉对不同过敏性疾病的阳性反应率和地区、气候对其的影响。
2.1.3 知识图谱
利用构建的医生、医院、药品数据库,在专家辅助构建花粉过敏相关疾病数据模型的基础上,利用可视化技术以知识图谱的形式展示静态无法容纳或无法表现的花粉过敏诊疗知识,为用户提供知识的动态呈现和更为细粒度的检索服务。
2.1.4 过敏预警
结合我国国情,本系统引用天津气象局发布的花粉过敏预测模型,首先利用历史花粉浓度数据和气象数据完成花粉浓度预测,实现花粉过敏预警功能。其次利用历史花粉过敏就诊率和花粉浓度数据,从多方面多角度预测每日花粉浓度,以期提高预测结果准确度。
根据系统设计思路与SOA架构进行系统设计,本系统架构主要分为4个层次(图1)。
图1 花粉过敏预警分析系统总体架构
2.2.1 基础层
基础层是系统构建的基础保障,包括网络系统、服务器、多媒体设备等建设。本系统采用WAMP模式:Windows+Apache+MongoDB+ PHP搭建动态网站。
2.2.2 数据层
数据层是系统数据资源的保障。本系统采用网络爬虫、数据接口等以机器采集为主,人工采集为辅的方式进行多源数据采集。数据层包括用户数据、医疗数据、地理数据、林业数据和气象数据。用户数据指如用户账号和密码、系统推送消息、用户关注等个人信息数据,医疗数据包括与花粉症相关的疾病、医生、医院、药品和检查等数据,地理数据指全国各城市的气候类型和地区分布,林业数据包括气传致敏花粉的基本信息、花粉浓度及与花粉过敏相关的新闻等,气象数据是指各城市的温度、风力、气压、降雨量、湿度等气象信息。
2.2.3 功能层
采集完成的数据将通过资源分析管理机制实现资源的有效管理与展现,具体包括首先对收集到的数据进行标准化处理和分类整合存储,然后对数据进行数据挖掘、关联分析和统计分析,最后以可视化的方式展示分析结果。
2.2.4 应用层
应用层展示系统的主要功能包括检索服务、知识科普、知识地图、气传致敏花粉地图、过敏预警和个性化服务。
本系统主要以花粉过敏相关疾病为核心,实现花粉症知识图谱和过敏预警分析。其核心功能主要包括花粉症知识图谱和气传致敏花粉地图的构建及过敏预警的实现,具体实现过程框架见图2。实现过程分为3个步骤:一是原始数据采集及处理,构建数据库并建立索引;二是功能模块实现,系统的主要功能模块有信息检索、知识图谱模块、花粉地图模块和过敏预警模块;三是用户界面设计和结果可视化。各个步骤及实现过程中需要解决的问题如下。
图2 花粉过敏预警分析系统数据集成流程
在系统首次数据采集中,首先采用人工收集的方式从中国知网和万方数据获取自2000年1月1日至2017年8月31日涉及实地检测花粉量和花粉过敏阳性反应率的相关文献共172篇,鉴于学术资源的动态性,系统根据需要可实现数据的动态增量获取;其次是利用光学字符识别技术(Optical Character Recognition,OCR)将《中国气传花粉和植物彩色图谱》[12]数字化,存储在计算机中作为构建花粉数据库的主要数据源;第三是利用网络爬虫技术,爬取“中国公众健康网”“好大夫在线”和“百度百科”中关于花粉症、过敏性鼻炎、荨麻疹等疾病的概述和相关诊治信息;第四是利用API接口定期采集信息定期采取气象信息、新闻热点等更新速度快的数据,以保证数据的时效性;最后将收集到的数据存储在临时数据库中,经数据清洗、转换、规范化处理、整合后,分类存储,构建医院、医生、药品和花粉数据库并建立索引,以便进行后期的数据挖掘和分析。
3.2.1 信息检索模块的实现
本模块包含综合检索和专题检索两个子模块。前者主要为有明确检索目标的用户提供跨库检索服务,实现对疾病、药物、医生等信息的精确查询;后者主要为有检索目的但无明确检索对象的用户,因此需要系统利用导航模块辅助引导用户进行信息查询。专题检索的用户首先选择进入某一专题数据库,如医生数据库、医院数据库、药品库或花粉库,然后通过数据库的导航模块进行信息查询。如在医院数据库中,用户首先可利用导航模块中的“中国地图”选择医院所在省份,然后通过医院等级筛选医院或通过模糊匹配的方式查询医院。
3.2.2 知识图谱模块的实现
对花粉过敏相关疾病治疗信息的整体把握,有助于提高用户对花粉过敏的认知及预防诊疗的自我意识。如系统地为用户展示花粉症的常见并发症,需要做的相关检查,擅长治疗该疾病的医生、医院及常用药物。由于此类信息过于庞大,简单的图表无法清晰展示,需要利用知识图谱技术动态呈现并管理,静态展示无法容纳或无法表现的枯燥数据,使数据变得绚丽震撼。在知识图谱模块,我们首先构建了一个以花粉过敏相关疾病为核心的数据模型(图3),用以指导知识图谱的构建。该数据模型包括疾病、并发症、药品、检查、药企、医生、医院7类实体,以及检查、治疗、属于、生产4种关系。基于已建立的数据模型和医生、医院、药品数据库,利用图存储技术将数据存储到Neoj4图数据库中进行数据整合,并以知识图谱的形式进行可视化展示。该知识图谱不仅有助于实体关系间的语义推理,还提供智能搜索功能,支持用户对知识图谱进行疾病、实体、关系筛选。同时,配以智能统计分析服务,自动为用户统计知识图谱中各类实体及关系的数量,并推荐与之相关的医生、医院、药品等信息,使用户对相关疾病的治疗信息一目了然。
图3 花粉过敏相关疾病数据模型
3.2.3 气传致敏花粉地图模块的实现
花粉地图模块能够通过跨界数据融合和多维关联分析满足用户尤其是从事变态反应研究的科研人员关于我国气传致敏花粉的散播情况及月份分布情况、各地区的花粉高峰期、各城市花粉量散播趋势、同一疾病对不同花粉类型的过敏阳性反应率有何不同、气传致敏花粉对常见花粉过敏相关疾病的阳性反应率及地区不同对其的影响等的信息需求。
在气传致敏花粉地图模块,我们利用从网络中采集的气象数据和地理数据,从文献中获取的关于花粉采集时间、地点、取样器及方法、气候类型、花粉类型和致敏季节、花粉数量等数据,从空间、时间、疾病3个维度分别构建了全国气传致敏花粉地方谱、月份谱和疾病谱。在地方谱部分,首先根据各省花粉过敏相关文献的数量构建“中国气传致敏花粉文献分布地图”,分省份统计分析各城市各月份的花粉浓度散播趋势及花粉类型分布情况,为花粉过敏基础研究提供科学数据;其次根据我国地理区划,分地区统计各地区典型城市的花粉浓度和气候类型,对全国花粉高峰期进行统计分析,并绘制了全国气传致敏花粉高峰期列表,探究地区分布、气候类型对气传致敏花粉高峰期的影响;最后绘制了“典型城市花粉散播趋势图”及“两城市花粉量比较的复式柱形图”。在月份谱部分,系统以月份为单位统计分析全国各城市各月份的花粉计数,并利用环形图清晰地展示某月全国各城市花粉量所占比例。在疾病谱部分,系统统计了文献中各类花粉对不同花粉过敏疾病的阳性反应率及各城市的地理分区和气候类型,构建了气传致敏花粉疾病谱列表,探究气传致敏花粉与疾病、地区、气候类型之间的关系。
3.2.4 过敏预警
对于花粉过敏预警,用户往往不仅想了解当日的花粉浓度和过敏风险,还希望了解未来几天的花粉浓度及过敏风险以便进行提前预防。针对这一需求,过敏预警模块可以通过过敏追踪、未来展望、文献预测满足用户的需求。首先,系统利用气象数据及历史花粉浓度数据,根据天津气象局发布的气传致敏花粉预测模型预测当日及未来7日的花粉浓度;其次根据中国气象局发布的《中华人民共和国气象行业标准》中的花粉过敏气象指数推测过敏风险,并针对预测结果给出相应建议;最后,系统利用从文献中采集的气传致敏花粉量和历史就诊率构建“历史花粉量散点图”和“历史就诊率面积图”,以辅助和佐证实时过敏追踪和未来展望,提高系统花粉过敏预警的准确率。
系统以B/S架构设计,使用Java语言编写,利用Mysql、Neo4j数据库存储数据,并提供基于Web检索接口,利用Web前端可视化工具D3.js 和ECharts对结果进行可视化处理。
系统主要向用户提供花粉过敏相关疾病知识图谱服务和花粉过敏预警服务。系统首页如图4所示。
图4 花粉过敏预警分析系统首页可视化呈现
花粉过敏相关疾病知识图谱服务是从实体粒度层次对花粉过敏相关疾病的诊疗知识进行可视化展示,分析挖掘各实体之间的语义关系。图5是进入知识图谱界面的可视化结果,为用户呈现了一个包含花粉症、过敏性鼻炎、过敏性哮喘等6种常见花粉过敏相关疾病的知识图谱。系统用不同的颜色代表不同的实体类型,如红色代表花粉过敏相关疾病、绿色代表医生以方便用户清晰查找各类实体,知识图谱中的一个节点代表一个实体,点击节点可见实体的详细信息。在知识图谱上方的搜索部分,用户可自主筛选疾病、实体或关系的类型,系统将返回相应的子图谱。图6是用户检索“疾病-花粉症”、“实体-医生”的可视化呈现结果。此外,系统知识图谱有智能统计分析和推荐功能,系统可自动分析当前知识图谱中各类实体和关系的数量,为用户推荐疾病的常见检查及医生、药物、医院等信息。知识图谱的右上角显示的是分享、保存、放大和缩小功能,支持用户将当前知识图谱分享到微博、QQ等社交软件上进行知识传递与共享。
图5 知识图谱界面可视化呈现
图6 花粉症知识图谱相关医生的检索结果可视化呈现
花粉过敏预警服务包括过敏追踪、未来展望、文献分析预测及过敏新闻4部分。图7是2018年6月24日北京市的花粉过敏预测情况。系统过敏追踪模块既可实时定位当前城市,也可点击过敏追踪右侧的“切换城市”,查看目标地区。在过敏预警界面,系统以生动形象的可视化方式呈现预警结果,增强了系统的观赏性,如以趣味性的象形图表示花粉浓度,用仪表盘展示当日过敏风险,并针对预测结果给出相应建议。
图7 过敏预警界面可视化呈现
随着我国花粉症发病率的持续上升,构建一个能满足用户花粉过敏知识服务和过敏预警的系统势在必行。国内很多学者从理论上论证了花粉过敏预防的重要性,然而却鲜见关于花粉过敏知识服务和过敏预警系统构建的探讨。本文从应用的角度出发设计了一个花粉症知识图谱与过敏预警分析系统,并采用网络爬虫、OCR、信息可视化等技术实现了花粉过敏信息检索、知识科普、知识图谱、花粉地图和过敏预警等功能。虽然取得了一些效果,但仍需要进一步完善。我们将在以后的研究中进一步增强系统对多格式、多来源数据的兼容性,在CNKI数据库和万方数据的基础上,寻求相关气象部门及医院过敏反应科合作,构建更大的花粉浓度数据集、气象信息数据集和花粉过敏历史就诊率数据集,为科研人员提供更全面的参考资料,提高花粉过敏预测的准确性。分阶段多元非线性预测模型虽然能较好地对花粉浓度进行预测,但其准确度只是70%~80%。下一步可以考虑借助大数据,通过构建神经网络模型预测花粉浓度,提高花粉浓度预测的准确率。