一种健康饮食知识图谱构建、食材推荐方法与流程

发布时间:2024-12-13 15:54

推荐健康饮食的食谱,享受美食与健康 #生活乐趣# #生活分享# #生活美学心得# #美物推荐#

一种健康饮食知识图谱构建、食材推荐方法与流程

1.本技术涉及图像处理技术领域,尤其涉及一种健康饮食知识图谱构建、食材推荐方法。

背景技术:

2.随着社会的不断发展,人们生活水平逐渐提高,人们生活节奏也越来越快,快餐文化逐渐普及,随之而来的是人们由于不规律饮食并且不注意饮食健康带来的身体健康问题,现在大部分的健康问题都是因为不注意饮食引起的。
3.现有用户从医生处获得医嘱,短时间内通过听并记忆的方式,并回家转述做饭人员会存在信息遗漏或记忆错误的问题,做饭人员在购菜等环节也存在部分非医嘱食材是否适合食用并不确定的问题,或者现有的用户购买食材时基于用户喜好的食材推荐或者基于大数据的用户食材推荐并不能解决健康饮食问题,有时因为不了解购买食材的属性甚至会影响用户的健康。
4.由此可知,现有技术中在向进行食材推荐时,并没有考虑这个食材是否适合用户,或者无法获知食材是否会对某一疾病产生影响,因此导致推荐的食材不准确,还可能会对存在疾病的用户产生影响,降低用户体验。

技术实现要素:

