基于云计算的个人医疗信息推荐方法及系统的制作方法

文档序号:10687402阅读:450来源:国知局
基于云计算的个人医疗信息推荐方法及系统的制作方法
【专利摘要】本发明公开了一种基于云计算的个人医疗信息推荐方法及系统,包括以下步骤:采集用户的个人健康信息并存储至云端,得到用户的个人云;获取用户输入的查询条件;根据查询条件和个人云中的个人健康信息对云端的所有页面集合P={P1,P2,P3,...,Pn}进行聚类;计算第i个簇的信息熵根据第i个簇的信息熵计算第i个簇中的第i+1个页面Pi+1的推荐度CEPR(Pi+1);根据每个页面的推荐度对所有页面进行排序,将推荐度高的页面推荐给用户。本发明产生的有益效果是:通过采集用户个人健康信息建立“个人云”,提供面向个人的健康信息查询入口,提供更可靠的推荐信息,从而提高疾病判断的准确度,为实现个体疾病预测提供了可能。
【专利说明】
基于云计算的个人医疗信息推荐方法及系统
技术领域
[0001] 本发明涉及云计算技术领域,尤其涉及一种基于云计算的个人医疗信息推荐方 法。
【背景技术】
[0002] 我国许多地区的医疗卫生服务与设施还相对比较落后,普遍存在看病难和医疗保 健信息缺乏等问题。如何将一些先进城市的医疗服务资源以及健康保健信息发挥更大的区 域性效用,将是一个非常值得研究和探讨的问题。随着移动通信技术的迅猛发展,移动医疗 (MobileHealth,也称MHealth)已开始成为学术界和医疗行业的一个热门话题。移动医疗旨 在通过使用移动通信技术与设备,以电子医疗应用形式给人们提供所需的医疗信息管理和 医疗事务处理,其最大特点是提供随时随地的、普适的医疗服务(Pervasive H ealthcare)。随着移动智能终端和全球性移动通信网络的普及与覆盖,移动电话为支持面 向区域医疗服务提供了坚实的技术基础,可作为一个有效的服务工具来实现医疗保健信息 的实时交付、访问和存储。
[0003] 然而,目前所提出的基于云计算的智慧医疗的解决方案,大都是面向医院或者区 域性的社区等等(即医院云、社区云等等)。却没有面向个人的解决方案,而这种面向医疗机 构和区域的方案,无疑是无法摆脱传统医疗的依赖的。

【发明内容】

