
技术摘要:
本发明公开了一种基于多目标需求相似性的家庭饮食推荐方法及设备,方法主要针对家庭成员的健康需求和平衡家庭成员不同的饮食需求。方法包括:采集整个家庭成员的健康信息,角色信息和需求信息;根据家庭成员的信息,建立饮食偏好模型和家庭饮食需求模型;构建食物推荐间 全部
背景技术:
家庭饮食多目标推荐过程中,最主要的是考虑家庭成员的健康和如何平衡家庭成 员不同的饮食需求。传统的基于个人的饮食推荐方法所得到的结果,不能全面的满足家庭 成员的饮食需求。此外,如果家庭中有患疾病的成员,既要保证家庭中的患有疾病成员的饮 食禁忌,又要满足家庭其他成员的饮食需求,食谱的推荐将会更加的复杂。因此,有必要根 据家庭成员的信息来综合考虑,分析家庭的具体情况,侧重考虑家庭成员不同的需求进行 食谱推荐,实现多目标推荐方法。
技术实现要素:
为了解决上述问题,本发明提供一种基于多目标需求相似性的家庭饮食推荐方法 及设备,通过分析家庭的具体情况和家庭成员的饮食需求,给出满足家庭成员饮食需求的 多目标推荐,并对推荐结果进行解释,提供给用户优质的饮食推荐服务。 为了达到上述目的,本发明所采用的技术方案为:一种基于多目标需求相似性的 家庭饮食推荐方法,包括以下步骤: S1,获取家庭成员的基本信息; S2,根据家庭成员的基本信息,确定食谱的类型;若家庭中有患疾病的成员,标记 出不利于疾病的食物,如果疾病是需要长期注意饮食的疾病,则推荐的食谱分为两种,一是 有病患的家庭使用,称为食谱A;二是正常家庭使用,称为食谱B;如果家庭中出现病患是需 要短期注意饮食的疾病,按照正常家庭食谱对待; S3,建立家庭成员饮食偏好模型Preference={(U1,L1,R1) ,(U2,L2,R2),……,(Un, Ln,Rn)}; 其中U1~Un是家庭成员列表,L1~Ln是家庭成员喜爱的食物列表,R1~Rn是家庭成 员对喜爱程度的食物评分列表; S4,根据家庭成员饮食需求信息,构建每一个家庭成员饮食需求模型,并基于家庭 成员饮食需求模型得到家庭饮食需求模型; S5,以家庭成员所期望的食物的最小推荐时间间隔为单位,通过推荐时间间隔函 数和用户偏好漂移函数,控制相同食物的推荐间隔;构建食物推荐间隔的时间函数: 其中t代表当前时间,t1代表食物上次推荐的时间,T代表最小间隔推荐时间,家庭 成员根据自身需求和喜好,设置自己喜爱食物列表的最小推荐间隔时间T; 构建用户偏好漂移函数: 5 CN 111599439 A 说 明 书 2/8 页 其中,D为单位时间内推荐次数阈值,dt为该食物在单位时间内当前推荐次数,若 该食物在用户设置的最小推荐间隔时间中推荐过,则dt的值加1;若该食物未在用户设置的 最小推荐间隔时间中推荐过,则dt的值减1,某食物的Time_p的值越大,则该食物的推荐权 重越大;某食物的Time_p的值越小,则该食物的推荐权重越小; S6,根据S3建立的家庭成员饮食偏好模型,得到满足家庭成员偏好的食物列表F, 对于食物列表F中的每个食物ri,根据食物ri是否满足家庭需求获得需求列表ti,ti以(1,0, 0,……)T形式表示,1表示该食物满足此项家庭需求,0表示该食物不满足此项家庭需求;汇 总ti,获得需求集SetT={ri,ti};对于需求集SetT的每个需求ti,使用TF-IDF算法计算需求 ti的权重wi,根据wi的值,获得食物ri所能满足的前m个需求;得到食物模型R=Top(ti,wi); S7,在S6所得食物模型和S4所得家庭饮食需求模型的基础上进行匹配计算;首先 对食物模型和家庭需求模型中的权重进行归一化,再采用余弦相似度算法,得到食物模型 和家庭饮食需求模型中相似度最高的食物列表;根据需求模型考虑的是有患病家庭成员或 全部为健康家庭成员,针对有患病家庭成员的情况,则所得食物列表为食谱A;针对全部为 健康家庭成员的情况,则所得食物列表为食谱B; S8,获取家庭的地理位置和季节信息,计算相似家庭的食谱A和食谱B的相似度; 食谱A相似度分数计算如下: 其中当两个家庭的疾病禁忌相同时S(i)=1,当两个家庭的疾病禁忌不相同时S (i)=0;N代表本家庭患病成员每日所需摄入的营养元素值,N1代表相似家庭患病成员每日 所需摄入的营养元素值;P(Ai)代表本家庭患病成员与相似家庭患病成员的饮食口味偏好 分数;w1∈(0,1) ,w2∈(0,1),且w1 w2=1; P(Ai)偏好分数的计算是根据Ai的值得到相应的分数,P(Ai)的分数计算函数为: 其中Ai的初始值为0,通过获取S3中建立的家庭成员饮食偏好模型,比较本家庭患 病成员与相似家庭患病成员的饮食偏好,每有一种相同喜爱的食物,则Ai的值加1;即Ai的值 为本家庭患病成员与相似家庭患病成员所喜爱相同食物的数量; 食谱B相似度计算如下: 其中N代表本家庭健康成员每日所需摄入的营养元素值,N2代表相似家庭健康成 员每日所需摄入的营养元素值;P(Bi)代表本家庭健康成员与相似家庭健康成员的饮食口 6 CN 111599439 A 说 明 书 3/8 页 味偏好得分;w1∈(0,1) ,w2∈(0,1),且w1 w2=1; P(Bi)偏好分数的计算是根据Ai的值得到相应的分数,P(Bi)的分数计算函数为: 其中Bi的初始值为0,通过获取S3中建立的家庭成员饮食偏好模型,比较本家庭健 康成员与相似家庭健康成员的饮食偏好,每有一种相同喜爱的食物,则Bi的值加1;即Bi的值 为本家庭健康成员与相似家庭健康成员所喜爱相同食物的数量; 根据相似度分数分别对食谱A和食谱B进行排序,并按照排序结果作为推荐的备选 食谱A和备选食谱B; S9,基于S8相似度计算排序结果,选择符合S5所得时间间隔推荐的食物组成推荐 食谱。 S1中,所述基本信息包括患疾病的饮食禁忌、用户的饮食需求、饮食偏好、烹饪水 平、收入水平以及家庭角色。 S4中,家庭成员饮食需求模型: 其中demand为家庭成员的需求列表,当家庭成员有这项需求时wt的值为1,没有这 项需求时wt的值为0;所述饮食需求是从人体所需营养考虑; 通过获取家庭成员的饮食需求,配每个家庭成员的权重,计算得到家庭饮食需求 模型Ui=Top(dn,an),获取前m个需求,并为每个需求分配权重,i为正整数,最大为m; 家庭饮食需求模型计算如下: 其中w1-wp代表家庭成员的权重值。 S7中,相似度计算方法: 7 CN 111599439 A 说 明 书 4/8 页 其中Iur是满足用户需求的食物列表,ru,c表示需求c在u中的权重,rr,c表示需求c在 食物r中的权重, 和 表示需求c在用户u和食物r中的平均权重。 S8中,采用Min-Max归一化方法: 其中wi是归一化处理前的权值,w’i是归一化处理后的权值,Max(w)代表wi所属模 型中最大的权值,Min(w)代表wi所属模型中最小的权值。 S8中,相似家庭是指相同地域、收入相近且恩格尔系数相似的家庭。 S9中,家庭成员根据推荐结果进行评分,若有不满意需要更换的食物,则通过备选 食谱进行更换;若需要无更换的食物,则推荐成功,得到更新的推荐食谱。 一种家庭饮食推荐设备,包括处理器和存储器,存储器中存储可执行程序,处理器 执行所述可执行程序时,能执行本发明所述的家庭饮食推荐方法。 存储器中还存储有若干家庭中所有家庭成员的基本信息、所有家庭成员的饮食偏 好信息、食物的营养和食用禁忌信息。 基于多目标需求相似性的家庭饮食推荐方法与现有食谱推荐方法相比,具有以下 优点: 本发明在食谱推荐上,不仅考虑了疾病患者和家庭成员的营养信息,还考虑了家 庭成员其他方面的需求,实现了多目标推荐;推荐食谱的饮食结构上,考虑了用户偏好随时 间漂移以及推荐食谱的多样性,通过用户偏好漂移函数和食物推荐间隔的时间函数,防止 用户喜爱的某种食物被不断的推荐,丰富了饮食结构,提升推荐的多样性;本发明根据家庭 患疾病成员及疾病类型,将推荐食谱进行细分,避免备选食谱因可参考的相似家庭食谱数 量过少而降低推荐性能,一定程度上缓解了冷启动问题。 附图说明 图1为家庭饮食的多目标推荐流程图。