5.本技术提供了一种健康饮食知识图谱构建、食材推荐方法、装置、设备及介质,用以解决现有技术中能合理有效的为用户推荐对身体有益处的食材,并且不能提醒用户对身体有害的食材,有时甚至推荐的食材会对身体健康造成一定的影响问题。
6.第一方面,本技术提供了一种健康饮食知识图谱构建方法,所述方法包括:
7.获取用于构建健康饮食知识图谱的文本;
8.针对所述文本中保存的疾病,创建所述疾病对应的疾病节点,并根据所述文本中保存的与所述疾病具有关联关系的食材的信息,创建对应的食材节点,并连接所述疾病节点与所述食材节点,生成所述疾病对应的健康子图;
9.针对任一健康子图,若该健康子图与其他疾病对应的其他健康子图包含相同的节点,则将该相同的节点进行融合,生成健康饮食知识图谱。
10.第二方面,本技术提供了一种健康饮食知识图谱构建方法,所述方法包括:
11.获取用于构建健康饮食知识图谱的文本;
12.根据所述文本中保存的疾病和食材的对应信息,判断所述文本中是否存在只对应一种疾病的食材的信息,若存在,则创建对应的节点,并根据所述文本中保存的关联关系连接创建的所述节点;
13.判断所述文本中是否存在对应多种疾病的食材的信息,若存在,则创建该食材节点,并判断对应的疾病节点是否已被创建,若是,则根据所述文本中保存的关联关系连接创建的所述节点,若否,则创建对应的节点,并根据所述文本中保存的关联关系连接创建的所
述节点,生成健康饮食知识图谱。
14.第三方面,本技术还提供了一种健康饮食知识图谱的食材推荐方法,所述方法包括:
15.接收推荐请求,其中所述推荐请求中携带至少一种疾病信息和/或至少一种营养元素信息;
16.若接收到的推荐请求中携带至少一种疾病信息,则根据健康饮食知识图谱中疾病节点与食材节点的连接关系,查找所述疾病信息对应的疾病节点,并获取与所述疾病节点连接的食材节点,根据获取到的食材节点进行食材信息推荐;
17.若接收到的推荐请求中携带至少一种营养元素信息,则根据健康饮食知识图谱中食材节点与营养元素节点的连接关系,查找所述营养元素信息对应的营养元素节点,并获取与所述营养元素节点连接的食材节点,根据获取到的食材节点进行食材信息推荐。
18.第四方面,本技术还提供了一种健康饮食知识图谱构建装置,所述装置包括:
19.获取模块,用于获取用于构建健康饮食知识图谱的文本;
20.第一生成模块,用于针对所述文本中保存的疾病,创建所述疾病对应的疾病节点,并根据所述文本中保存的与所述疾病具有关联关系的食材的信息,创建对应的食材节点,并连接所述疾病节点与所述食材节点,生成所述疾病对应的健康子图;
21.第二生成模块,用于针对任一健康子图,若该健康子图与其他疾病对应的其他健康子图包含相同的节点,则将该相同的节点进行融合,生成健康饮食知识图谱。
22.第五方面,本技术还提供了一种健康饮食知识图谱构建装置,所述装置包括:
23.获取模块,用于获取用于构建健康饮食知识图谱的文本;
24.第三生成模块,用于根据所述文本中保存的疾病和食材的对应信息,判断所述文本中是否存在只对应一种疾病的食材的信息,若存在,则创建对应的节点,并根据所述文本中保存的关联关系连接创建的所述节点;
25.第四生成模块,用于判断所述文本中是否存在对应多种疾病的食材的信息,若存在,则创建该食材节点,并判断对应的疾病节点是否已被创建,若是,则根据所述文本中保存的关联关系连接创建的所述节点,若否,则创建对应的节点,并根据所述文本中保存的关联关系连接创建的所述节点,生成健康饮食知识图谱。
26.第六方面,本技术还提供了一种健康饮食知识图谱的食材推荐装置,所述装置包括:
27.接收模块,用于接收推荐请求,其中所述推荐请求中携带至少一种疾病信息和/或至少一种营养元素信息;
28.第一获取模块,用于若接收到的推荐请求中携带至少一种疾病信息,则根据健康饮食知识图谱中疾病节点与食材节点的连接关系,查找所述疾病信息对应的疾病节点,并获取与所述疾病节点连接的食材节点,根据获取到的食材节点进行食材信息推荐;
29.第二获取模块,用于若接收到的推荐请求中携带至少一种营养元素信息,则根据健康饮食知识图谱中食材节点与营养元素节点的连接关系,查找所述营养元素信息对应的营养元素节点,并获取与所述营养元素节点连接的食材节点,根据获取到的食材节点进行食材信息推荐。
30.第七方面,本技术还提供了一种电子设备,所述电子设备至少包括处理器和存储
器,所述处理器用于执行存储器中存储的计算机程序时实现如上述任一所述健康饮食知识图谱构建或食材推荐方法的步骤。
31.第八方面,本技术还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一所述健康饮食知识图谱构建或食材推荐方法的步骤。
32.由于本技术是直接根据文本中的信息,针对文本中保存的疾病以及与该疾病具有关联关系的食材的信息,创建对应的疾病节点以及食材节点,并连接该疾病节点与食材节点,生成该疾病对应的健康子图,并通过将相同的食材节点融合为一个食材节点的方式,生成健康饮食知识图谱。从而可以在进行食材推荐时,可以根据创建完成的健康饮食知识图谱中查找对应的食材节点,并根据食材节点与其他节点的连接关系,确定目标食材节点,进而准确的推荐食材。
附图说明
33.为了更清楚地说明本技术的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
34.图1为本技术一些实施例提供的一种健康饮食知识图谱构建过程示意图;
35.图2为本技术提供的将相同的节点合并为同一个节点的示意图;
36.图3为本技术提供针对表1及表2的信息创建完成的健康饮食知识图谱示意图;
37.图4为本技术一些实施例提供的一种健康饮食知识图谱构建过程示意图;
38.图5为本技术提供的基于表3创建完成的健康饮食知识图谱的示意图;
39.图6为本技术提供的针对表1最终创建完成的健康饮食知识图谱示意图;
40.图7为本技术一些实施例提供的一种健康饮食知识图谱应用过程示意图;
41.图8为本技术提供的携带的疾病信息为“糖尿病”并且携带与“糖尿病”有益的关联信息时在健康饮食知识图谱中查找到的节点示意图;
42.图9为本技术提供的若推荐请求中携带“碳水化合物”信息在健康饮食知识图谱中查找到的节点示意图;
43.图10为本技术提供的若推荐请求中携带“糖尿病”、“肺炎”以及“腹泻”信息还携带有与“糖尿病”、“肺炎”以及“腹泻”信息有益的关联信息在健康饮食知识图谱中查找到的节点示意图;
44.图11为本技术提供的若推荐请求中携带“糖尿病”、“肺炎”以及“腹泻”信息还携带有与“糖尿病”、“肺炎”以及“腹泻”信息禁忌的关联信息在健康饮食知识图谱中查找到的节点示意图;
45.图12为本技术提供的一种健康饮食知识图谱构建装置结构示意图;
46.图13为本技术提供的一种健康饮食知识图谱构建装置结构示意图;
47.图14为本技术提供的一种健康饮食知识图谱的食材推荐装置结构示意图;
48.图15为本技术提供的一种电子设备。
具体实施方式
49.为了准确根据用户需求为用户推荐食材,本技术提供了一种健康饮食知识图谱构建、食材推荐方法及装置。
50.为了使本技术的目的、技术方案和优点更加清楚,下面将结合附图本技术作进一步地详细描述,显然,所描述的实施例仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
51.为了有效的进行食材推荐,本技术中构建有健康饮食知识图谱,该健康饮食知识图谱的构建过程包括:根据文本中的信息创建健康饮食知识图谱,当电子设备获取到该文本后,针对该文本中保存的疾病的信息,创建该疾病对应的疾病节点,另外,因为该文本中保存有疾病与食材的关联关系的信息,因此电子设备根据文本中保存的疾病与食材的关联关系创建对应的食材节点,并连接该创建的疾病节点和食材节点,生成该疾病对应的健康子图。针对任一健康子图,若该健康子图与其他疾病对应的其他健康子图包含相同的节点,则将该相同的节点进行融合,生成健康饮食知识图谱。由于本技术中创建了健康饮食知识图谱,因此在进行食材推荐的时候,可以根据该健康饮食知识图谱中疾病节点与食材节点之间的连接关系,基于需求推荐相应的食材。
52.图1为本技术一些实施例提供的一种健康饮食知识图谱构建过程示意图,该过程包括以下步骤:
53.s101:获取用于构建健康饮食知识图谱的文本。
54.本技术提供的健康饮食知识图谱构建过程应用于电子设备,该电子设备可以是pc、智能家居设备或者服务器等智能设备,其中该智能家居设备例如可以是智能冰箱、智能电视等设备。
55.为了准确的构建健康饮食知识图谱,电子设备中保存有文本,该文本中保存有疾病和食材的信息,并且还保存有疾病和食材的关联关系,其中该关联关系包括:食材对疾病有益、食材为疾病禁忌等。
56.其中该文本是通过与权威研究机构、权威三甲医院合作获取疾病以及饮食建议,获取方式包括由合作方给出文本、表格、数据库以及书籍的方式。当疾病与食材的信息获取之后,对疾病与食材的信息进行处理。具体的处理过程包括:对于书籍类的信息,先采用ocr文字识别的方式,将印刷的信息转换为电子数据的信息,然后进行人工核对,看转换的电子数据的信息是否准确,当获取到的信息都完成电子化之后,对疾病以及食材的关系的信息,对获取到的信息中包含的各种食材进行区分,梳理食材对疾病有益或者禁忌的信息,最终以文本的方式呈现,该文本可以是表格结构,从而保存到电子设备中。
57.s102:针对所述文本中保存的疾病,创建所述疾病对应的疾病节点,并根据所述文本中保存的与所述疾病具有关联关系的食材的信息,创建对应的食材节点,并连接所述疾病节点与所述食材节点,生成所述疾病对应的健康子图。
58.由于文本中会针对每种疾病,保存与该疾病存在关联关系的食材,因此当电子设备获取到该文本后,根据该文本中保存的疾病的信息,创建对应的疾病节点,另外,因为该文本中保存有与该疾病具有关联关系的食材的信息,因此电子设备根据文本中保存的与该疾病具有关联关系的食材,创建对应的食材节点,并连接该创建的疾病节点和食材节点,生
成该疾病对应的健康子图。其中疾病与食材的关联关系包括:食材对疾病有益、食材为疾病禁忌等,生成健康子图后,在该健康子图中根据疾病与食材的关联关系,保存该疾病节点与食材节点之间的关系。
59.例如文本中保存有“腹泻”的信息,则创建“腹泻”节点,并且根据文本中保存的与“腹泻”具有关联关系的食材为“菠萝”和“牛油果”,创建对应的“菠萝”节点与“牛油果”节点,并连接“腹泻”节点与“菠萝”节点以及“腹泻”节点与“牛油果”节点,并根据文本中保存的“腹泻”与“菠萝”是禁忌的关系以及“腹泻”与“牛油果”是有益的关系,将对应的关联关系保存为连接的节点之间的关系。
60.s103:针对任一健康子图,若该健康子图与其他疾病对应的其他健康子图包含相同的节点,则将该相同的节点进行融合,生成健康饮食知识图谱。
61.采用上述方式创建每个疾病对应的健康子图后,同一食材可能不止和一种疾病有关,也就是说该食材对应的食材节点可能存在于多个健康子图之中。为了简化健康饮食知识图谱,针对任一健康子图,检测该健康子图与其他疾病对应的健康子图中是否存在相同的食材节点,若存在,则将相同的食材节点进行融合,融合为同一个食材节点。并且由于在融合的过程中,疾病节点与食材节点的连接以及保存的关系并不会消失,所以不再修改保存的节点之间的关系。具体的,在将相同的食材节点融合为同一个食材节点时,可以采用共指消解技术。
62.由于本技术是直接根据文本中的信息,针对文本中保存的疾病以及与该疾病具有关联关系的食材的信息,创建疾病节点以及食材节点,并连接的该疾病节点与食材节点,生成该疾病对应的健康子图,并通过将相同的食材节点融合为一个食材节点的方式,生成健康饮食知识图谱。从而可以在进行食材推荐时,可以根据创建完成的健康饮食知识图谱中查找对应的食材节点,并根据食材节点与其他节点的连接关系,确定目标食材节点,进而准确的推荐食材。
63.为了实现健康知识图谱的创建,在上述实施例的基础上,在本技术中,与所述疾病具有关联关系的食材的信息包括:与所述疾病具有有益关系的食材的信息,和/或,与所述疾病具有有害关系的食材的信息。
64.为了进一步方便进行健康饮食知识图谱的查找,在上述各实施例的基础上,在本技术中,所述创建对应的食材节点之后,所述方法包括:
65.判断所述文本中是否记录有所述食材归属的食材类别,若是,创建所述食材归属的食材类别对应的类别节点;
66.所述连接所述疾病节点与所述食材节点包括:
67.连接所述疾病节点与所述类别节点,并连接所述类别节点及所述食材节点。
68.为了方便管理,文本中还保存有食材归属的食材类别,这个食材类别包括一类食材和二类食材,其中一类食材包括:蔬菜类及制品、水果类及制品、海鲜类及制品等,二类食材包括:瓜果类、鱼类、酸奶、奶粉等。
69.而且很可能归属于一类食材或二类食材的所有食材对某一种疾病都是有益或禁忌的关系,因此为了方便进行查找推荐,在本技术中当文本中保存有食材归属的食材类别时,创建食材节点和疾病节点时,还需创建该食材类别节点,并根据文本中保存的疾病与食材类别的关联关连接该食材类别节点和该疾病节点。
70.具体的,若该食材类别为二类食材,则创建该二类食材节点,并根据文本中保存的疾病与二类食材的关联关系以及食材归属于二类食材的关系,连接对应的疾病节点与二类食材节点、二类食材节点与食材节点,也就是生成的该疾病对应的健康子图中将包括该二类食材节点。
71.若该食材类别为一类食材,则创建该一类食材节点以及归属该一类食材的二类食材对应的二类食材节点,并根据文本中保存的疾病与一类食材的关联关系、二类食材归属于一类食材的关系以及食材归属于二类食材的关系,连接对应的疾病节点与一类食材节点、一类食材节点与二类食材节点、二类食材节点与食材节点。
[0072][0073]
表1
[0074]
表1为文本中保存的包含食材类别部分信息,其中该文本中第一列为疾病信息,第二列为关系类型,其中关系类别包括:有益、禁忌,第三列为与该疾病有关的一类食材的信息,第四列为与该疾病有关的二类食材的信息,第五列为与该疾病有关的食材的信息。如表1所示,“加糖酸奶”、“发酵酸奶”是食材,而“酸奶”是二类食材,其中“加糖酸奶”、“发酵酸奶”为对“腹泻”有益的食材,并且表1中保存了“加糖酸奶”、“发酵酸奶”这两种食材归属的二类食材“酸奶”是对“腹泻”有益的食材类别。
[0075]
因此基于上述表1在进行健康饮食知识图谱构建时,针对文本中保存的第一种疾病的信息,创建“腹泻”节点以及与“腹泻”有关的食材节点“发酵酸奶”节点、“加糖酸奶”节点以及“菠萝”节点,并根据表1中保存的第一种疾病的信息,查找“发酵酸奶”、“加糖酸奶”以及“菠萝”归属的二类食材是否存在,由于“发酵酸奶”、“加糖酸奶”归属的二类食材存在且“菠萝”归属的二类食材不存在,所以创建“酸奶”节点,并查询“酸奶”归属的一类食材是否存在,由于“酸奶”归属的一类食材不存在,所以不再创建对应的一类食材节点,并根据表1中第一种疾病的信息中保存的“酸奶”对“腹泻”是有益的、“发酵酸奶”归属于“酸奶”、“加糖酸奶”归属于“酸奶”以及“菠萝”对“腹泻”是禁忌的信息,连接“酸奶”节点与“腹泻”节点、“发酵酸奶”节点与“酸奶”节点、“加糖酸奶”节点与“酸奶”节点以及“菠萝”节点与“腹泻”节点,并将“有益”这一关联关系保存为连接的“酸奶”节点与“腹泻”节点之间的关系。
[0076]
图2为本技术提供的将相同的节点融合为同一个节点的示意图。针对表1中的每一种疾病对应的信息,创建对应的节点,并根据表1中的关联关系,连接对应的节点,此过程与上述过程相同,具体的在此不再赘述,得到的健康饮食知识图谱的结构如图2上半部分所示,即针对表1中的第一种疾病的信息构建的子图图谱如图1上半部分的第一个子图图谱所
示;针对表1中的第二种疾病的信息构建的子图图谱如图2上半部分的第二个子图图谱所示;针对表1中的第三种疾病的信息构建的子图图谱如图2上半部分的第三个子图图谱所示。
[0077]
根据图2上半部分所示可知,存在3个相同的二类食材节点,即“酸奶”节点,存在3个相同的食材节点,即“加糖酸奶”节点,存在3个相同的食材节点,即“发酵酸奶”节点,为了简化该健康饮食知识图谱,将3个“酸奶”节点合并为同一个“酸奶”节点,由于“酸奶”节点已经与“腹泻”节点、“肺炎”节点及“糖尿病”节点相连,并且表2中对应的关联关系已经在健康饮食知识图谱保存,则不再修改保存的连接的节点之间的关系。并针对“加糖酸奶”节点、“发酵酸奶”节点分别采用上述方式进行处理,处理后将会得到图2下半部分所示的健康饮食知识图谱。
[0078]
为了实现健康知识图谱的创建,在上述实施例的基础上,在本技术中,所述方法还包括:
[0079]
针对所述文本中保存的食材,根据该食材中包含的营养元素的信息,创建对应的营养元素节点,并连接该食材对应的食材节点及所述营养元素节点;
[0080]
识别相同的营养元素节点,并将识别到的所述相同的营养元素节点融合,对生成的健康饮食知识图谱进行更新。
[0081]
当电子设备获取到用于构建健康饮食知识图谱的文本后,根据该文本中记录的食材和营养元素的信息,创建对应的节点,并连接创建的节点,由于文本中食材与营养元素的关系是按照不同的食材进行保存的,因此在进行节点创建时,针对文本中任一食材对应的营养元素的信息,创建对应的营养元素节点,并根据营养含量信息表中食材中包含的该营养元素的含量,连接对应的食材节点和营养元素节点。
[0082]
采用上述方法创建食材节点和营养元素节点时,同一营养元素可能与多种食材有关,因此健康饮食知识图谱中可能创建了多个相同的营养元素节点,并不方便使用。为了简化健康饮食知识图谱,检测已经创建的节点中是否存在相同的营养元素节点,若存在,则将相同的营养元素节点进行融合,融合为同一个营养元素节点,并且由于在融合的过程中,营养元素节点与食材节点的连接以及保存的关系以及食材节点与上述创建的食材类别节点或疾病节点之间的连接以及保存的关系并不会消失,所以不再修改保存的节点之间的关系。
[0083]
具体的,将相同的营养元素节点融合为同一个营养元素节点时,可以采用共指消解技术。
[0084]
食材碳水化合物含量豆腐3g牛油果0.5g菠萝10.8g加糖酸奶9.3g发酵酸奶9.3g
[0085]
表2
[0086]
表2为多个表格结构中的一个为文本中的部分信息,表2保存有食材以及营养元素的信息以及食材与营养元素之间的含量关系,其中表2的第一列为食材的信息,第二列为食
材中包含的某种营养元素的含量的信息,表2中的营养元素为碳水化合物,其中营养元素的含量指的是每100g食材中该营养元素的含量。若该食材在不同地域、不同含水量的营养成分不同,则取不同地域、不同含水量情况下该营养元素的含量的平均值。例如,新疆哈密瓜与北京哈密瓜维生素含量不同,则在考虑北京哈密瓜和新疆哈密瓜产量的情况下,取新疆哈密瓜和北京哈密瓜维生素含量的平均值。
[0087]
图3为本技术提供针对表1及表2的信息创建完成的健康饮食知识图谱示意图。以表2中具体记录的信息为例进行说明,针对表2中保存的食材,根据“豆腐”中包含的“碳水化合物”的信息,创建对应的“碳水化合物”节点,并连接“豆腐”对应的“豆腐”节点及“碳水化合物”节点。并且文本中保存有“豆腐”中“碳水化合物”的含量为“3g”,因此电子设备将“3g”保存为连接的“豆腐”节点与“碳水化合物”节点之间的关系。针对表2中其它食材与营养元素的含量的信息,创建对应的营养元素节点,并根据表2中的食材中的营养元素的含量,连接对应的节点,此过程与上述过程相同,具体的在此不再赘述。
[0088]
由于表2中的食材都包含“碳水化合物”,所以“碳水化合物”节点创建多次,为了简化健康饮食知识图谱,将5个“碳水化合物”节点融合为同一个“碳水化合物”节点,由于“碳水化合物”节点已经与“豆腐”节点、“菠萝”节点、“牛油果”节点、“加糖酸奶”节点以及“发酵酸奶”相连,并且表2中对应的含量的信息已经保存,则不再连接对应的节点及保存连接的节点之间的关系,并针对其他的相同的食材节点或营养元素节点分别采用上述方式进行处理,处理后将会得到图3所示的健康饮食知识图谱。
[0089]
为了准确的构建健康饮食知识图谱,电子设备中保存有用于构建健康饮食知识图谱的文本,在上述实施例的基础上,在本技术中,所述获取用于构建健康饮食知识图谱的文本包括:
[0090]
获取包含疾病的饮食建议的数据及包含食材中营养元素的含量的数据;
[0091]
根据预先设置的各类型的实体包含的关键词,识别所述数据中包含的实体及实体的类型,并根据预先设置的关系关键词,识别实体之间的关联关系;
[0092]
根据识别出的实体及实体的类型,以及实体之间的关联关系,生成构建健康饮食知识图谱的文本。
[0093]
该文本是通过与权威研究机构、权威三甲医院合作获取疾病以及饮食建议,获取方式包括由合作方给出文本、表格、数据库以及书籍的方式。当疾病与食材的信息获取之后,对疾病与食材的信息进行处理。具体的处理过程包括:对于书籍类的信息,先采用ocr文字识别的方式,将印刷的信息转换为电子数据的信息,然后进行人工核对,看转换的电子数据的信息是否准确。
[0094]
当获取到的信息都完成电子化之后,根据预先设置的各类型的实体包含的关键词,识别所述数据中包含的实体及实体的类型,并根据预先设置的关系关键词,识别实体之间的关联关系,其中各类型的实体包括疾病实体、食材实体以及营养元素实体,例如数据中存在“菠萝对腹泻是有害的”,可以识别出数据中包含的实体为“菠萝”、“腹泻”,并且可以识别出“菠萝”为食材实体,“腹泻”为疾病实体。并根据预先设置的关系关键词识别出,该疾病实体与该食材实体之间的关联关系为禁忌。
[0095]
根据识别出的实体及实体的类型,以及实体之间的关联关系,生成构建健康饮食知识图谱的文本,最终以文本的方式呈现,该文本可以是以表格结构呈现,可以是一个或多
个表格结构,从而保存到电子设备中。
[0096]
图4为本技术一些实施例提供的一种健康饮食知识图谱构建过程示意图,该过程包括以下步骤:
[0097]
s401:获取用于构建健康饮食知识图谱的文本。
[0098]
本技术提供的健康饮食知识图谱构建过程应用于电子设备,该电子设备可以是pc、智能家居设备或者服务器等智能设备,其中该智能家居设备例如可以是智能冰箱、智能电视等设备。
[0099]
为了准确的构建健康饮食知识图谱,电子设备中保存有文本,该文本中所保存有疾病和食材的信息,并且还保存有疾病和食材的关联关系,其中该关联关系包括:食材对疾病有益、食材为疾病禁忌等。
[0100]
其中该文本是通过与权威研究机构、权威三甲医院合作获取疾病以及饮食建议,获取方式包括由合作方给出文本、表格、数据库以及书籍的方式。当疾病与食材的信息获取之后,对疾病与食材的信息进行处理。具体的处理过程包括:对于书籍类的信息,先采用ocr文字识别的方式,将印刷的信息转换为电子数据的信息,然后进行人工核对,看转换的电子数据的信息是否准确,当获取到的信息都完成电子化之后,对疾病以及食材的关系的信息进行处理,对获取到的信息中包含的各种食材进行区分,梳理食材对疾病有益或者禁忌的信息,最终以文本的方式呈现,该文本可以是表格结构。从而保存到电子设备中。
[0101]
s402:根据所述文本中保存的疾病和食材的对应信息,判断所述文本中是否存在只对应一种疾病的食材的信息,若存在,则创建对应的节点,并根据所述文本中保存的关联关系连接创建的所述节点。
[0102]
当电子设备获取到该文本后,根据该文本中保存的疾病和食材的对应信息,文本中可能存在只对应一种疾病的食材,也可能存在对应至少两种疾病的食材,因此在本技术中首先针对文本中保存的只对应一种疾病的食材的信息进行节点的创建以及节点之间的连接。
[0103]
首先,在文本中筛选出只对应一种疾病的食材的信息,创建对应的疾病节点和食材节点,并根据文本中食材与疾病的关联关系,连接该疾病节点与该食材节点。并将食材与疾病之间的关联关系保存为连接的节点之间的关系。
[0104]
s403:判断所述文本中是否存在对应多种疾病的食材的信息,若存在,则创建该食材节点,并判断对应的疾病节点是否已被创建,若是,则根据所述文本中保存的关联关系连接创建的所述节点,若否,则创建对应的节点,并根据所述文本中保存的关联关系连接创建的所述节点,生成健康饮食知识图谱。
[0105]
当电子设备获取到该文本后,根据该文本中保存的疾病和食材的对应信息,文本中可能存在只对应一种疾病的食材,也可能存在对应至少两种疾病的食材,因此在本技术中针对文本中保存的只对应一种疾病的食材的信息进行节点的创建以及节点之间的连接后,针对文本中存在的对应多种疾病的食材的信息进行节点的创建以及节点之间的连接。
[0106]
首先判断文本中是否存在对应多种疾病的食材信息,如果存在的话,则在文本中筛选出对应多种疾病的食材信息,针对筛选后的信息,创建对应的食材节点,并判断该食材节点对应的疾病节点是否被创建,如果已经被创建,则不再创建该疾病节点,并根据文本中保存的疾病与食材之间的关联关系连接创建的食材节点与疾病节点,如果未被创建,则创
建该食材节点,并根据文本中保存的该疾病与该食材的关联关系,连接创建的疾病节点与创建的食材节点。并将疾病与食材的关联关系保存为连接的节点之间的关系。
[0107]
由于本技术首先筛选出对应一种疾病的食材的信息,创建对应的节点,并根据该文本中保存的关联关系连接创建的节点,再筛选出文本中存在的对应多种疾病的食材的信息,则创建该食材节点,并判断对应的疾病节点是否已被创建,若是,则根据所述文本中保存的关联关系连接创建的所述节点,若否,则创建对应的节点,并根据所述文本中保存的关联关系连接创建的所述节点,生成健康饮食知识图谱。从而可以在进行食材推荐时,可以根据创建完成的健康饮食知识图谱中查找对应的食材节点,并根据食材节点与其他节点的连接关系,确定目标食材节点,进而准确的推荐食材。
[0108]
为了准确的构建健康饮食知识图谱,电子设备中保存有用于构建健康饮食知识图谱的文本,在上述实施例的基础上,在本技术中,所述获取用于构建健康饮食知识图谱的文本包括:
[0109]
获取包含疾病的饮食建议的数据及包含食材中营养元素的含量的数据;
[0110]
根据预先设置的各类型的实体包含的关键词,识别所述数据中包含的实体及实体的类型,并根据预先设置的关系关键词,识别实体之间的关联关系;
[0111]
根据识别出的实体及实体的类型,以及实体之间的关联关系,生成构建健康饮食知识图谱的文本。
[0112]
本实施例描述的文本的获取方式的内容与上述实施例描述的内容相同,在此不再赘述。
[0113]
为了进一步方便进行健康饮食知识图谱的查找,在上述实施例的基础上,在本技术中,所述创建对应的食材节点之后,所述创建对应节点包括:
[0114]
判断所述文本中是否记录有所述食材归属的食材类别,若是,创建所述食材归属的食材类别对应的类别节点、以及对应的疾病节点和食材节点;
[0115]
所述连接创建的所述节点包括:
[0116]
连接所述疾病节点与所述类别节点,并连接所述类别节点及所述食材节点。
[0117]
本实施例中描述的类别节点的创建过程、连接疾病节点与类别节点、类别节点及食材节点的过程以及包含类别信息的表3的内容与上述过程相同,在此不再赘述。
[0118]
具体的,若该食材类别为二类食材,则创建该二类食材节点,并根据文本中保存的疾病与二类食材的关联关系以及食材归属于二类食材的关系,连接对应的疾病节点与二类食材节点、二类食材节点与食材节点。
[0119]
若该食材类别为一类食材,则创建该一类食材节点以及归属该一类食材的二类食材对应的二类食材节点,并根据文本中保存的疾病与一类食材的关联关系、二类食材归属于一类食材的关系以及食材归属于二类食材的关系,连接对应的疾病节点与一类食材节点、一类食材节点与二类食材节点、二类食材节点与食材节点。
[0120]
具体参见上述表1及具体的描述,在这里不再对一类食材和二类食材进行赘述。
[0121]
在本技术中,进行节点的创建时,首先,在文本中筛选出只对应一种疾病的食材的信息,创建对应的疾病节点和食材节点,并根据筛选出的食材在文本中是否存在该食材归属的食材类别决定是否创建对应的食材类别节点,如果文本中存在该食材归属的食材类别,则判断该食材类别对应的食材类别节点是否被创建,若未被创建,则创建该食材类别节
点,并根据文本中食材类别与疾病的关联关系以及食材与食材类别的归属关系,连接该疾病节点与该食材类别节点,以及该食材类别节点与该食材节点;若该食材类别节点已被创建,则不再创建该食材类别节点,并根据文本中食材类别与疾病的关联关系,连接该疾病节点与该食材类别节点,以及该食材类别节点与该食材节点,并将疾病与食材类别之间的关联关系保存为连接的疾病节点与食材类别节点之间的关系;如果文本中不存在该食材归属的食材类别,则根据文本中食材与疾病的关联关系,连接该疾病节点与该食材节点。
[0122]
具体的在食材类别节点进行判断时,若文本中存在食材归属的二类食材,则判断文本中是否存在该二类食材归属的一类食材,若存在,则判断该一类食材对应的一类食材节点是否已被创建,若已被创建,则根据文本中记录的疾病与该一类食材的关联关系,连接疾病节点与一类食材节点,若未被创建,则创建该一类食材节点,并根据文本中记录的疾病与该一类食材的关联关系连接疾病节点与该一类食材节点;若该二类食材归属的一类食材不存在,则判断该二类食材节点是否已被创建,若已被创建,则根据文本中记录的疾病与该二类食材的关联关系连接疾病节点与该二类食材节点,若未被创建,则创建该二类食材节点并根据文本中记录的疾病与该二类食材的关联关系连接疾病节点与该二类食材节点。
[0123]
疾病名称关系类型一类食材二类食材食材腹泻禁忌
ꢀꢀ
菠萝肺炎禁忌
ꢀꢀ
牛油果糖尿病有益
ꢀꢀ
豆腐
[0124]
表3
[0125]
具体的,表3为从表1中筛选出的只对应一种疾病的食材的信息,针对表3中的信息创建对应的疾病节点“腹泻”节点、“肺炎”节点和糖尿病”节点和对应的食材节点“菠萝”节点、“牛油果”节点和“豆腐”节点,由于在表3不存在“菠萝”、“牛油果”与“豆腐”归属的食材类别,则根据表3中记录的“菠萝”对“腹泻”是禁忌的,连接“腹泻”节点与“菠萝”节点,并将表3中“腹泻”与“菠萝”的关联关系保存为连接的“腹泻”节点与“菠萝”节点之间的关系,“肺炎”节点与“牛油果”节点、“糖尿病”节点与“豆腐”节点之间的连接的过程完全一致,在此不再赘述。图5为本技术提供的基于表3创建完成的健康饮食知识图谱的示意图。
[0126]
之后针对文本将对应多种疾病的食材的信息筛选出来,并根据筛选出来的信息,创建对应的食材节点,判断该食材对应的疾病节点是否已经被创建,若未被创建,则创建对应的疾病节点,若已被创建,则不再创建该疾病节点,并检测在文本中是否存在食材对应的食材类别,若存在,则判断该食材类别对应的食材类别节点是否已被创建,若否,则创建该食材类别节点,并根据文本中食材类别与疾病的关联关系,连接对应的疾病节点与该食材类别节点,并将关联关系保存为连接的该疾病节点与食材类别节点。并根据文本中记录的食材归属于食材类别的信息,连接对应的食材类别节点与食材节点。其中若食材类别为二类食材,则判断文本中是否存在二类食材归属的一类食材,若存在,则根据文本中保存的疾病与一类食材的关联关系连接疾病节点与一类食材节点,并将文本中的关联关系保存为连接的节点之间的关系,若不存在,则根据文本中保存的疾病与二类食材的关联关系连接疾病节点与二类食材节点并将文本中的关联关系保存为连接的节点之间的关系。
[0127]
疾病名称关系类型一类食材二类食材食材腹泻有益 酸奶加糖酸奶、发酵酸奶
肺炎有益 酸奶加糖酸奶、发酵酸奶糖尿病禁忌 酸奶加糖酸奶、发酵酸奶
[0128]
表4
[0129]
图6为本技术提供的针对表1最终创建完成的健康饮食知识图谱示意图,在本技术中从表1中筛选出的对应多种疾病的食材的信息以及该食材归属的食材类别以及该食材对应的疾病的信息如表4所示,基于表4可知,“加糖酸奶”这一食材对应多种疾病,首先创建食材节点也就是创建“加糖酸奶”节点,基于已经创建的健康饮食知识图谱,“加糖酸奶”对应的疾病“腹泻”、“肺炎”及“糖尿病”这三个疾病对应的疾病节点均被创建,基于表4可知该“加糖酸奶”存在对应的二类食材即“酸奶”,判断该“酸奶”节点并未被创建,则创建“酸奶”节点,基于表4可知不存在“酸奶”归属的一类食材,则不再创建对应的一类食材节点,并根据表4中“酸奶”对“腹泻”是有益的,连接“腹泻”节点与“酸奶”节点,并将有益这一关联关系保存为对应的“腹泻”节点与“酸奶”节点之间的关系,并根据表4中记录的“加糖酸奶”归属于“酸奶”,连接“酸奶”节点与“加糖酸奶”节点,根据表4中第二种疾病的信息检测该“加糖酸奶”是否存在对应的食材类别,在表4中检测出“加糖酸奶”也存在归属的二类食材即“酸奶”,判断该“酸奶”对应的“酸奶”节点已被创建,在表4中检测出不存在“酸奶”归属的一类食材,则不再创建对应的一类食材节点,并根据表4中“酸奶”对“肺炎”是有益的,连接“肺炎”节点与“酸奶”节点,并将有益这一关联关系保存为对应的“肺炎”节点与“酸奶”节点之间的关系,并针对“发酵酸奶”节点采用上述方式进行处理,处理后将会得到图6所示的健康饮食知识图谱。
[0130]
为了实现健康知识图谱的创建,在上述实施例的基础上,在本技术中,所述方法还包括:
[0131]
针对所述文本中保存的食材,根据该食材中包含的营养元素的信息,创建对应的营养元素节点,并连接该食材对应的食材节点及所述营养元素节点;
[0132]
识别相同的营养元素节点,并将识别到的所述相同的营养元素节点融合,对生成的健康饮食知识图谱进行更新。
[0133]
本实施例描述的对生成的健康饮食知识图谱进行更新的内容与上述实施例描述的内容相同,在此不再赘述。
[0134]
为了有效的进行食材推荐,本技术中构建有健康饮食知识图谱,该健康饮食知识图谱的构建过程包括:根据用于构建健康饮食知识图谱的文本中的信息创建健康饮食知识图谱,当电子设备获取用于构建健康饮食知识图谱的文本后,针对该文本中保存的疾病和食材的对应信息,判断改文本中是否存在只对应一种疾病的食材的信息,若存在,则创建对应的节点,并根据改文本中保存的关联关系连接创建的所述节点,判断改文本中是否存在对应多种疾病的食材的信息,若存在,则创建该食材节点,并判断对应的疾病节点是否已被创建,若是,则根据所述文本中保存的关联关系连接创建的所述节点,若否,则创建对应的节点,并根据所述文本中保存的关联关系连接创建的所述节点,生成健康饮食知识图谱。由于本技术中创建了健康饮食知识图谱,因此在进行食材推荐的时候,可以根据该健康饮食知识图谱中疾病节点与食材节点之间的连接关系,基于需求推荐相应的食材。
[0135]
为了进行有效的食材推荐,本技术中构建完成的健康饮食知识图谱的应用过程包括:准确根据用户需求为用户推荐食材,本技术提供了一种健康饮食知识图谱的应用方式。
由于本技术中创建了健康饮食知识图谱,因此在进行食材推荐的时候,可以根据该健康饮食知识图谱中疾病节点与食材节点之间的连接关系,根据需求推荐与疾病相关的食材。
[0136]
图7为本技术一些实施例提供的一种健康饮食知识图谱应用过程示意图,该过程包括以下步骤:
[0137]
s701:接收推荐请求,其中所述推荐请求中携带至少一种疾病信息和/或至少一种营养元素信息。
[0138]
当需要进行食材推荐时,可以向电子设备发送推荐请求,因为在进行食材推荐时,应用比较广的是智能冰箱,下述实施例将以电子设备为智能冰箱进行说明。具体的在进行食材推荐时,智能冰箱可以展示进行推荐请求选择的页面,可以根据需求选择携带有疾病信息和营养元素信息中至少一种的推荐请求。
[0139]
智能冰箱接收到该推荐请求后,识别该推荐请求中包含的信息,根据该信息进行推荐。
[0140]
s702:若接收到的推荐请求中携带至少一种疾病信息,则根据健康饮食知识图谱中疾病节点与食材节点的连接关系,查找所述疾病信息对应的疾病节点,并获取与所述疾病节点连接的食材节点,根据获取到的食材节点进行食材信息推荐。
[0141]
若接收到的推荐请求中携带至少一种疾病信息,则首先获取每种疾病信息,针对每种疾病信息,在健康饮食知识图谱中查找该疾病信息对应的疾病节点,并查找与该疾病节点存在关联关系的食材节点,即与该疾病节点连接的食材节点。
[0142]
当针对每种疾病信息,获取到对应的疾病节点连接的食材节点后,则可以根据获取到的食材节点,进行食材信息的推荐。
[0143]
s703:若接收到的推荐请求中携带至少一种营养元素信息,则根据健康饮食知识图谱中食材节点与营养元素节点的连接关系,查找所述营养元素信息对应的营养元素节点,并获取与所述营养元素节点连接的食材节点,根据获取到的食材节点进行食材信息推荐。
[0144]
若接收到的推荐请求中携带至少一种营养元素信息,则首先获取每种营养元素信息,针对每种营养元素信息,在健康饮食知识图谱中查找该营养元素信息对应的营养元素节点,并查找与该营养元素节点存在关系的食材节点,即与该营养元素节点连接的食材节点。
[0145]
当针对每种营养元素信息,获取到对应的营养元素节点连接的食材节点后,则可根据获取到的食材节点,进行食材信息的推荐。
[0146]
若接收到的推荐请求中携带一种疾病信息,则首先获取该疾病信息,针对该疾病信息,在健康饮食知识图谱中查找该疾病信息对应的疾病节点,并查找与该疾病节点存在关联关系的食材节点,即与该疾病节点连接的食材节点。
[0147]
具体的,在根据获取到的食材节点,进行食材信息的推荐,一般推荐请求会携带待推荐的食材信息与疾病的关系,若该推荐请求中不携带该疾病的关联信息,或携带的关联信息为全部关联,则根据查找到的食材节点,推荐对应的食材信息。在推荐时,可以针对查找到的食材节点与疾病的关联关系,在不同的区域推荐,或者在推荐时,显示食材信息与疾病的关联关系。
[0148]
若该推荐请求中携带与疾病有益的关联信息,则在查找到的食材节点中根据保存
的疾病节点与食材节点之间的关系,确定以有益关系与该疾病节点连接的食材节点,并推荐对应的食材信息。
[0149]
若该推荐请求中携带该疾病禁忌的关联信息,则在查找到的食材节点中根据保存的疾病节点与食材节点之间的关系,确定以禁忌关系与该疾病节点连接的食材节点,并推荐对应的食材信息。
[0150]
以推荐请求中携带的疾病信息为“糖尿病”信息为例进行说明,首先针对该糖尿病信息,在健康饮食知识图谱中查找该糖尿病信息对应的糖尿病节点,并查找与该糖尿病节点存在关联关系的食材节点“豆腐”节点、“加糖酸奶”节点以及“发酵酸奶”节点,若该推荐请求中不携带与“糖尿病”的关联信息,或携带的关联信息为全部关联,则根据查找到的食材节点“豆腐”节点、“加糖酸奶”节点以及“发酵酸奶”节点,推荐食材“豆腐”、“加糖酸奶”以及“发酵酸奶”,图8为本技术提供的携带的疾病信息为“糖尿病”并且携带与“糖尿病”有益的关联信息时在健康饮食知识图谱中查找到的节点示意图。若该推荐请求中携带有与疾病有益的关联信息,则在查找到的食材节点中根据保存的疾病节点与食材节点之间的关系,确定以有益关系与该疾病节点连接的食材节点为“豆腐”节点,并推荐的“豆腐”;若该推荐请求中携带该疾病禁忌的关联信息,则在查找到的食材节点中根据保存的疾病节点与食材节点之间的关系,确定以禁忌关系与该疾病节点连接的食材节点为“加糖酸奶”节点以及“发酵酸奶”节点,并推荐的“加糖酸奶”以及“发酵酸奶”。
[0151]
若接收到的推荐请求中携带一种营养元素信息,则首先获取该营养元素信息,针对该营养元素信息,在健康饮食知识图谱中查找该营养元素对应的营养元素节点,并查找与该营养元素节点存在关系的食材节点,即与营养元素节点连接的食材节点。在查找到的食材节点中根据保存的食材节点与营养元素节点之间的关系,将食材按照食材中该营养元素的含量由高到低排列,并按照食材中营养元素含量由高到低的排列推荐对应的食材信息。
[0152]
图9为本技术提供的若推荐请求中携带“碳水化合物”信息在健康饮食知识图谱中查找到的节点示意图,以推荐请求中携带的营养元素信息为“碳水化合物”为例进行说明,首先获取该“碳水化合物”信息,针对该“碳水化合物”信息,在健康饮食知识图谱中查找该“碳水化合物”节点,并查找与该“碳水化合物”节点存在关系的“豆腐”节点、“菠萝”节点、“牛油果”节点、“加糖酸奶”节点以及“发酵酸奶”节点。在查找到的食材节点中根据保存的食材节点与营养元素节点之间的关系,将食材按照食材中该营养元素的含量由高到低排列,排列结果依次为:“菠萝”、“加糖酸奶”、“发酵酸奶”、“豆腐”、“牛油果”,并按照“菠萝”、“加糖酸奶”、“发酵酸奶”、“豆腐”、“牛油果”这样的排列结果推荐对应的“菠萝”、“加糖酸奶”、“发酵酸奶”、“豆腐”、“牛油果”信息。
[0153]
若接收到的推荐请求中携带至少两种疾病信息,则首先获取所携带的每种疾病信息,针对任一疾病信息,在健康饮食知识图谱中查找该疾病信息对应的疾病节点,并查找与疾病节点存在关联关系的食材节点,即与疾病节点连接的食材节点。
[0154]
若该推荐请求中不携带与疾病的关联信息,或携带的关联信息为全部关联,则在查找到的食材节点中根据保存的疾病节点与食材节点之间的关系,分别确定以有益关系以及以禁忌关系与疾病连接的食材节点;并判断与该疾病以有益关系连接的食材节点是否为其余至少一种疾病以禁忌关系连接的食材节点,若是,则去除该食材节点,最终确定对所有
所携带的疾病信息都有益的食材信息,根据确定的对所有所携带的疾病信息都有益的食材信息以及以禁忌关系与疾病连接的食材节点,分别推荐对应的食材信息。
[0155]
若该推荐请求中携带与疾病有益的关联信息,则针对每种疾病,分别确定与该疾病以有益关系和禁忌关系连接的食材节点;并判断与该疾病以有益关系连接的食材节点是否为其余至少一种疾病以禁忌关系连接的食材节点,若是,则去除该食材节点,最终确定对所有所携带的疾病信息都有益的食材信息,并推荐对应的食材信息。并且在推荐食材信息时,按照有益的疾病由多到少的排序依次显示推荐。
[0156]
若该推荐请求中携带疾病禁忌的关联信息,在查找到的食材节点中根据保存的疾病节点与食材节点之间的关系,确定以禁忌关系与该疾病节点连接的食材节点,并推荐对应的食材信息。
[0157]
以推荐请求中携带的疾病信息为“糖尿病”、“肺炎”以及“腹泻”信息为例进行说明,首先获取所携带的“糖尿病”、“肺炎”以及“腹泻”信息,针对“糖尿病”、“肺炎”以及“腹泻”信息,在健康饮食知识图谱中查找“糖尿病”、“肺炎”以及“腹泻”对应的“糖尿病”节点、“肺炎”节点以及“腹泻”节点,并查找“糖尿病”节点、“肺炎”节点以及“腹泻”节点存在关联关系的食材节点“豆腐”节点、“牛油果”节点、“菠萝”节点、“加糖酸奶”节点以及“发酵酸奶”节点。图10为本技术提供的若推荐请求中携带“糖尿病”、“肺炎”以及“腹泻”信息还携带有与“糖尿病”、“肺炎”以及“腹泻”信息有益的关联信息在健康饮食知识图谱中查找到的节点示意图,图11为本技术提供的若推荐请求中携带“糖尿病”、“肺炎”以及“腹泻”信息还携带有与“糖尿病”、“肺炎”以及“腹泻”信息禁忌的关联信息在健康饮食知识图谱中查找到的节点示意图,若该推荐请求中不携带该疾病的关联信息,或携带的关联信息为全部关联,则在查找到的食材节点中根据保存的疾病节点与食材节点之间的关系,确定以有益关系以及以禁忌关系与疾病连接的食材节点,其中以有益关系与疾病连接的食材节点为“豆腐”节点、“加糖酸奶”节点以及“发酵酸奶”节点,以禁忌关系与疾病连接的食材节点为“牛油果”节点、“菠萝”节点、“加糖酸奶”节点以及“发酵酸奶”节点,其中以有益关系与疾病连接的食材节点“豆腐”节点、“加糖酸奶”节点以及“发酵酸奶”节点与以禁忌关系与疾病连接的食材节点“牛油果”节点、“菠萝”节点、“加糖酸奶”节点以及“发酵酸奶”节点有相同的食材节点“加糖酸奶”节点以及“发酵酸奶”节点,即“加糖酸奶”以及“发酵酸奶”对“肺炎”以及“腹泻”有益但是对“糖尿病”禁忌,因此在以有益关系与疾病连接的食材节点中去除掉相同的食材节点得到对所有携带的疾病信息有益的食材为“豆腐”及对携带的所有疾病禁忌的食材“牛油果”、“菠萝”、“加糖酸奶”以及“发酵酸奶”,并分别推荐对应的“豆腐”以及对应的“牛油果”、“菠萝”、“加糖酸奶”与“发酵酸奶”;若该推荐请求中携带与疾病有益的关联信息,则推荐在以有益关系与疾病连接的食材节点“豆腐”节点、“加糖酸奶”节点以及“发酵酸奶”节点中去除掉相同的食材节点“加糖酸奶”节点以及“发酵酸奶”之后的食材节点对应的食材信息:“豆腐”;若该推荐请求中携带疾病禁忌的关联信息,在查找到的食材节点中根据保存的疾病节点与食材节点之间的关系,确定以禁忌关系与该疾病节点连接的食材节点“牛油果”节点、“菠萝”节点、“加糖酸奶”节点以及“发酵酸奶”节点,并推荐对应的食材信息:“牛油果”、“菠萝”、“加糖酸奶”以及“发酵酸奶”。
[0158]
若接收到的推荐请求中携带至少两种营养元素信息,则首先获取所携带的营养元素信息,针对营养元素信息,在健康饮食知识图谱中查找营养元素对应的营养元素节点,并
查找与营养元素节点存在关系的食材节点,即与营养元素节点连接的食材节点。
[0159]
因为不同食材同一营养元素的含量不同,所以可以根据每种营养元素对每种食材在该营养元素进行评分,并保存每种食材在每种营养元素下的评分,具体的该每种食材在每种营养元素下的评分可以保存为评分矩阵。
[0160]
由于推荐请求中携带的营养元素可能为需求营养元素也可能为拒绝营养元素,因此针对任一营养元素,分别确定与该营养元素连接的食材节点,并确定该食材节点在该营养元素下的评分,若推荐请求中该营养元素为需求营养元素,则该食材节点对应的食材信息的分数增加该评分;若推荐请求中该营养元素为拒绝营养元素,则该食材节点对应的食材信息的分数减少该评分。根据每种食材信息对应该至少两种营养元素信息对应的分数,按照分数从大到小的顺序对食材信息进行推荐。
[0161]
其中,根据每种营养元素对每种食材在该营养元素进行评分时,针对任一营养元素,根据所有食材中该营养元素的含量的平均值,以及每种食材包含该营养元素的含量,确定每种食材在该营养元素的评分,食材中若不包含该营养元素,则该营养元素的含量为0。营养元素的含量较该平均值越大,评分越高,否则,评分越低。
[0162]
若接收到的推荐请求中携带一种疾病信息以及至少两种营养元素信息,则首先获取所携带的疾病信息,针对疾病信息,在健康饮食知识图谱中查找疾病信息对应的疾病节点,并查找与疾病节点存在关系的食材节点,即与疾病节点连接的食材节点。在查找到的食材节点中根据保存的疾病节点与食材节点之间的关系,确定以有益关系与该疾病节点连接的食材节点对应的食材,并对确定的对疾病有益的食材,确定该食材在该营养元素下的评分,若推荐请求中该营养元素为需求营养元素,则该食材的分数增加该评分;若推荐请求中该营养元素为拒绝营养元素,则该食材的分数减少该评分,根据每种食材信息对至少两种营养元素信息计算对应的分数,按照分数从大到小的顺序对食材信息进行推荐。
[0163]
若接收到的推荐请求中携带至少两种疾病信息以及至少两种营养元素信息,则首先获取所携带的疾病信息,针对疾病信息,在健康饮食知识图谱中查找疾病信息对应的疾病节点,并查找与疾病节点存在关系的食材节点,即与疾病节点连接的食材节点。针对每种疾病,分别确定与该疾病以有益关系和禁忌关系连接的食材节点;并判断与该疾病以有益关系连接的食材节点是否为其余至少一种疾病以禁忌关系连接的食材节点,若是,则去除该食材节点,最终确定对所有所携带的疾病信息都有益的食材信息,并确定该食材信息在该营养元素下的评分,若推荐请求中该营养元素为需求营养元素,则该食材信息的分数增加该评分;若推荐请求中该营养元素为拒绝营养元素,则该食材信息的分数减少该评分,根据每种食材信息对至少两种营养元素信息计算对应的分数,按照分数从大到小的顺序对食材信息进行推荐。
[0164]
其中,食材信息的具体的推荐方式在此不做限制。
[0165]
图12为本技术提供的一种健康饮食知识图谱构建装置结构示意图,该装置包括:
[0166]
获取模块1201,用于获取用于构建健康饮食知识图谱的文本;
[0167]
第一生成模块1202,用于针对所述文本中保存的疾病,创建所述疾病对应的疾病节点,并根据所述文本中保存的与所述疾病具有关联关系的食材的信息,创建对应的食材节点,并连接所述疾病节点与所述食材节点,生成所述疾病对应的健康子图;
[0168]
第二生成模块1203,用于针对任一健康子图,若该健康子图与其他疾病对应的其
他健康子图包含相同的节点,则将该相同的节点进行融合,生成健康饮食知识图谱。
[0169]
在一种可能的实施方式中,所述获取模块1201,具体用于获取包含疾病的饮食建议的数据及包含食材中营养元素的含量的数据;根据预先设置的各类型的实体包含的关键词,识别所述数据中包含的实体及实体的类型,并根据预先设置的关系关键词,识别实体之间的关联关系;根据识别出的实体及实体的类型,以及实体之间的关联关系,生成构建健康饮食知识图谱的文本。
[0170]
在一种可能的实施方式中,所述第一生成模块1202,具体还用于判断所述文本中是否保存有所述食材归属的食材类别,若是,创建所述食材归属的食材类别对应的类别节点;连接所述疾病节点与所述类别节点,并连接所述类别节点及所述食材节点。
[0171]
本技术还包括处理模块:
[0172]
具体用于针对所述文本中保存的食材,根据该食材中包含的营养元素的信息,创建对应的营养元素节点,并连接该食材对应的食材节点及所述营养元素节点;识别相同的营养元素节点,并将识别到的所述相同的营养元素节点融合,对生成的健康饮食知识图谱进行更新。
[0173]
图13为本技术提供的一种健康饮食知识图谱构建装置结构示意图,该装置包括:
[0174]
获取模块1301,用于获取用于构建健康饮食知识图谱的文本;
[0175]
第三生成模块1302,用于根据所述文本中保存的疾病和食材的对应信息,判断所述文本中是否存在只对应一种疾病的食材的信息,若存在,则创建对应的节点,并根据所述文本中保存的关联关系连接创建的所述节点;
[0176]
第四生成模块1303,用于判断所述文本中是否存在对应多种疾病的食材的信息,若存在,则创建该食材节点,并判断对应的疾病节点是否已被创建,若是,则根据所述文本中保存的关联关系连接创建的所述节点,若否,则创建对应的节点,并根据所述文本中保存的关联关系连接创建的所述节点,生成健康饮食知识图谱。
[0177]
在一种可能的实施方式中,所述获取模块1301,具体用于获取包含疾病的饮食建议的数据及包含食材中营养元素的含量的数据;根据预先设置的各类型的实体包含的关键词,识别所述数据中包含的实体及实体的类型,并根据预先设置的关系关键词,识别实体之间的关联关系;根据识别出的实体及实体的类型,以及实体之间的关联关系,生成构建健康饮食知识图谱的文本。
[0178]
在一种可能的实施方式中,所述第三生成模块1302,具体还用于判断所述文本中是否保存有所述食材归属的食材类别,若是,创建所述食材归属的食材类别对应的类别节点;连接所述疾病节点与所述类别节点,并连接所述类别节点及所述食材节点。
[0179]
本技术还包括处理模块:
[0180]
具体用于针对所述文本中保存的食材,根据该食材中包含的营养元素的信息,创建对应的营养元素节点,并连接该食材对应的食材节点及所述营养元素节点;识别相同的营养元素节点,并将识别到的所述相同的营养元素节点融合,对生成的健康饮食知识图谱进行更新。
[0181]
图14为本技术提供的一种健康饮食知识图谱的食材推荐装置结构示意图,该装置包括:
[0182]
接收模块1401,用于接收推荐请求,其中所述推荐请求中携带至少一种疾病信息
和/或至少一种营养元素信息;
[0183]
第一获取模块1402,用于若接收到的推荐请求中携带至少一种疾病信息,则根据健康饮食知识图谱中疾病节点与食材节点的连接关系,查找所述疾病信息对应的疾病节点,并获取与所述疾病节点连接的食材节点,根据获取到的食材节点进行食材信息推荐;
[0184]
第二获取模块1403,用于若接收到的推荐请求中携带至少一种营养元素信息,则根据健康饮食知识图谱中食材节点与营养元素节点的连接关系,查找所述营养元素信息对应的营养元素节点,并获取与所述营养元素节点连接的食材节点,根据获取到的食材节点进行食材信息推荐。
[0185]
由于本技术是直接根据文本和文本中的信息,创建疾病节点、食材节点及营养元素节点,并根据文本中疾病与食材的关联关系连接的疾病节点与食材节点,并根据文本保存的食材的营养元素,连接对应的食材节点和营养元素节点,并保存对应的连接关系。从而可以在进行食材推荐时,可以根据创建完成的健康饮食知识图谱中查找对应的食材节点,并根据食材节点与其他节点的连接关系,确定目标食材节点,进而准确的推荐食材。
[0186]
图15为本技术提供的一种电子设备结构示意图,在上述各实施例的基础上,本发明实施例还提供了一种电子设备,如图15所示,包括:处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信。
[0187]
所述存储器1503中存储有计算机程序,当所述程序被所述处理器1501执行时,使得所述处理器1501执行如下步骤:
[0188]
获取用于构建健康饮食知识图谱的文本;
[0189]
针对所述文本中保存的疾病,创建所述疾病对应的疾病节点,并根据所述文本中保存的与所述疾病具有关联关系的食材的信息,创建对应的食材节点,并连接所述疾病节点与所述食材节点,生成所述疾病对应的健康子图;
[0190]
针对任一健康子图,若该健康子图与其他疾病对应的其他健康子图包含相同的节点,则将该相同的节点进行融合,生成健康饮食知识图谱。
[0191]
进一步地,所述处理器1501,还用于获取包含疾病的饮食建议的数据及包含食材中营养元素的含量的数据;根据预先设置的各类型的实体包含的关键词,识别所述数据中包含的实体及实体的类型,并根据预先设置的关系关键词,识别实体之间的关联关系;根据识别出的实体及实体的类型,以及实体之间的关联关系,生成构建健康饮食知识图谱的文本。
[0192]
进一步地,所述处理器1501,还用于判断所述文本中是否记录有所述食材归属的食材类别,若是,创建所述食材归属的食材类别对应的类别节点;连接所述疾病节点与所述类别节点,并连接所述类别节点及所述食材节点。
[0193]
在上述各实施例的基础上,本发明实施例还提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信。
[0194]
所述存储器中存储有计算机程序,当所述程序被所述处理器1501执行时,使得所述处理器执行如下步骤:
[0195]
获取用于构建健康饮食知识图谱的文本;
[0196]
根据所述文本中保存的疾病和食材的对应信息,判断所述文本中是否存在只对应一种疾病的食材的信息,若存在,则创建对应的节点,并根据所述文本中保存的关联关系连接创建的所述节点;
[0197]
判断所述文本中是否存在对应多种疾病的食材的信息,若存在,则创建该食材节点,并判断对应的疾病节点是否已被创建,若是,则根据所述文本中保存的关联关系连接创建的所述节点,若否,则创建对应的节点,并根据所述文本中保存的关联关系连接创建的所述节点,生成健康饮食知识图谱。
[0198]
进一步地,所述处理器1501,还用于获取包含疾病的饮食建议的数据及包含食材中营养元素的含量的数据;根据预先设置的各类型的实体包含的关键词,识别所述数据中包含的实体及实体的类型,并根据预先设置的关系关键词,识别实体之间的关联关系;根据识别出的实体及实体的类型,以及实体之间的关联关系,生成构建健康饮食知识图谱的文本。
[0199]
进一步地,所述处理器1501,还用于判断所述文本中是否记录有所述食材归属的食材类别,若是,创建所述食材归属的食材类别对应的类别节点;连接所述疾病节点与所述类别节点,并连接所述类别节点及所述食材节点。
[0200]
在上述各实施例的基础上,本发明实施例还提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信。
[0201]
所述存储器中存储有计算机程序,当所述程序被所述处理器1501执行时,使得所述处理器执行如下步骤:
[0202]
接收推荐请求,其中所述推荐请求中携带至少一种疾病信息和/或至少一种营养元素信息;
[0203]
若接收到的推荐请求中携带至少一种疾病信息,则根据健康饮食知识图谱中疾病节点与食材节点的连接关系,查找所述疾病信息对应的疾病节点,并获取与所述疾病节点连接的食材节点,根据获取到的食材节点进行食材信息推荐;
[0204]
若接收到的推荐请求中携带至少一种营养元素信息,则根据健康饮食知识图谱中食材节点与营养元素节点的连接关系,查找所述营养元素信息对应的营养元素节点,并获取与所述营养元素节点连接的食材节点,根据获取到的食材节点进行食材信息推荐。
[0205]
上述服务器提到的通信总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0206]
通信接口用于上述电子设备与其他设备之间的通信。
[0207]
存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0208]
上述处理器可以是通用处理器,包括中央处理器、网络处理器(network processor,np)等;还可以是数字指令处理器(digital signal processing,dsp)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬
件组件等。
[0209]
在上述各实施例的基础上,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行时实现如下步骤:
[0210]
所述存储器中存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行如下步骤:
[0211]
获取用于构建健康饮食知识图谱的文本;
[0212]
针对所述文本中保存的疾病,创建所述疾病对应的疾病节点,并根据所述文本中保存的与所述疾病具有关联关系的食材的信息,创建对应的食材节点,并连接所述疾病节点与所述食材节点,生成所述疾病对应的健康子图;
[0213]
针对任一健康子图,若该健康子图与其他疾病对应的其他健康子图包含相同的节点,则将该相同的节点进行融合,生成健康饮食知识图谱。
[0214]
进一步地,所述获取用于构建健康饮食知识图谱的文本包括:
[0215]
获取包含疾病的饮食建议的数据及包含食材中营养元素的含量的数据;
[0216]
根据预先设置的各类型的实体包含的关键词,识别所述数据中包含的实体及实体的类型,并根据预先设置的关系关键词,识别实体之间的关联关系;
[0217]
根据识别出的实体及实体的类型,以及实体之间的关联关系,生成构建健康饮食知识图谱的文本。
[0218]
进一步地,与所述疾病具有关联关系的食材的信息包括:与所述疾病具有有益关系的食材的信息,和/或,与所述疾病具有有害关系的食材的信息。
[0219]
进一步地,所述创建对应的食材节点之后,所述方法包括:
[0220]
判断所述文本中是否记录有所述食材归属的食材类别,若是,创建所述食材归属的食材类别对应的类别节点;
[0221]
所述连接所述疾病节点与所述食材节点包括:
[0222]
连接所述疾病节点与所述类别节点,并连接所述类别节点及所述食材节点。
[0223]
进一步地,所述方法还包括:
[0224]
针对所述文本中保存的食材,根据该食材中包含的营养元素的信息,创建对应的营养元素节点,并连接该食材对应的食材节点及所述营养元素节点;
[0225]
识别相同的营养元素节点,并将识别到的所述相同的营养元素节点融合,对生成的健康饮食知识图谱进行更新。
[0226]
在上述各实施例的基础上,本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有可由处理器执行的计算机程序,当所述程序在所述处理器上运行时,使得所述处理器执行时实现如下步骤:
[0227]
获取用于构建健康饮食知识图谱的文本;
[0228]
根据所述文本中保存的疾病和食材的对应信息,判断所述文本中是否存在只对应一种疾病的食材的信息,若存在,则创建对应的节点,并根据所述文本中保存的关联关系连接创建的所述节点;
[0229]
判断所述文本中是否存在对应多种疾病的食材的信息,若存在,则创建该食材节点,并判断对应的疾病节点是否已被创建,若是,则根据所述文本中保存的关联关系连接创
建的所述节点,若否,则创建对应的节点,并根据所述文本中保存的关联关系连接创建的所述节点,生成健康饮食知识图谱。
[0230]
进一步地,所述获取用于构建健康饮食知识图谱的文本包括:
[0231]
获取包含疾病的饮食建议的数据及包含食材中营养元素的含量的数据;
[0232]
根据预先设置的各类型的实体包含的关键词,识别所述数据中包含的实体及实体的类型,并根据预先设置的关系关键词,识别实体之间的关联关系;
[0233]
根据识别出的实体及实体的类型,以及实体之间的关联关系,生成构建健康饮食知识图谱的文本。
[0234]
进一步地,所述创建对应节点包括:
[0235]
判断所述文本中是否记录有所述食材归属的食材类别,若是,创建所述食材归属的食材类别对应的类别节点、以及对应的疾病节点和食材节点;
[0236]
所述连接创建的所述节点包括:
[0237]
连接所述疾病节点与所述类别节点,并连接所述类别节点及所述食材节点。
[0238]
进一步地,所述方法还包括:
[0239]
针对所述文本中保存的食材,根据该食材中包含的营养元素的信息,创建对应的营养元素节点,并连接该食材对应的食材节点及所述营养元素节点;
[0240]
识别相同的营养元素节点,并将识别到的所述相同的营养元素节点融合,对生成的健康饮食知识图谱进行更新。
[0241]
在上述各实施例的基础上,本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有可由处理器执行的计算机程序,当所述程序在所述处理器上运行时,使得所述处理器执行时实现如下步骤:
[0242]
接收推荐请求,其中所述推荐请求中携带至少一种疾病信息和/或至少一种营养元素信息;
[0243]
若接收到的推荐请求中携带至少一种疾病信息,则根据健康饮食知识图谱中疾病节点与食材节点的连接关系,查找所述疾病信息对应的疾病节点,并获取与所述疾病节点连接的食材节点,根据获取到的食材节点进行食材信息推荐;
[0244]
若接收到的推荐请求中携带至少一种营养元素信息,则根据健康饮食知识图谱中食材节点与营养元素节点的连接关系,查找所述营养元素信息对应的营养元素节点,并获取与所述营养元素节点连接的食材节点,根据获取到的食材节点进行食材信息推荐。
[0245]
由于本技术是直接根据文本和文本中的信息,创建疾病节点、食材节点及营养元素节点,并根据文本中疾病与食材的关联关系连接的疾病节点与食材节点,并根据文本保存的食材的营养元素,连接对应的食材节点和营养元素节点,并保存对应的连接关系。从而可以在进行食材推荐时,可以根据创建完成的健康饮食知识图谱中查找对应的食材节点,并根据食材节点与其他节点的连接关系,确定目标食材节点,进而准确的推荐食材。
[0246]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0247]
对于系统/装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0248]
本技术是参照根据本技术的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0249]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0250]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0251]
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0252]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。

网址:一种健康饮食知识图谱构建、食材推荐方法与流程 https://www.yuejiaxmz.com/news/view/465413

相关内容

一种基于知识图谱的健康饮食推荐方法研究
健康饮食领域知识图谱构建及推荐系统研究
健康饮食书籍推荐(健康食谱书籍推荐)
食品知识图谱在菜品搭配推荐中的应用实践
食疗养生健康知识? 商业知识书籍推荐?
养生健康饮食书籍推荐,养生健康饮食书籍推荐
基于知识图谱的健康指导食谱推荐,Journal of Web Semantics
健康养生食谱书推荐,健康养生食谱书推荐
健康减肥食谱一日三餐 推荐两种饮食减肥食谱
健康饮食宝典:均衡饮食食谱推荐

随便看看