[0004] 本发明要解决的技术问题在于针对现有技术中缺乏面向个人的医疗解决方案的 缺陷,提供一种基于云计算的个人医疗信息推荐方法。
[0005] 本发明解决其技术问题所采用的技术方案是:
[0006] 基于云计算的个人医疗信息推荐方法,包括以下步骤:
[0007] Sl、采集用户的个人健康信息并存储至云端,得到用户的个人云;
[0008] S2、获取用户输入的查询条件;
[0009] S3、根据查询条件和个人云中的个人健康信息对云端的所有页面集合P= (P^P2, P3,...,Pn}进行聚类,得到簇集合T= IThT2J3,...,Tk},其中每个簇中包含若干个页面;
[0010] S4、计算第i个簇Ti( I Si <k)的信息熵與辦;
[0011] S5、根据第i个簇的信息熵_竣,计算第i个簇中的第i + Ι个页面Pi+d^推荐度CEPR (p1+1),计算公式为:
[0015]其中,α为预设参数,cPl为第i个页面匕被点击的次数;
[0012]
[0013]
[0014]
[0016] S6,根据每个页面的推荐度对所有页面进行排序,将推荐度高的页面推荐给用户。
[0017] 本发明所述的方法中,所述Sl中,云端中所有数据存储在分布式数据库或分布式 文件系统中。
[0018] 本发明所述的方法中,所述S3中,采用MapReduce并行运算对云端的所有页面集合 进行聚类。
[0019] 本发明所述的方法中,所述S3中具体利用模糊C聚类算法云端的所有页面集合进 行聚类,具体包括:
[0020] S31、随机选择k个页面. .,Ek}作为k个簇的中心点;
[0021] S32、计算页面P1与E中每个簇的中心点的欧氏距离D1;
[0022] S33、根据欧氏距离D1将页面P1划分到距离最近的簇中;
[0023] S34、调整每个簇的中心点,当确定聚类准则函数收敛时,转至S32;
[0024] 335、当确定聚类准则函数不收敛时,得到聚类后的簇集合了={1'1,1' 2,1'3,...,1\}。
[0025]本发明所述的方法中,所述S32中,计算任意两个页面向量Ps和Pt的欧氏距离D(P S, Pt),具体包括:
[0026] S321、根据查询条件和个人健康信息对页面?1(1<1<11)进行分词,得到表征页面 Pi特征的关键词集合K= IKhK^K3,...,Ki},其中,每个关键词Ki(i<i彡1)在页面Pi中的权 值为Pij(l彡 j彡1),页面Pi的向量表示为Pi={Pii,Pi2,Pi3,…,Pii},Ps={Psi,PS2,Ps3,…, Psa} jPt - {Pti,Pt2,Pit3,· · ·,Ptb},1 €s,t,I,b€ 1;
[0027] S322、将a和b中较小变量对应的页面向量扩充至V个向量分量,并将该页面向量中 原有分量的值保持不变,将扩充分量的值赋为〇,其中V=max(a,b);
[0028] S323、当确定页面向量?3中任意一个向量分量Psr(KrSV)对应的关键词没有出 现在页面向量Pt中时,将向量分量P sr(I<V)对应的关键词在页面向量Ps中的权值置为 〇;
[0029] S324、当确定页面向量?3中任意一个向量分量Psr(KrSV)对应的关键词出现在 页面向量Pt中时,计算向量分量P sr(KrSV)对应的关键词在页面向量Ps中的权值;
[0030] S325、当确定页面向量Ps*每一个向量分量对应的关键词遍历完毕时,计算两个 页面向量Ps和Pt的欧氏距离D(P s,Pt),计算公式为:
[0031] D(Ps1Pt) = V [E(Psi-Pti)2](i = 1,2,···,¥)〇
[0032] 本发明所述的方法中,所述S4具体包括:
[0033] S41、计算第i个簇中每个页面的PR值,得到集合Ti^PRihPRihPRis,. . .,PRiN},其 中N为第i个簇中的页面个数;
[0034] S42、计算第i个簇的信息熵计算公式为:
[0035]
[0036]本发明还提供基于云计算的个人医疗信息推荐系统,所述系统包括:
[0037]采集模块,用于采集用户的个人健康信息并存储至云端,得到用户的个人云;
[0038]获取模块,用于获取用户输入的查询条件;
[0039]聚类模块,用于根据查询条件和个人云中的个人健康信息对云端的所有页面集合 PyPhPhPs,…,pn}进行聚类,得到簇集合T= IT1J2J3,…,Tk},其中每个簇中包含若干 个页面;
[0040] 第一计算模块,用于计算第i个簇T1Q彡i彡k)的信息熵%秘·,
[0041] 第二计算模块,用于根据第i个簇的信息熵&冷,计算第i个簇中的第i+1个页面p1+1 的推荐度CEPR(Pi+1),计算公式为:
[0042]
[0043]
[0044]
[0045] 其中,α为预设参数,cpi为第i个页面Pi被点击的次数;
[0046] 推荐模块,用于根据每个页面的推荐度对所有页面进行排序,将推荐度高的页面 推荐给用户。
[0047] 本发明所述的系统中,所述采集模块中,云端中所有数据存储在分布式数据库中。 [0048]本发明所述的系统中,所述聚类模块中,采用MapReduce并行运算对云端的所有页 面集合进行聚类。
[0049] 本发明所述的系统中,所述聚类模块中具体利用模糊C聚类算法云端的所有页面 集合进行聚类,具体包括:
[0050] 选择单元,用于随机选择k个页面E=^^,^,...,Ek}作为k个簇的中心点;
[0051]计算单元,用于计算页面P1与E中每个簇的中心点的欧氏距离D1;
[0052]划分单元,用于根据欧氏距离D1将页面P1划分到距离最近的簇中;
[0053]调整单元,用于调整每个簇的中心点,当确定聚类准则函数收敛时,返回至计算单 元;
[0054]确定单元,用于当确定聚类准则函数不收敛时,得到聚类后的簇集合T=I^1J2, ?3, ... ,Tk}O
[0055] 本发明所述的系统中,所述计算单元中,计算任意两个页面向量Ps和Pt的欧氏距离 D(Ps,Pt),具体包括:
[0056] 分词部件,用于根据查询条件和个人健康信息对页进行分词,得到 表征页面Pi特征的关键词集合K= {Κι,Κ2,Κ3,...,Ki},其中,每个关键词Ki(KiSl)在页面 Pi中的权值为Pij (1 彡 j彡 1),页面Pi的向量表示为Pi = {Pil,Pi2,Pi3,· · ·,Pu},Ps = {Psi,Ps2, Ps3,· · ·,Psa},Pt - {Ptl,Pt2,Pit3,· · ·,Ptb },K s,t ,I I;
[0057] 扩充部件,用于将a和b中较小变量对应的页面向量扩充至V个向量分量,并将该页 面向量中原有分量的值保持不变,将扩充分量的值赋为〇,其中V=ma X(a,b);
[0058] 第一确定部件,用于当确定页面向量?3中任意一个向量分量Psr(KrSV)对应的 关键词没有出现在页面向量Pt中时,将向量分量Psr(KrSV)对应的关键词在页面向量Ps 中的权值置为〇;
[0059] 第二确定部件,用于当确定页面向量?3中任意一个向量分量Psr(KrSV)对应的 关键词出现在页面向量Pt中时,计算向量分量Psr(KrSV)对应的关键词在页面向量Ps* 的权值;
[0060] 第三确定部件,用于当确定页面向量?3中每一个向量分量对应的关键词遍历完毕 时,计算两个页面向量Ps和Pt的欧氏距离D(Ps,Pt),计算公式为:
[0061] D(Ps1Pt) = V [E(Psi-Pti)2](i = 1,2,···,¥)〇
[0062] 本发明所述的系统中,所述第一计算模块具体包括:
[0063]第一计算单元,用于计算第i个簇中每个页面的PR值,得到集合Ti = {PRii,PRi2, PRi3,. . .,PRiN},其中N为第i个簇中的页面个数;
[0064] 第二计算单元,用于计算第i个簇的信息熵计算公式为:
[0065]
[0066]本发明产生的有益效果是:通过采集用户的个人健康信息建立"个人云",提供面 向个人的健康信息查询入口,提供更可靠的推荐信息,从而提高疾病判断的准确度,并为实 现个体疾病预测提供了可能。
【附图说明】
[0067] 下面将结合附图及实施例对本发明作进一步说明,附图中:
[0068] 图1是本发明实施例的一种基于云计算的个人医疗信息推荐方法的流程示意图;
[0069] 图2是本发明实施例中的医疗云体系结构示意图;
[0070] 图3是本发明实施例中的MHBT分布式数据库架构示意图;
[0071] 图4是本发明的实施例中MHMR逻辑模型示意图;
[0072] 图5是本发明的种基于云计算的个人医疗信息推荐系统的结构示意图。
【具体实施方式】
[0073]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不 用于限定本发明。
[0074]本发明实施例基于云计算的个人医疗信息推荐方法,如图1所示,包括:
[0075] Sl、采集用户的个人健康信息并存储至云端,得到用户的个人云;
[0076]智能穿戴层和手机应用层的信息采集模块,采集用户个人信息,经过传输,储存到 云计算层的个人信息储存中,完成"个人云"的搭建。
[0077]本方案在传统的医疗云、医院云、社区云之外,采取可穿戴智能设备或用户自己手 动输入的方式,长时间记录个人信息,形成个人特质的"个人云",并将"个人云"与传统的 "医院云"、"社区云"与"医疗云"结合起来。
[0078] "医疗云"搜索方案从三个层次一一移动应用层(手机应用层、智能穿戴层)、医疗 服务层、云计算平台层着手实现。其体系结构图如图2所示。
[0079]云计算平台层的三大核心功能就是提供存储、数据和计算服务。存储云基于MHFS (Mobile Health File System)分布式文件系统,为移动医疗平台提供海量的数据存储,也 是云计算平台的基石。数据云采用MHBT(Mobile Health BigTable)分布式存储系统,满足 存储不同类型医学数据的需要。计算云采用结合MapReduce并行编程模式,用于大规模数据 集的并行运算。
[0080] 医疗服务层是整个平台基本架构的中间层,不仅要与手机客户端和云端进行交 互,还要提供包括用户管理服务、数据存储服务和功能性服务等模块。
[0081] 医疗服务层的交互模式,包括了与手机端的交互和云计算层的交互。医疗服务层 在接收到来自手机端的数据请求后,通过与云端的通信接口查询并获取存储在分布式数据 库MHBT或文件系统MHFS中的数据,再按通用的格式作为响应返回给手机端。而手机端获得 来自服务器端的数据后进行解析并映射至视图呈现给用户,若此次数据请求在预设时间内 未获得响应,则视为失败并在客户端予以提示。相应的,用户通过手机端操作输入数据并提 交后,手机端将数据信息经过本地处理后以特定地格式作为请求发到医疗服务层。服务器 端接收到来自客户端的数据后,执行写入操作并调用云端接口把数据持久化到分布式存储 设备中,并将该操作的成败结果以请求响应的形式返回给客户端,由客户端作出用户友好 方面的响应。
[0082] 医疗服务层为应用程序构建数据存储区实体,相当于关系型数据库中的"表"。每 个实体都有唯一的Key与之对应,作为数据操作的索引。实体可以包含一个或多个属性,每 个属性都是一个〈key, ValUe>对,value可以是任何基本的数据类型。应用程序根据功能需 要创建一个实体类别,新增加一条记录相当于新建一个实体对象,并有相应的接口提供 CURD基本数据操作(创建(Create)、更新(Update)、读取(Retrive)和删除(Delete)操作)。 [0083]应用服务层通过云计算平台提供的API将数据对象写入到集群中的存储介质上, 实现数据持久化。并可通过索引执行查询,根据查询条件对数据对象进行过滤并排序,返回 单一类别的实体或实体的Key值。
[0084]移动应用层作为人机交互接口,为普通用户提供医疗应用访问,主要包括应用UI 模块、资源管理模块、应用通信模块、通知管理模块和服务调用模块等。应用UI模块为应用 建立友好的操作视图,包括一些基本的构成元素,如文本、列表、表单、图标等。资源管理模 块主要为应用程序提供所需的静态文件或资源,如配置文件、图形图像、样式文件等。应用 通信模块为手机客户端应用与服务层交互提供通信接口。通知管理模块可以在智能手机的 状态栏显示提示信息,通过调用手机端的接口自定义要显示的信息。服务调用模块主要指 通过手机平台接口调用其他的应用服务,例如手机浏览器、短信息、联系人、地理位置信息、 地图导航等。
[0085]移动应用层最重要的一大模块就是要与服务器端通信,即要获取服务器端的响应 数据,也要向服务器端发出请求提交数据,可以通过蓝牙通讯、射频通讯、移动3G通讯或无 线通讯等通讯方式进行通信。
[0086] S2、获取用户输入的查询条件;
[0087] S3、根据查询条件和个人云中的个人健康信息对云端的所有页面集合P= (P^P2, p3,...,pn}进行聚类,得到簇集合T= IThT2J3,...,Tk},其中每个簇中包含若干个页面;
[0088] S4、计算第i个簇Ti(Ki彡k)的信息熵_^;
[0089]所谓信息熵,是一个数学上颇为抽象的概念,一般把信息熵理解成某种特定信息 的出现概率。一般而言,当一种信息出现概率更高的时候,表明它被传播得更广泛,或者说, 被引用的程度更高。我们可以认为,从信息传播的角度来看,信息熵可以表示信息的价值。 这样子我们就有一个衡量信息价值高低的标准,可以做出关于知识流通问题的更多推论。
[0090] S5、根据第i个簇的信息熵$雖,计算第i个簇中的第i + Ι个页面Pi+j^推荐度CEPR (P1+1),计算公式为:
[0091]
[0092]
[0093]
[0094]其中,α为预设参数,cPl为第i个页面^被点击的次数;
[0095] S6,根据每个页面的推荐度对所有页面进行排序,将推荐度高的页面推荐给用户。
[0096]本发明实施例中,所述Sl中,云端中所有数据存储在分布式数据库或分布式文件 系统中。
[0097] MHBT(Mobile Health BigTable)是一个分布式数据库系统,可搭建在多个服务器 节点组成的集群上,提供高性能、可扩展的数据处理,需要依赖其他服务,比如分布式文件 系统、分布式锁服务等。MHBT以结构化的文件存储多种类型的非关系型数据,通过多级映射 的数据结构实现海量数据的分布式存储。
[0098]与普通的关系型数据库系统单节点的特性相比,MHBT的系统结构显得相当复杂, 包括多节点构成的集群和依赖的服务。从结构上看,MHBT集群包括了两类节点,其一是提供 元数据相关操作及集群内负载均衡处理的Master节点,其二是用于存储数据子表的Tablet 节点,同时还处理来自客户端的数据操作请求。对于依赖的服务,主要包括:(1)进行集群监 控和故障处理的集群调度系统;(2)提供Tab I e t数据和日志存储的分布式文件系统MHFS; (3)协调节点关系和负责Master节点选取的分布式锁服务。(如图3)
[0099] Mobile Health分布式文件系统MHFS可以部署在大量普通硬件之上,实现高可靠 的、高扩展性的海量数据(大文件和大数据模块,大小可达到TB级别甚至更高)存储,是一个 管理大型分布式数据密集型计算的可扩展的分布式文件系统。与分布式编程模式结合,能 更好得为应用程序提供高吞吐量和可容错的数据操作,向大量用户提供高性能服务。
[0100] MHFS由一些互联的节点集群组成,文件和目录驻留在那些节点上。一个MHFS集群 包含一个节点,称为NameNode,该节点管理文件系统名称空间并规范客户端对文件的访问。 另外,Data node (DataNodes)将数据作为块存储在文件中。
[0101] 在MHFS中,一个给定的Name node管理一些文件系统名称空间操作,比如打开、关 闭以及重命名文件和目录。Name node还将数据块映射到Data node,处理来自MHFS客户端 的读写请求。Data node还根据Name node的指令创建、删除和复制数据块。
[0102] 本发明实施例中,所述S3中,采用MapReduce并行运算对云端的所有页面集合进行 聚类。
[0103] MHMR(Moblie Health MapReduce)是一个并行处理海量数据的编程模型,可实现 大规模数据集的并行运算。MHMR将对数据集的操作,交给一个主节点并由其分发给其下的 分支节点共同完成。同时,主节点会周期性的监测分支节点的状态信息,一旦分支节点出现 异常,即该节点的状态标记为dead状态时,原先在该节点上的处理任务将转给其他分支节 点接替。用户应用程序只需通过接口将并行处理任务提交给模型主机,而并行处理、容错处 理、负载均衡等都可交给MHMR来实现。
[0104] MHMR编程模型主要分为Map (映射)和Reduce (化简)两个步骤,基本的流程就是:先 通过Map函数将原始数据进行切割,分成不相关的数据块,再交由计算机集群处理,实现分 布式运算的效果,再经由Reduce函数将结果汇总输出(如图4)。
[0105] 本发明实施例中,所述S3中具体利用模糊C聚类算法云端的所有页面集合进行聚 类,具体包括:
[0106] S31、随机选择k个页面. .,Ek}作为k个簇的中心点;
[0107] S32、计算页面P1与E中每个簇的中心点的欧氏距离D1;
[0108] S33、根据欧氏距离D1将页面P1划分到距离最近的簇中;
[0109] S34、调整每个簇的中心点,当确定聚类准则函数收敛时,转至S32;
[0110] 335、当确定聚类准则函数不收敛时,得到聚类后的簇集合1={1'1,1' 2,1'3,...,1\}。
[0111] 本发明实施例中,还可以采用划分法(包括K-MEANS算法、K-MED0IDS算法、CLARANS 算法)、层次法(包括BIRCH算法、⑶RE算法、CHAMELEON算法等)、密度算法(包括DBSCAN算法、 OPTICS算法、DENCLUE算法等)、图论聚类法、网格算法(包括STING算法、CLIQUE算法、WAVE-CLUSTER 算法) 和模型算法来对云端的所有页面集合进行聚类。
[0112] 本发明实施例中,所述S32中,计算任意两个页面向量PjPPt的欧氏距离D(Ps,P t), 具体包括:
[0113] 欧几里得度量(euclidean metric^也称欧氏距离)是一个通常采用的距离定义, 指在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。
[0114] S321、根据查询条件和个人健康信息对页进行分词,得到表征页面 Pi特征的关键词集合K= IKhK^K3,...,Κι},其中,每个关键词Ki(l<i彡1)在页面Pi中的权 值为Pij(l彡 j彡1),页面Pi的向量表示为Pi={Pii,Pi2,Pi3,…,Pii},Ps={Psi,PS2,Ps3,…, Psa} jPt - {Pti,Pt2,Pit3,· · ·,Ptb},1 €s,t,I,b€ 1;
[0115] S322、将a和b中较小变量对应的页面向量扩充至V个向量分量,并将该页面向量中 原有分量的值保持不变,将扩充分量的值赋为〇,其中V=max(a,b);
[0116] S323、当确定页面向量?3中任意一个向量分量Psr(KrSV)对应的关键词没有出 现在页面向量Pt中时,将向量分量P sr(I<V)对应的关键词在页面向量Ps中的权值置为 〇;
[0117] S324、当确定页面向量?3中任意一个向量分量Psr(KrSV)对应的关键词出现在 页面向量Pt中时,计算向量分量P sr(KrSV)对应的关键词在页面向量Ps中的权值;
[0118] S325、当确定页面向量Ps*每一个向量分量对应的关键词遍历完毕时,计算两个 页面向量Ps和Pt的欧氏距离D(P s,Pt),计算公式为:
[0119] D(Ps1Pt) = V [E(Psi-Pti)2](i = 1,2,···,¥)〇 [0120]本发明实施例中,所述S4具体包括:
[0121] S41、计算第i个簇中每个页面的PR值,得到集合TiHPRihPRmPRis,. . .,PRiN},其 中N为第i个簇中的页面个数;
[0122] S42、计算第i个簇Ti(l<i彡k)的信息熵_#,计算公式为:
[0123]
[0124] PR值,即PageRank,网页的级别技术。取自Google的创始人Larry Page,它是 Google排名运算法则(排名公式)的一部分,用来标识网页的等级/重要性。级别从0到10级, I 〇级为满分。PR值越高说明该网页越受欢迎(越重要)。例如:一个PR值为1的网站表明这个 网站不太具有流行度,而PR值为7到10则表明这个网站非常受欢迎(或者说极其重要)。
[0125] Google关于网页PR值的算法:PR(A) = (l-d)+d(PR(tl)/C(tl) + · · .+PR(tn)/C (trOhPRU)为要计算PR值的A页面,d为阻尼因数,一般为0.85,PR(tl)...PR(tn)分别是各 个链接到你的网站的PR值,C(tl).. .C(tn)分别是各个链接到你的网站的外部链接数量,由 此可以看出对方给你做链接时,并不只是对方网站的PR越高越好,对方网站链出的外部链 接数量也很重要。一个网站的外部链接数越多其PR值就越高;外部链接站点的级别越高(假 如Macromedia的网站链到你的网站上),网站的PR值就越高。PR值最高为10,一般PR值达到 4,就算是一个不错的网站了。
[0126] 本发明还提供基于云计算的个人医疗信息推荐系统,如图5所示,系统包括:
[0127] 采集模块1,用于采集用户的个人健康信息并存储至云端,得到用户的个人云;采 集模块1包括智能穿戴设备和移动终端设备。
[0128] 获取模块2,用于获取用户输入的查询条件;
[0129] 聚类模块3,用于根据查询条件和个人云中的个人健康信息对云端的所有页面集 合?={?1,?2,?3,...几}进行聚类,得到簇集合丁={1' 1,1'2,1'3,...,11{},其中每个簇中包含若 干个页面;
[0130] 第一计算模块4,用于计算第i个簇T1(KiSk)的信息熵%%;
[0131] 第二计算模块5,用于根据第i个簇的信息熵※相,计算第i个簇中的第i + Ι个页面 Pi+j^推荐度CEPR(Pi+1),计算公式为:
[0132]
[0133]
[0134]
[0135] 其中,α为预设参数,cpi为第i个页面Pi被点击的次数;
[0136] 推荐模块6,用于根据每个页面的推荐度对所有页面进行排序,将推荐度高的页面 推荐给用户。
[0137] 本发明实施例中,所述采集模块1中,云端中所有数据存储在分布式数据库中。
[0138] 本发明实施例中,所述聚类模块1中,采用MapReduce并行运算对云端的所有页面 集合进行聚类。
[0139] 本发明实施例中,所述聚类模块3中具体利用模糊C聚类算法云端的所有页面集合 进行聚类,具体包括:
[0140] 选择单元31,用于随机选择k个页面E= {Ei,E2,E3, . . .,Ek}作为k个簇的中心点;
[0141]计算单元32,用于计算页面P1与E中每个簇的中心点的欧氏距离D1;
[0142] 划分单元33,用于根据欧氏距离D1将页面P1划分到距离最近的簇中;
[0143] 调整单元34,用于调整每个簇的中心点,当确定聚类准则函数收敛时,返回至计算 单元;
[0144] 确定单元35,用于当确定聚类准则函数不收敛时,得到聚类后的簇集合T= IT1J2, ?3, ... ,Tk}O
[0145] 本发明实施例中,所述计算单元32中,计算任意两个页面向量PjPPt的欧氏距离D (Ps, Pt ),具体包括:
[0146] 分词部件321,用于根据查询条件和个人健康信息对页面P1(KiSn)进行分词, 得到表征页面Pi特征的关键词集合κ = Ik1,K2,K3,...,Ki },其中,每个关键词Ki (I < 1)在 页面Pi中的权值为Pij (1彡j彡1),页面Pi的向量表示为Pi = {Pii,Pi2,Pi3,...,Pu},Ps = {Psi, Ps2,Ps3,· · ·,Psa},Pt - {Ptl,Pt2,Pit3,· · ·,Ptb},K s,t ,I € a,I;
[0147] 扩充部件322,用于将a和b中较小变量对应的页面向量扩充至V个向量分量,并将 该页面向量中原有分量的值保持不变,将扩充分量的值赋为0,其中V=max(a,b);
[0148] 第一确定部件323,用于当确定页面向量Ps中任意一个向量分量Psr(KrSV)对应 的关键词没有出现在页面向量Pt中时,将向量分量P sr(KrSV)对应的关键词在页面向量 Ps中的权值置为〇;
[0149] 第二确定部件324,用于当确定页面向量Ps中任意一个向量分量Psr(KrSV)对应 的关键词出现在页面向量Pt中时,计算向量分量P sr (KrSV)对应的关键词在页面向量Ps 中的权值;
[0150] 第三确定部件325,用于当确定页面向量Ps*每一个向量分量对应的关键词遍历 完毕时,计算两个页面向量P s和Pt的欧氏距离D(Ps,Pt),计算公式为:
[0151] D(Ps1Pt) = V [E(Psi-Pti)2](i = 1,2,···,¥)〇
[0152] 本发明实施例中,所述第一计算模块4具体包括:
[0153]第一计算单元41,用于计算第i个簇中每个页面的PR值,得到集合Ti= {PRu,PRi2, PRi3,. . .,PRiN},其中N为第i个簇中的页面个数;
[0154] 第二计算单元42,用于计算第i个簇的信息熵蜂^_,计算公式为:
[0155]
[0156] 应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换, 而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
【主权项】
1. 基于云计算的个人医疗信息推荐方法,其特征在于,包括以下步骤: 51、 采集用户的个人健康信息并存储至云端,得到用户的个人云; 52、 获取用户输入的查询条件; 53、 根据查询条件和个人云中的个人健康信息对云端的所有页面集合P= {Pi,P2, P3,. . .,Pn}进行聚类,得到簇集合T= {T^T^Ts,. . .,Tk},其中每个簇中包含若干个页面; 54、 计算第i个簇Ti (1彡i彡k)的信息熵1%分; 55、 根据第i个簇的信息熵織你,计算第i个簇中的第i+1个页面?1+1的推荐度CEPR(Pi+1), 计算公式为:其中,a为预设参数,cPl为第i个页面?4皮点击的次数; 56、 根据每个页面的推荐度对所有页面进行排序,将推荐度高的页面推荐给用户。2. 如权利要求1所述的个人医疗信息推荐方法,其特征在于,所述S1中,云端中所有数 据存储在分布式数据库或分布式文件系统中。3. 如权利要求1所述的个人医疗信息推荐方法,其特征在于,所述S3中,采用MapReduce 并行运算对云端的所有页面集合进行聚类。4. 如权利要求1所述的个人医疗信息推荐方法,其特征在于,所述S3中具体利用模糊C 聚类算法云端的所有页面集合进行聚类,具体包括: 531、 随机选择k个页面. . .,Ek}作为k个簇的中心点; 532、 计算页面&与£中每个簇的中心点的欧氏距离D1; 533、 根据欧氏距离Di将页面Pi划分到距离最近的簇中; 534、 调整每个簇的中心点,当确定聚类准则函数收敛时,转至S32; 535、 当确定聚类准则函数不收敛时,得到聚类后的簇集合T=m,T2,T3,. . .,Tk}。5. 如权利要求3所述的个人医疗信息推荐方法,其特征在于,所述S32中,计算任意两个 页面向量Ps和Pt的欧氏距离D(P s,Pt),具体包括: 5321、 根据查询条件和个人健康信息对页面?1(1<1<1〇进行分词,得到表征页面PJ. 征的关键词集合K= {K^K^fo,. . .,Ki},其中,每个关键词Ki(l$i彡1)在页面Pi中的权值为 Pij(K j彡 1),页面 Pi 的向量表示为 Pi = {Pil,Pi2,Pi3, ? ? ?,Pil},Ps = {Psl,Ps2,Ps3,…,Psa}, Pt - {Pti,Pt2,Pit3,? ? ?,Ptb},K s,t ,K a,1; 5322、 将a和b中较小变量对应的页面向量扩充至V个向量分量,并将该页面向量中原有 分量的值保持不变,将扩充分量的值赋为〇,其中V=max(a,b); 5323、 当确定页面向量?3中任意一个向量分量Psr(l<r<V)对应的关键词没有出现在 页面向量Pt中时,将向量分量P sr(l<r<V)对应的关键词在页面向量Ps中的权值置为0; 5324、 当确定页面向量?3中任意一个向量分量Psr(l<r<V)对应的关键词出现在页面 向量p t中时,计算向量分量psr(l<r<V)对应的关键词在页面向量P s中的权值; S325、当确定页面向量Ps*每一个向量分量对应的关键词遍历完毕时,计算两个页面向 量Ps和Pt的欧氏距离D(Ps,Pt)。6. 如权利要求1所述的个人医疗信息推荐方法,其特征在于,所述S4具体包括: 541、 计算第i个簇中每个页面的PR值,得到集合Ti= {PRi^PRihPRis,. . .,PRiN},其中N 为第i个簇中的页面个数; 542、 计算第i个簇的信息熵&^,计算公式为:7. 基于云计算的个人医疗信息推荐系统,其特征在于,所述系统包括: 采集模块,用于采集用户的个人健康信息并存储至云端,得到用户的个人云; 获取模块,用于获取用户输入的查询条件; 聚类模块,用于根据查询条件和个人云中的个人健康信息对云端的所有页面集合P = {P^P^Ps,. . .,Pn}进行聚类,得到簇集合T= m,T2,T3,. . .,Tk},其中每个簇中包含若干个 页面; 第一计算模块,用于计算第i个簇h (1 <k)的信息熵《嫩; 第二计算模块,用于根据第i个簇的信息熵咏域,计算第i个簇中的第i+1个页面P1+1的推 荐度CEPR(Pi+1),计算公式为:7 其中,a为预设参数,cPl为第i个页面?4皮点击的次数; 推荐模块,用于根据每个页面的推荐度对所有页面进行排序,将推荐度高的页面推荐 给用户。8. 如权利要求7所述的个人医疗信息推荐系统,其特征在于,所述采集模块中,云端中 所有数据存储在分布式数据库或分布式文件系统中。9. 如权利要求7所述的个人医疗信息推荐系统,其特征在于,所述聚类模块中,采用 MapReduce并行运算对云端的所有页面集合进行聚类。10. 如权利要求7所述的个人医疗信息推荐系统,其特征在于,所述聚类模块中具体利 用模糊C聚类算法云端的所有页面集合进行聚类,具体包括: 选择单元,用于随机选择k个页面E={Ei,E2,E3, . . .,Ek}作为k个簇的中心点; 计算单元,用于计算页面&与£中每个簇的中心点的欧氏距离D1; 划分单元,用于根据欧氏距离Di将页面Pi划分到距离最近的簇中; 调整单元,用于调整每个簇的中心点,当确定聚类准则函数收敛时,返回至计算单元; 确定单元,用于当确定聚类准则函数不收敛时,得到聚类后的簇集合 T3, ? ??,Tk}〇11. 如权利要求10所述的个人医疗信息推荐系统,其特征在于,所述计算单元中,计算 任意两个页面向量Ps和Pt的欧氏距离D(p s,pt),具体包括: 分词部件,用于根据查询条件和个人健康信息对页面?1(1<1<11)进行分词,得到表征 页面Pi特征的关键词集合K= ,K2,K3,. . .,Ki},其中,每个关键词Ki(1彡i彡1)在页面Pi中 的权值为Pij(l彡j彡1),页面Pi的向量表示为Pi={Pil,Pi2,Pi3,…,il},Ps={Psl,Ps2, Ps3,? ? ?,Psa},Pt - {Ptl,Pt2,Pit3,? ? ?,Ptb },K S,t ,Ka,1 ; 扩充部件,用于将a和b中较小变量对应的页面向量扩充至V个向量分量,并将该页面向 量中原有分量的值保持不变,将扩充分量的值赋为〇,其中V=max(a,b); 第一确定部件,用于当确定页面向量Ps中任意一个向量分量Psr(l<r<V)对应的关键 词没有出现在页面向量Pt中时,将向量分量Psr(l<r<V)对应的关键词在页面向量Ps中的 权值置为〇; 第二确定部件,用于当确定页面向量Ps中任意一个向量分量Psr(l<r<V)对应的关键 词出现在页面向量Pt中时,计算向量分量Psr (Kr<V)对应的关键词在页面向量Ps中的权 值; 第三确定部件,用于当确定页面向量Ps中每一个向量分量对应的关键词遍历完毕时,计 算两个页面向量Ps和Pt的欧氏距离D(Ps,Pt)。12. 如权利要求7所述的个人医疗信息推荐系统,其特征在于,所述第一计算模块具体 包括: 第一计算单元,用于计算第i个簇中每个页面的PR值,得到集合Ti= {PRii,PRi2, PRi3,...,PRiN},其中N为第i个簇中的页面个数; 第二计算单元,用于计算第i个簇的信息熵與滅,计算公式为:
【文档编号】G06F19/00GK106055908SQ201610411332
【公开日】2016年10月26日
【申请日】2016年6月13日
【发明人】向剑文, 郑文博, 曹旺, 曹思思, 李栋, 莫少聪
【申请人】武汉理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1