CN110931110A - 一种饮食推荐方法及其设备 - Google Patents
一种饮食推荐方法及其设备 Download PDFInfo
- Publication number
- CN110931110A CN110931110A CN201911242876.6A CN201911242876A CN110931110A CN 110931110 A CN110931110 A CN 110931110A CN 201911242876 A CN201911242876 A CN 201911242876A CN 110931110 A CN110931110 A CN 110931110A
- Authority
- CN
- China
- Prior art keywords
- dish
- user
- diet
- dishes
- record
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H20/00—ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
- G16H20/60—ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to nutrition control, e.g. diets
Landscapes
- Health & Medical Sciences (AREA)
- Nutrition Science (AREA)
- Engineering & Computer Science (AREA)
- Epidemiology (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Primary Health Care (AREA)
- Public Health (AREA)
- Medical Treatment And Welfare Office Work (AREA)
Abstract
本发明实施例涉及电子信息技术领域,公开了一种饮食推荐方法及其设备。其中,饮食推荐方法包括:获取菜品种类及每种菜品的菜品信息;获取用户的饮食信息,所述饮食信息包括饮食注意事项、饮食记录和操作记录;根据所述每种菜品的菜品信息以及所述用户的饮食注意事项、饮食记录和操作记录,计算所述每种菜品的推荐值;根据所述推荐值向所述用户推荐菜品。通过上述方法,本发明实施例能够为用户提供饮食参考,该饮食参考能够在满足用户喜好的同时防止用户食用到不利于自身健康的食物。
Description
技术领域
本发明实施例涉及电子信息技术领域,特别是涉及一种饮食推荐方法及其设备。
背景技术
随着生活水平的提高,人们对健康的关注度越来越高,而饮食作为人们日常生活中不可或缺的一部分,会对健康产生较大的影响。若饮食合理,则能够提高人们身体的免疫力,预防疾病产生;若饮食不当,则容易引发疾病,甚至导致疾病加重。但发明人在实现本发明的过程中发现:目前,用户饮食缺少饮食参考,随意性较强,大多数情况下仅凭个人喜好饮食,容易食用到不利于自身健康的食物,造成身体不适。
发明内容
本发明实施例旨在提供一种饮食推荐方法及其设备,能够为用户提供饮食参考,该饮食参考能够在满足用户喜好的同时防止用户食用到不利于自身健康的食物。
为解决上述技术问题,本发明实施例采用的一个技术方案是:提供一种饮食推荐方法,包括:
获取菜品种类及每种菜品的菜品信息;
获取用户的饮食信息,所述饮食信息包括饮食注意事项、饮食记录和操作记录;
根据所述每种菜品的菜品信息以及所述用户的饮食注意事项、饮食记录和操作记录,计算所述每种菜品的推荐值;
根据所述推荐值向所述用户推荐菜品。
可选地,所述菜品信息包括:菜品数量和菜品食材;则,
所述根据所述每种菜品的菜品信息以及所述用户的饮食注意事项、饮食记录和操作记录,计算所述每种菜品的推荐值,具体包括:
根据所述每种菜品的菜品食材以及所述用户的饮食注意事项,确定所述每种菜品的适用度;
根据所述用户的饮食记录,确定所述每种菜品的推荐指数;
根据所述用户的操作记录,确定所述每种菜品的喜爱分数;
根据所述每种菜品的菜品数量、所述每种菜品的适用度、所述每种菜品的推荐指数以及所述每种菜品的喜爱分数,计算所述每种菜品的推荐值。
可选地,所述根据所述用户的操作记录,确定所述每种菜品的喜爱分数,具体包括:
根据所述用户的操作记录,计算第二预设时间内各个菜品食材的贡献分;
根据所述各个菜品食材的贡献分,确定所述每种菜品的喜爱分数。
可选地,所述操作记录包括:搜索记录、点选记录、预约记录和下单记录;则,
根据所述用户的操作记录,计算第二预设时间内菜品食材的贡献分的公式为:
其中,U为单例菜品食材在第二预设时间内的贡献分,Cov(SC)/(N2-i)为单例菜品食材在时间间隔为N2-i时的搜索记录中的贡献分,Cov(SL)/(N2-i)为单例菜品食材在时间间隔为N2-i时的点选记录中的贡献分,Cov(OD)/(N2-i)为单例菜品食材在时间间隔为N2-i时的预约记录中的贡献分,Cov(UE)/(N2-i)为单例菜品食材在时间间隔为N2-i时的下单记录中的贡献分,N2-i为时间间隔,N2为所述第二预设时间。
可选地,所述根据所述用户的操作记录,计算第二预设时间内各个菜品食材的贡献分的步骤之后,所述方法还包括:
将所述贡献分大于预设贡献阈值的菜品食材确定为所述用户的喜爱食材。
可选地,所述方法还包括:
确定所述每种菜品的相关指数;则,
所述根据所述每种菜品的菜品数量、所述每种菜品的适用度、所述每种菜品的推荐指数以及所述每种菜品的喜爱分数,计算所述每种菜品的推荐值,具体包括:
根据所述每种菜品的菜品数量、所述每种菜品的适用度、所述每种菜品的推荐指数、所述每种菜品的喜爱分数以及所述每种菜品的相关指数,计算所述每种菜品的推荐值。
可选地,确定菜品的相关指数的公式为:
其中,Oth(PM)为单例菜品的相关指数,为单例菜品中所有菜品食材作为所述喜爱食材的贡献分总和的平均值,为单例菜品中的第i个菜品食材作为所述喜爱食材的贡献分总和,Mi为单例菜品中的第i个菜品食材作为所述喜爱食材时的用户数量,P为单例菜品中的菜品食材总数。
可选地,根据菜品的菜品数量、菜品的适用度、菜品的推荐指数、菜品的喜爱分数以及菜品的相关指数,计算菜品的推荐值的公式为:
S=R*D*Hty(N1)*∑U*Oth(PM);
其中,S为单例菜品的推荐值,R为单例菜品的菜品数量,D为单例菜品的适用度,Hty(N1)为单例菜品的推荐指数,∑U为单例菜品的喜爱分数,Oth(PM)为单例菜品的相关指数。
可选地,所述根据所述每种菜品的菜品信息以及所述用户的饮食注意事项、饮食记录和操作记录,计算所述每种菜品的推荐值的步骤之后,所述方法还包括:
计算所述每种菜品的预测下单数量;
根据所述每种菜品的预测下单数量向菜品提供方推荐备菜方案。
可选地,计算菜品的预测下单数量的公式为:
V=Fav(W)n-Z,n∈(0,1);
其中,V为单例菜品的预测下单数量,Fav(W)为单例菜品在所有用户中的推荐值总和,W为用户总数,n为动态参数,Z为单例菜品在前一日的剩余数量。
可选地,所述动态参数的计算公式为:
n=n1+E(V1);
其中,n为动态参数,n1为前一日的动态参数,E(V1)为单例菜品在前一日的预测下单数量与实际下单数量的差值。
为解决上述技术问题,本发明实施例采用的另一个技术方案是:提供一种饮食推荐设备,包括:
至少一个处理器,以及,
与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够用于执行以上所述的一种饮食推荐方法。
为解决上述技术问题,本发明实施例采用的另一个技术方案是:提供一种包含程序代码的计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述饮食推荐设备执行以上所述的一种饮食推荐方法。
本发明实施例的有益效果是:区别于现有技术的情况下,本发明实施例提供一种饮食推荐方法及其设备,在饮食推荐方法中,通过获取每种菜品的菜品信息以及用户的饮食注意事项、饮食记录和操作记录来计算每种菜品的推荐值后,根据推荐值向用户推荐菜品,使得用户在饮食时具备饮食参考,并且由于推荐值与用户的饮食注意事项、饮食记录和操作记录相关,因此,推荐的菜品既能满足用户的喜好,又能防止用户食用到不利于自身健康的食物,使得用户能够方便地实现健康饮食。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本发明实施例提供的一种实施环境的结构示意图;
图2是本发明实施例提供的一种饮食推荐方法的流程示意图;
图3是本发明实施例提供的一种饮食推荐装置的结构示意图;
图4是本发明另一实施例提供的一种饮食推荐装置的结构示意图;
图5是本发明实施例提供的一种饮食推荐设备的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,当元件被表述“固定于”另一个元件,它可以直接在另一个元件上、或者其间可以存在一个或多个居中的元件。当一个元件被表述“连接”另一个元件,它可以是直接连接到另一个元件、或者其间可以存在一个或多个居中的元件。本说明书所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的。
此外,下面所描述的本发明各个实施例中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明提供了一种饮食推荐方法及装置,该方法及装置应用于饮食推荐设备,从而使得该饮食推荐设备能够向用户提供饮食参考,并且当用户根据该饮食参考进行饮食时,能够在满足自身喜好的同时避免食用到不利于自身健康的食物,实现健康饮食。
其中,饮食推荐设备能够设置于配备有食堂的企业、学校、社区以及养老院等地方。当饮食推荐设备设置于企业时,饮食推荐设备能够向企业中的员工提供饮食参考;当饮食推荐设备设置于学校时,饮食推荐设备能够向学校中的师生提供饮食参考;当饮食推荐设备设置于社区时,饮食推荐设备能够向社区中的住户提供饮食参考;当饮食推荐设备设置于养老院时,饮食推荐设备能够向住院老人提供饮食参考。
下面,将以饮食推荐设备设置于配备有食堂的企业为例,对本发明进行具体阐述。
请参阅图1,是本发明各个实施例涉及的一种实施环境的结构示意图,该实施环境包括:移动终端100、移动终端200、移动终端300和饮食推荐设备400,饮食推荐设备400分别与移动终端100、移动终端200以及移动终端300通过有线网络或者无线网络进行通信连接。其中,无线网络包括但不限于:WiFi、蓝牙、ZigBee等。
具体地,移动终端100、移动终端200和移动终端300可以为智能手机、平板电脑、智能手表等能够进行通信的电子设备。其中,移动终端100、移动终端200和移动终端300的类型可以相同,也可以不同。当移动终端100、移动终端200和移动终端300的类型不同时,能够以任意方式组合,在此不做具体限定。比如:移动终端100、移动终端200和移动终端300可以均为智能手机;或者,移动终端100为智能手机,移动终端200为平板电脑,移动终端300为智能手表;或者,移动终端100和移动终端200为智能手机,移动终端300为智能手表等。
该移动终端100、移动终端200和移动终端300分别为不同用户的移动终端,比如:移动终端100为用户A的移动终端,移动终端200为用户B的移动终端,移动终端300为用户C的移动终端。可以理解的是,在本发明实施例中,上述用户为企业员工。
不同用户能够根据各自的移动终端浏览菜品提供方当日提供的菜品种类及每种菜品的菜品信息,并能够进行搜索、点选、预约、下单等操作。比如:用户A能够通过移动终端100浏览菜品提供方当日提供的菜品种类及每种菜品的菜品信息,并能够在移动终端100上进行搜索、点选、预约、下单等操作;用户B能够通过移动终端200浏览菜品提供方当日提供的菜品种类及每种菜品的菜品信息,并能够在移动终端200上进行搜索、点选、预约、下单等操作;用户C能够通过移动终端300浏览菜品提供方当日提供的菜品种类及每种菜品的菜品信息,并能够在移动终端300上进行搜索、点选、预约、下单等操作。可以理解的是,不同用户在同一时刻浏览菜品提供方当日提供的菜品种类及每种菜品的菜品信息时,所浏览到的菜品种类及每种菜品的菜品信息相同。其中,菜品信息包括菜品数量和菜品食材。
当不同用户根据各自的移动终端进行搜索、点选、预约、下单等操作后,各个移动终端分别产生各个用户的操作记录,并且各个移动终端能够将产生的操作记录发送至饮食推荐设备400中,分别存储为各个用户的操作记录。其中,移动终端产生的操作记录包括搜索记录、点选记录、预约记录和下单记录,搜索记录为用户搜索菜品或菜品食材的记录,点选记录为用户点选菜品或菜品食材的记录,预约记录为用户预约菜品的记录,下单记录为用户下单的菜品的记录。
举例而言:当用户A在移动终端100上进行搜索、点选、预约、下单等操作后,移动终端100产生搜索记录、点选记录、预约记录和下单记录,并将所产生的搜索记录、点选记录、预约记录和下单记录发送至饮食推荐设备400中,存储为用户A的操作记录;当用户B在移动终端200上进行搜索、点选、预约、下单等操作后,移动终端200产生搜索记录、点选记录、预约记录和下单记录,并将所产生的搜索记录、点选记录、预约记录和下单记录发送至饮食推荐设备400中,存储为用户B的操作记录;当用户C在移动终端300上进行搜索、点选、预约、下单等操作后,移动终端300产生搜索记录、点选记录、预约记录和下单记录,并将所产生的搜索记录、点选记录、预约记录和下单记录发送至饮食推荐设备400中,存储为用户C的操作记录。
可以理解的是,移动终端提供给用户浏览的每种菜品的菜品数量会随着用户下单操作的发生实时发生改变。
进一步地,各个移动终端还用于显示饮食推荐设备400推荐给各个用户的菜品。比如:当饮食推荐设备400向用户A推荐菜品时,移动终端100显示饮食推荐设备400推荐给用户A的菜品;当饮食推荐设备400向用户B推荐菜品时,移动终端200显示饮食推荐设备400推荐给用户B的菜品;当饮食推荐设备400向用户C推荐菜品时,移动终端300显示饮食推荐设备400推荐给用户C的菜品。
饮食推荐设备400则为设置有交互单元的电子设备,其能够通过交互单元与菜品提供方进行交互。该交互单元可以为触摸屏,也可以为显示器与键盘的组合。可以理解的是,在本发明实施例中,上述菜品提供方为企业食堂。
具体地,菜品提供方能够在提供菜品的当日,通过交互单元向饮食推荐设备400录入当日提供的菜品种类及每种菜品的菜品信息,该菜品信息包括菜品数量和菜品食材。
当菜品提供方当日提供的菜品种类及每种菜品的菜品信息录入饮食推荐设备400后,饮食推荐设备400即存储有菜品提供方每日提供的菜品种类及每种菜品的菜品信息,此时,饮食推荐设备400还能够将所存储的菜品种类及每种菜品的菜品信息同步至通信连接的各个移动终端中。
可以理解的是,饮食推荐设备400中存储的每种菜品的菜品数量会随着用户的下单操作实时更新,进而使得移动终端显示的每种菜品的菜品数量同步更新。当然,在一些实施例中,若饮食推荐设备400与销售设备连接,则饮食推荐设备400中存储的每种菜品的菜品数量会随着销售设备的销售记录进行实时更新。
该饮食推荐设备400还存储有所有用户的基本信息和饮食信息。可以理解的是,在本发明实施例中,所有用户即企业所有员工。
其中,基本信息包括但不限于:姓名、移动终端MAC码和联系方式等。
由于每个移动终端的MAC码都具有唯一性,因此,饮食推荐设备400根据用户的移动终端MAC码能够识别到用户对应的移动终端,反之,饮食推荐设备400根据移动终端的MAC码也能够识别到移动终端对应的用户。
饮食信息包括但不限于:饮食注意事项、饮食记录和操作记录等。
其中,饮食注意事项包括但不限于:宜用食材、可用食材、慎用食材和忌用食材。
基于此,饮食推荐设备400还存储有饮食注意事项与预设适用度的对应关系表,具体地,宜用食材对应第一预设适用度,可用食材对应第二预设适用度,慎用食材对应第三预设适用度,忌用食材对应第四预设适用度,并且第一预设适用度>第二预设适用度>第三预设适用度>第四预设适用度。
各个用户的饮食记录能够根据各个用户对应的移动终端发送的下单记录确定。
在一些实施例中,饮食推荐设备400还存储有每日每种菜品的实际下单数量、每日每种菜品的预测下单数量、每日每种菜品的剩余数量以及每日的动态参数。
在一些实施例中,饮食推荐设备400还能够计算每日提供的各个食材对于每个用户的贡献分,并生成每个用户与喜爱食材的对照关系表,其中,一个用户对应至少一个喜爱食材,且每个喜爱食材均对应一个贡献分。
进一步地,该饮食推荐设备400能够执行本发明实施例提供的饮食推荐方法,以向各个用户推荐菜品。
具体地,当菜品提供方在饮食推荐设备400中录入当日提供的菜品种类及每种菜品的菜品信息后,若饮食推荐设备400向用户A推荐菜品,则饮食推荐设备400获取菜品种类及每种菜品的菜品信息,并获取用户A的饮食注意事项、饮食记录和操作记录,根据每种菜品的菜品信息以及用户A的饮食注意事项、饮食记录和操作记录,计算每种菜品对用户A的推荐值,然后根据推荐值向用户A的移动终端100发送推荐信息,实现向用户A推荐菜品;若饮食推荐设备400向用户B推荐菜品,则饮食推荐设备400获取菜品种类及每种菜品的菜品信息,并获取用户B的饮食注意事项、饮食记录和操作记录,根据每种菜品的菜品信息以及用户B的饮食注意事项、饮食记录和操作记录,计算每种菜品对用户B的推荐值,然后根据推荐值向用户B的移动终端200发送推荐信息,实现向用户B推荐菜品;若饮食推荐设备400向用户C推荐菜品,则饮食推荐设备400获取菜品种类及每种菜品的菜品信息,并获取用户C的饮食注意事项、饮食记录和操作记录,根据每种菜品的菜品信息以及用户C的饮食注意事项、饮食记录和操作记录,计算每种菜品对用户C的推荐值,然后根据推荐值向用户C的移动终端300发送推荐信息,实现向用户C推荐菜品。当用户A、用户B和用户C根据饮食推荐设备400推荐的菜品进行饮食时,能够在满足自身喜好的同时避免食用到不利于自身健康的食物,实现健康饮食。
在一些实施例中,当饮食推荐设备400中存储的每种菜品的菜品数量随着用户的下单操作实时更新后,饮食推荐设备400实时更新向用户推荐的菜品。
需要说明的是,本发明实施例提供的饮食推荐方法还可以进一步拓展至其他合适的实施环境,而不限于图1所示的实施环境。虽然图1中仅示出三个移动终端(移动终端100、移动终端200以及移动终端300)及其对应的三个用户(用户A、用户B以及用户C)、一个饮食推荐设备400及其对应的一个菜品提供方,但本领域技术人员可以理解的是,在实际应用过程中,该应用环境可以包括任意数量的移动终端和饮食推荐设备,进而包括对应数量的用户和菜品提供方。
进一步地,请参阅图2,是本发明实施例提供的一种饮食推荐方法的流程示意图,该饮食推荐方法由上述饮食推荐设备400执行,用于向用户提供饮食参考,以方便用户实现健康饮食。
具体地,该饮食推荐方法包括:
S100:获取菜品种类及每种菜品的菜品信息。
在本发明实施例中,菜品种类为菜品提供方当日提供的所有菜品的种类。比如,菜品提供方当日提供的所有菜品包括菜品A、菜品B和菜品C,则菜品种类包括菜品A、菜品B和菜品C。
其中,菜品提供方每日提供的菜品种类可以相同,也可以不相同。比如,菜品提供方当日提供的菜品种类包括菜品A、菜品B和菜品C,则菜品提供方后一日提供的菜品种类可以包括菜品A、菜品B和菜品C,也可以只包括菜品A和菜品D。
菜品信息则包括菜品数量和菜品食材,菜品数量为菜品的当前数量,菜品食材为菜品的组成食材。
其中,每种菜品的菜品数量可能相同,也可能不同,并且每种菜品的菜品数量会随着用户的下单操作实时发生改变。
每种菜品的菜品食材均不同,该菜品食材只与菜品种类相关,只要菜品种类不变,菜品食材也不会发生改变,因此,能够根据每种菜品的菜品种类确定每种菜品的菜品食材。该菜品食材中包括配菜及调料,比如,菜品A的菜品食材包括配菜A1、配菜A2和调料A1;菜品B的菜品食材包括配菜B1、配菜B2、配菜B3、调料B1和调料B2;菜品C的菜品食材包括配菜C1和调料C1;菜品D的菜品食材包括配菜D1和配菜D2。
由于菜品提供方会将每日提供的菜品种类及每种菜品的菜品信息录入饮食推荐设备,因此,饮食推荐设备能够从本地存储器获取菜品种类及每种菜品的菜品信息。
当菜品种类包括菜品A、菜品B和菜品C时,获取每种菜品的菜品信息,亦即,获取菜品A的菜品数量和菜品食材、获取菜品B的菜品数量和菜品食材、获取菜品C的菜品数量和菜品食材。
S200:获取用户的饮食信息,饮食信息包括饮食注意事项、饮食记录和操作记录。
在本发明实施例中,用户的饮食信息为饮食推荐设备中存储的任意一个用户的饮食信息。比如,当饮食推荐设备中存储有用户A、用户B和用户C的饮食信息时,若饮食推荐设备要向用户A推荐菜品,则获取用户A的饮食信息,该用户A的饮食信息包括用户A的饮食注意事项、用户A的饮食记录和用户A的操作记录;若饮食推荐设备要向用户B推荐菜品,则获取用户B的饮食信息,该用户B的饮食信息包括用户B的饮食注意事项、用户B的饮食记录和用户B的操作记录;若饮食推荐设备要向用户C推荐菜品,则获取用户C的饮食信息,该用户C的饮食信息包括用户C的饮食注意事项、用户C的饮食记录和用户C的操作记录。
可以理解的是,每个用户的饮食信息均不同,通过获取用户的饮食信息进行菜品推荐,能够使得推荐的菜品符合用户的个性化需求。
具体地,饮食信息包括饮食注意事项、饮食记录和操作记录。
其中,饮食注意事项包括宜用食材、可用食材、慎用食材和忌用食材。宜用食材为非常适合用户食用的食材,用户食用宜用食材后对健康有益;可用食材为用户能够食用的食材,但用户食用可用食材后既不会对健康有益,也不会对健康有害;慎用食材为用户食用后可能对健康有害的食材;忌用食材为用户完全不能食用的食材。
饮食记录则记录了用户食用的菜品及食用菜品的时间。
操作记录则包括搜索记录、点选记录、预约记录和下单记录。搜索记录记录了用户搜索的菜品或菜品食材,以及,用户搜索菜品或菜品食材的时间;点选记录记录了用户点选的菜品或菜品食材,以及,用户点选菜品或菜品食材的时间;预约记录记录了用户预约的菜品,以及,用户预约菜品的时间;下单记录记录了用户下单的菜品,以及,用户下单菜品的时间。
可以理解的是,由于饮食注意事项包括宜用食材、可用食材、慎用食材和忌用食材,因此,通过饮食注意事项,能够向用户推荐适合用户食用的菜品,防止用户食用到不利于自身健康的食物。
根据饮食记录和操作记录则能够确定用户的饮食喜好和饮食习惯。
在本发明实施例中,饮食推荐设备能够从本地存储器获取用户的饮食信息。
S300:根据每种菜品的菜品信息以及用户的饮食注意事项、饮食记录和操作记录,计算每种菜品的推荐值。
在本发明实施例中,推荐值代表菜品的推荐程度,推荐值越高,则代表菜品越适合推荐给用户,推荐值越低,则代表菜品越不适合推荐给用户。
由于菜品信息包括菜品数量和菜品食材,因此,根据每种菜品的菜品信息以及用户的饮食注意事项、饮食记录和操作记录,计算每种菜品的推荐值,具体包括:
根据每种菜品的菜品食材以及用户的饮食注意事项,确定每种菜品的适用度;根据用户的饮食记录,确定每种菜品的推荐指数;根据用户的操作记录,确定每种菜品的喜爱分数;根据每种菜品的菜品数量、每种菜品的适用度、每种菜品的推荐指数以及每种菜品的喜爱分数,计算每种菜品的推荐值。
举例而言,当菜品种类包括菜品A、菜品B和菜品C时,根据菜品A的菜品食材以及用户的饮食注意事项,确定菜品A的适用度;根据用户的饮食记录,确定菜品A的推荐指数;根据用户的操作记录,确定菜品A的喜爱分数,根据菜品A的菜品数量、菜品A的适用度、菜品A的推荐指数以及菜品A的喜爱分数,计算菜品A的推荐值;然后,根据菜品B的菜品食材以及用户的饮食注意事项,确定菜品B的适用度;根据用户的饮食记录,确定菜品B的推荐指数;根据用户的操作记录,确定菜品B的喜爱分数,根据菜品B的菜品数量、菜品B的适用度、菜品B的推荐指数以及菜品B的喜爱分数,计算菜品B的推荐值;然后,根据菜品C的菜品食材以及用户的饮食注意事项,确定菜品C的适用度;根据用户的饮食记录,确定菜品C的推荐指数;根据用户的操作记录,确定菜品C的喜爱分数,根据菜品C的菜品数量、菜品C的适用度、菜品C的推荐指数以及菜品C的喜爱分数,计算菜品C的推荐值,以得到每种菜品的推荐值。
在一些实施例中,根据每种菜品的菜品食材以及用户的饮食注意事项,确定每种菜品的适用度,具体包括:对每种菜品执行“根据菜品的菜品食材以及用户的饮食注意事项,确定菜品的适用度”的步骤。
比如,当菜品种类包括菜品A、菜品B和菜品C时,根据菜品A的菜品食材以及用户的饮食注意事项,确定菜品A的适用度;然后,根据菜品B的菜品食材以及用户的饮食注意事项,确定菜品B的适用度;然后,根据菜品C的菜品食材以及用户的饮食注意事项,确定菜品C的适用度。
其中,由于宜用食材、可用食材、慎用食材和忌用食材对用户有不同的适用度,因此,预先建立了饮食注意事项与预设适用度的对应关系表。在该饮食注意事项与预设适用度的对应关系表中,宜用食材对应第一预设适用度,可用食材对应第二预设适用度,慎用食材对应第三预设适用度,忌用食材对应第四预设适用度,并且第一预设适用度>第二预设适用度>第三预设适用度>第四预设适用度。优选地,第一预设适用度为50,第二预设适用度为30,第三预设适用度为10,第四预设适用度为0。
基于此,根据菜品的菜品食材以及用户的饮食注意事项,确定菜品的适用度,具体包括:
确定菜品食材中是否包含忌用食材;
若菜品食材中包含忌用食材,则将第四预设适用度确定为菜品的适用度,若菜品食材中未包含忌用食材,则确定菜品食材中是否包含慎用食材;
若菜品食材中包含慎用食材,则将第三预设适用度确定为菜品的适用度,若菜品食材中未包含慎用食材,则确定菜品食材中是否包含宜用食材;
若菜品食材中包含宜用食材,则将第一预设适用度确定为菜品的适用度,若菜品食材中未包含宜用食材,则将第二预设适用度确定为菜品的适用度。
此时,根据菜品A的菜品食材以及用户的饮食注意事项,确定菜品A的适用度,具体包括:确定菜品A的菜品食材中是否包含用户的忌用食材,若是,则将第四预设适用度确定为菜品A的适用度,若否,则确定菜品A的菜品食材中是否包含用户的慎用食材,若是,则将第三预设适用度确定为菜品A的适用度,若否,则确定菜品A的菜品食材中是否包含用户的宜用食材,若是,则将第一预设适用度确定为菜品A的适用度,若否,则将第二预设适用度确定为菜品A的适用度。
根据菜品B的菜品食材以及用户的饮食注意事项,确定菜品B的适用度,具体包括:确定菜品B的菜品食材中是否包含用户的忌用食材,若是,则将第四预设适用度确定为菜品B的适用度,若否,则确定菜品B的菜品食材中是否包含用户的慎用食材,若是,则将第三预设适用度确定为菜品B的适用度,若否,则确定菜品B的菜品食材中是否包含用户的宜用食材,若是,则将第一预设适用度确定为菜品B的适用度,若否,则将第二预设适用度确定为菜品B的适用度。
根据菜品C的菜品食材以及用户的饮食注意事项,确定菜品C的适用度,具体包括:确定菜品C的菜品食材中是否包含用户的忌用食材,若是,则将第四预设适用度确定为菜品C的适用度,若否,则确定菜品C的菜品食材中是否包含用户的慎用食材,若是,则将第三预设适用度确定为菜品C的适用度,若否,则确定菜品C的菜品食材中是否包含用户的宜用食材,若是,则将第一预设适用度确定为菜品C的适用度,若否,则将第二预设适用度确定为菜品C的适用度。
以饮食推荐设备向用户A推荐菜品为例,此时,根据菜品A的菜品食材以及用户的饮食注意事项确定菜品A的适用度,具体包括:确定菜品A的菜品食材中是否包含用户A的忌用食材,若是,则将第四预设适用度确定为菜品A的适用度,若否,则确定菜品A的菜品食材中是否包含用户A的慎用食材,若是,则将第三预设适用度确定为菜品A的适用度,若否,则确定菜品A的菜品食材中是否包含用户A的宜用食材,若是,则将第一预设适用度确定为菜品A的适用度,若否,则将第二预设适用度确定为菜品A的适用度。当菜品A的菜品食材包括配菜A1、配菜A2和调料A1时,假设用户A的忌用食材包括配菜A1、宜用食材包括配菜A2,则能够确定菜品A的菜品食材中包含忌用食材,将第四预设适用度确定为菜品的适用度;假设用户A的可用食材包括配菜A1,则能够确定菜品A的菜品食材中未包含忌用食材,也未包含慎用食材,也未包含宜用食材,则将第二预设适用度确定为菜品A的适用度。
在一些实施例中,根据用户的饮食记录,确定每种菜品的推荐指数,具体包括:根据用户的饮食记录,统计第一预设时间内每种菜品的食用次数后,根据每种菜品的食用次数,确定每种菜品的推荐指数。
比如,当菜品种类包括菜品A、菜品B和菜品C时,根据用户的饮食记录,统计第一预设时间内菜品A的食用次数、菜品B的食用次数和菜品C的食用次数后,根据菜品A的食用次数,确定菜品A的推荐指数;根据菜品B的食用次数,确定菜品B的推荐指数;根据菜品C的食用次数,确定菜品C的推荐指数。
其中,第一预设时间为最长时间间隔,该第一预设时间用于确定饮食记录的提取范围。比如,当第一预设时间为5天时,则提取距离当前时间5天内的饮食记录。
由于用户的饮食记录包括用户食用的菜品以及食用菜品的时间,因此,根据用户的饮食记录,统计第一预设时间内每种菜品的食用次数时,将食用菜品的时间与当前时间的时间间隔小于第一预设时间的饮食记录确定为参考饮食记录,然后,在所确定的参考饮食记录中统计每种菜品的食用次数。
此时,根据用户的饮食记录,统计第一预设时间内菜品A的食用次数、菜品B的食用次数和菜品C的食用次数,具体包括:将食用菜品的时间与当前时间的时间间隔小于第一预设时间的饮食记录确定为参考饮食记录后,在所确定的参考饮食记录中统计菜品A的食用次数、菜品B的食用次数和菜品C的食用次数。
举例而言,在所确定的参考饮食记录中,食用菜品的时间与当前时间的时间间隔包括T1、T2、T3,当时间间隔为T1时,用户食用的菜品为菜品A;当时间间隔为T2时,用户食用的菜品为菜品C;当时间间隔为T3时,用户食用的菜品为菜品A。此时,在所确定的参考饮食记录中统计菜品A的食用次数时,菜品A的食用次数为2;在所确定的参考饮食记录中统计菜品B的食用次数时,菜品B的食用次数为0,在所确定的参考饮食记录中统计菜品C的食用次数时,菜品C的食用次数为1。
在一些实施例中,单例菜品在第一预设时间内的食用次数为其中,N1为第一预设时间,N1-i为时间间隔,sgn(N1-i)用于确定时间间隔为N1-i时,参考饮食记录中是否包含统计的单例菜品。比如,当在所确定的参考饮食记录中统计菜品A的食用次数时,若时间间隔为N1-i时,参考饮食记录中包含菜品A,则sgn(N1-i)=1,若时间间隔为N1-i时,参考饮食记录中不包含菜品A,则sgn(N1-i)=0。
进一步地,根据每种菜品的食用次数,确定每种菜品的推荐指数,具体包括:对每种菜品执行“根据菜品的食用次数,确定菜品的推荐指数”的步骤。
可以理解的是,菜品在第一预设时间内的食用次数越多,菜品的推荐指数越低,以均衡用户的饮食。
在一些实施例中,根据用户的操作记录,确定每种菜品的喜爱分数,具体包括:根据用户的操作记录,计算第二预设时间内各个菜品食材的贡献分后,根据各个菜品食材的贡献分,确定每种菜品的喜爱分数。
比如,当菜品种类包括菜品A、菜品B和菜品C时,由于菜品A的菜品食材包括配菜A1、配菜A2和调料A1,菜品B的菜品食材包括配菜B1、配菜B2、配菜B3、调料B1和调料B2,菜品C的菜品食材包括配菜C1和调料C1,因此,根据用户的操作记录,分别计算第二预设时间内配菜A1的贡献分、配菜A2的贡献分、调料A1的贡献分、配菜B1的贡献分、配菜B2的贡献分、配菜B3的贡献分、调料B1的贡献分、调料B2的贡献分、配菜C1的贡献分和调料C1的贡献分;然后,根据配菜A1的贡献分、配菜A2的贡献分、调料A1的贡献分、配菜B1的贡献分、配菜B2的贡献分、配菜B3的贡献分、调料B1的贡献分、调料B2的贡献分、配菜C1的贡献分和调料C1的贡献分,确定菜品A的喜爱分数、菜品B的喜爱分数和菜品C的喜爱分数。其中,由于菜品A的菜品食材包括配菜A1、配菜A2和调料A1,因此,根据配菜A1的贡献分、配菜A2的贡献分和调料A1的贡献分,确定菜品A的喜爱分数;由于菜品B的菜品食材包括配菜B1、配菜B2、配菜B3、调料B1和调料B2,因此,根据配菜B1的贡献分、配菜B2的贡献分、配菜B3的贡献分、调料B1的贡献分和调料B2的贡献分,确定菜品B的喜爱分数;由于菜品C的菜品食材包括配菜C1和调料C1,因此,根据配菜C1的贡献分和调料C1的贡献分,确定菜品C的喜爱分数。
其中,根据用户的操作记录,计算第二预设时间内各个菜品食材的贡献分,亦即,对每个菜品食材执行“根据用户的操作记录,计算第二预设时间内菜品食材的贡献分”的步骤。
具体地,根据用户的操作记录,计算第二预设时间内菜品食材的贡献分的公式为:
其中,U为单例菜品食材在第二预设时间内的贡献分,Cov(SC)/(N2-i)为单例菜品食材在时间间隔为N2-i时的搜索记录中的贡献分,Cov(SL)/(N2-i)为单例菜品食材在时间间隔为N2-i时的点选记录中的贡献分,Cov(OD)/(N2-i)为单例菜品食材在时间间隔为N2-i时的预约记录中的贡献分,Cov(UE)/(N2-i)为单例菜品食材在时间间隔为N2-i时的下单记录中的贡献分,N2-i为时间间隔,N2为所述第二预设时间。
其中,第二预设时间为最长时间间隔,该第二预设时间用于确定操作记录的提取范围。比如,当第二预设时间为5天时,则提取距离当前时间5天内的操作记录。
由于操作记录包括搜索记录、点选记录、预约记录和下单记录,且搜索记录包括用户搜索的菜品或菜品食材,以及,用户搜索菜品或菜品食材的时间;点选记录包括用户点选的菜品或菜品食材,以及,用户点选菜品或菜品食材的时间;预约记录包括用户预约的菜品,以及,用户预约菜品的时间;下单记录包括用户下单的菜品,以及,用户下单菜品的时间。
因此,能够将用户搜索菜品或菜品食材的时间与当前时间的时间间隔小于第二预设时间的搜索记录确定为参考搜索记录,然后,在所确定的参考搜索记录中计算各个菜品食材在搜索记录中的贡献分;能够将用户点选菜品或菜品食材的时间与当前时间的时间间隔小于第二预设时间的点选记录确定为参考点选记录,然后,在所确定的参考点选记录中计算各个菜品食材在点选记录中的贡献分;能够将用户预约菜品的时间与当前时间的时间间隔小于第二预设时间的预约记录确定为参考预约记录,然后,在所确定的参考预约记录中计算各个菜品食材在预约记录中的贡献分;能够将用户下单菜品的时间与当前时间的时间间隔小于第二预设时间的下单记录确定为参考下单记录,然后,在所确定的参考下单记录中计算各个菜品食材在下单记录中的贡献分。
其中,菜品食材在搜索记录中的贡献分<菜品食材在点选记录中的贡献分<菜品食材在预约记录中的贡献分<菜品食材在下单记录中的贡献分。优选地,菜品食材在搜索记录中的贡献分Cov(SC)=20;菜品食材在点选记录中的贡献分Cov(SL)=40;菜品食材在预约记录中的贡献分Cov(OD)=60;菜品食材在下单记录中的贡献分Cov(UE)=80。
举例而言,在所确定的参考搜索记录中,用户搜索菜品或菜品食材的时间与当前时间的时间间隔包括T4、T5、T6,当时间间隔为T4时,用户搜索的菜品或菜品食材包括配菜A1;当时间间隔为T5时,用户搜索的菜品或菜品食材包括配菜B1;当时间间隔为T6时,用户搜索的菜品或菜品食材包括菜品A。在所确定的参考点选记录中,用户点选菜品或菜品食材的时间与当前时间的时间间隔包括T4、T5、T6,当时间间隔为T4时,用户点选的菜品或菜品食材包括配菜A2;当时间间隔为T5时,用户点选的菜品或菜品食材包括菜品A;当时间间隔为T6时,用户点选的菜品或菜品食材包括菜品B2。在所确定的参考预约记录中,用户预约菜品的时间与当前时间的时间间隔包括T4、T5、T6,当时间间隔为T4时,用户预约的菜品包括菜品A;当时间间隔为T5时,用户预约的菜品包括菜品B;当时间间隔为T6时,用户预约的菜品包括菜品A。在所确定的参考下单记录中,用户下单菜品的时间与当前时间的时间间隔包括T4、T5、T6,当时间间隔为T4时,用户下单的菜品包括菜品B;当时间间隔为T5时,用户下单的菜品包括菜品A;当时间间隔为T6时,用户下单的菜品包括菜品B。
此时,根据用户的操作记录,计算第二预设时间内配菜A1的贡献分时,在所确定的参考搜索记录中计算配菜A1的贡献分,在所确定的参考点选记录中计算配菜A1的贡献分,在所确定的参考预约记录中计算配菜A1的贡献分,在所确定的参考下单记录中计算配菜A1的贡献分。
其中,在所确定的参考搜索记录中计算配菜A1的贡献分时,由于时间间隔为T4和T6时,参考搜索记录中都存在配菜A1,因此,配菜A1在参考搜索记录中的贡献分为在所确定的参考点选记录中计算配菜A1的贡献分时,由于时间间隔为T5时,参考点选记录中存在配菜A1,因此,配菜A1在参考点选记录中的贡献分为在所确定的参考预约记录中计算配菜A1的贡献分时,由于时间间隔为T4和T6时,参考预约记录中都存在配菜A1,因此,配菜A1在参考预约记录中的贡献分为在所确定的参考下单记录中计算配菜A1的贡献分时,由于时间间隔为T5时,参考下单记录中存在配菜A1,因此,配菜A1在参考下单记录中的贡献分为
可以理解的是,贡献分越大的菜品食材用户喜爱度越高。
在一些实施例中,根据每种菜品的菜品数量、每种菜品的适用度、每种菜品的推荐指数以及每种菜品的喜爱分数,计算每种菜品的推荐值,具体包括:对每种菜品执行“根据菜品的菜品数量、菜品的适用度、菜品的推荐指数以及菜品的喜爱分数,计算菜品的推荐值”的步骤。
其中,根据菜品的菜品数量、菜品的适用度、菜品的推荐指数以及菜品的喜爱分数,计算菜品的推荐值的公式为:
S=R*D*Hty(N1)*∑U;
其中,S为单例菜品的推荐值,R为单例菜品的菜品数量,D为单例菜品的适用度,Hty(N1)为单例菜品的推荐指数,∑U为单例菜品的喜爱分数。
其中,通过对单例菜品中的所有菜品食材的贡献分进行求和得到单例菜品的喜爱分数。
可以理解的是,菜品的菜品数量、适用度、推荐指数、喜爱分数越高,菜品的推荐值越大。
S400:根据推荐值向用户推荐菜品。
由于推荐值越高,菜品越适合推荐给用户,因此,在本发明实施例中,按照推荐值由高到低的顺序向用户推荐菜品。比如,假设菜品A的推荐值>菜品B的推荐值>菜品C的推荐值,此时,若向用户推荐菜品,则菜品A位于推荐列表的第一位,菜品B位于推荐列表的第二位,菜品C位于推荐列表的第三位。
在一些实施例中,若推荐值最大的菜品中仍包含慎用食材,则向用户推荐菜品时,对慎用食材进行标记。
在一些实施例中,为了避免推荐的菜品中存在不利于用户健康的菜品食材,在按照推荐值由高到低的顺序向用户推荐菜品前,滤除推荐值小于预设推荐阈值的菜品。
其中,预设推荐阈值为菜品存在不利于用户健康的菜品食材时的临界推荐值,当菜品的推荐值小于预设推荐阈值时,菜品存在不利于用户健康的菜品食材,需要滤除该菜品;当菜品的推荐值大于预设推荐阈值时,菜品不存在不利于用户健康的菜品食材,不需要滤除该菜品。该预设推荐阈值能够根据经验确定。
进一步地,在一些实施例中,在根据用户的操作记录,计算第二预设时间内各个菜品食材的贡献分之后,还将贡献分大于预设贡献阈值的菜品食材确定为用户的喜爱食材。其中,预设贡献阈值可以设置为任意数值,该预设贡献阈值能够根据经验确定。
由于每个用户的操作记录存在个性化差异,因此,每个用户计算得到的第二预设时间内各个菜品食材的贡献分存在差异,进而使得每个用户确定的喜爱食材存在差异。
比如,假设根据用户A的操作记录,计算第二预设时间内各个菜品食材的贡献分后,确定配菜A1、配菜B1和调料C1的贡献分大于预设贡献阈值,则将配菜A1、配菜B1和调料C1确定为用户A的喜爱食材;假设根据用户B的操作记录,计算第二预设时间内各个菜品食材的贡献分后,确定配菜A1、调料B2和配菜C1的贡献分大于预设贡献阈值,则将配菜A1、调料B2和配菜C1确定为用户B的喜爱食材;假设根据用户C的操作记录,计算第二预设时间内各个菜品食材的贡献分后,确定配菜A2、调料B2和配菜C1的贡献分大于预设贡献阈值,则将配菜A2、调料B2和配菜C1确定为用户C的喜爱食材。
由于不同用户所确定的喜爱食材不同,因此,饮食推荐设备在确定各个用户的喜爱食材后,还能生成用户与喜爱食材的对照关系表。在所生成的用户与喜爱食材的对照关系表中,包括至少一个用户,每个用户均对应至少一个喜爱食材。
在一些实施例中,在用户与喜爱食材的对照关系表中,每个用户对应的每个喜爱食材均对应一个贡献分(如表1所示)。
表1
基于此,在一些实施例中,为了优化菜品推荐的精细度,在根据每种菜品的菜品信息以及用户的饮食注意事项、饮食记录和操作记录,计算每种菜品的推荐值的过程中,还确定每种菜品的相关指数。
可以理解的是,确定每种菜品的相关指数,亦即,对每种菜品执行“确定菜品的相关指数”的步骤。
其中,确定菜品的相关指数的公式为:
其中,Oth(PM)为单例菜品的相关指数,为单例菜品中所有菜品食材作为所述喜爱食材的贡献分总和的平均值,为单例菜品中的第i个菜品食材作为所述喜爱食材的贡献分总和,Mi为单例菜品中的第i个菜品食材作为所述喜爱食材时的用户数量,P为单例菜品中的菜品食材总数。
举例而言,假设菜品A的菜品食材包括配菜A1、配菜A2和调料A1,在确定菜品A的相关指数时,确定配菜A1作为喜爱食材时的贡献分总和,确定配菜A2作为喜爱食材时的贡献分总和,确定调料A1作为喜爱食材时的贡献分总和;然后,确定配菜A1作为喜爱食材时的平均贡献分,确定配菜A2作为喜爱食材时的平均贡献分,确定调料A1作为喜爱食材时的平均贡献分;然后,通过对配菜A1作为喜爱食材时的平均贡献分、配菜A2作为喜爱食材时的平均贡献分以及调料A1作为喜爱食材时的平均贡献分求和,确定菜品A中所有菜品食材作为喜爱食材的贡献分总和的平均值;然后,通过对菜品A中所有菜品食材作为喜爱食材的贡献分总和的平均值进行对数运算,确定菜品A的相关指数。
参阅表1可知,配菜A1为用户A和用户B的喜爱食材,因此,确定配菜A1作为喜爱食材时的用户数量M1=2,此时,配菜A1作为喜爱食材时的贡献分总和为U1+U4,配菜A1作为喜爱食材时的平均贡献分为配菜A2为用户C的喜爱食材,因此,确定配菜A2作为喜爱食材时的用户数量M2=1,此时,配菜A2作为喜爱食材时的贡献分总和为U7,配菜A2作为喜爱食材时的平均贡献分为调料A1作为喜爱食材时的用户数量M3=0,因此,调料A1作为喜爱食材时的贡献分总和为0,调料A1作为喜爱食材时的平均贡献分为0。此时,能够确定菜品A中所有菜品食材作为喜爱食材的贡献分总和的平均值为能够确定菜品A的相关指数为
可以理解的是,菜品的相关指数越大,用户对菜品的喜爱程度越高。
当确定每种菜品的相关指数后,根据每种菜品的菜品数量、每种菜品的适用度、每种菜品的推荐指数、每种菜品的喜爱分数以及每种菜品的相关指数,计算每种菜品的推荐值。
该根据每种菜品的菜品数量、每种菜品的适用度、每种菜品的推荐指数、每种菜品的喜爱分数以及每种菜品的相关指数,计算每种菜品的推荐值,具体包括:对每种菜品执行“根据菜品的菜品数量、菜品的适用度、菜品的推荐指数、菜品的喜爱分数以及菜品的相关指数,计算菜品的推荐值”的步骤。
其中,根据菜品的菜品数量、菜品的适用度、菜品的推荐指数、菜品的喜爱分数以及菜品的相关指数,计算菜品的推荐值的公式为:
S=R*D*Hty(N1)*∑U*Oth(PM);
其中,S为单例菜品的推荐值,R为单例菜品的菜品数量,D为单例菜品的适用度,Hty(N1)为单例菜品的推荐指数,∑U为单例菜品的喜爱分数,Oth(PM)为单例菜品的相关指数。
其中,通过对单例菜品中的所有菜品食材的贡献分进行求和得到单例菜品的喜爱分数。
可以理解的是,菜品的菜品数量、适用度、推荐指数、喜爱分数以及相关指数越高,菜品的推荐值越大。
进一步地,在一些实施例中,为了使菜品提供方能够合理提供菜品,在根据每种菜品的菜品信息以及用户的饮食注意事项、饮食记录和操作记录,计算每种菜品的推荐值之后,还计算每种菜品的预测下单数量,并根据每种菜品的预测下单数量向菜品提供方推荐备菜方案。
比如,当菜品种类包括菜品A、菜品B和菜品C时,计算菜品A的预测下单数量、菜品B的预测下单数量和菜品C的预测下单数量,然后根据菜品A的预测下单数量、菜品B的预测下单数量和菜品C的预测下单数量向菜品提供方推荐备菜方案。
其中,计算每种菜品的预测下单数量,具体包括:对每种菜品执行“计算菜品的预测下单数量”的步骤。
具体地,计算菜品的预测下单数量的公式为:
V=Fav(W)n-Z,n∈(0,1);
其中,V为单例菜品的预测下单数量,Fav(W)为单例菜品在所有用户中的推荐值总和,W为用户总数,n为动态参数,Z为单例菜品在前一日的剩余数量。
其中,能够通过计算单例菜品对于每个用户的推荐值之和,确定单例菜品在所有用户中的推荐值总和。
用户总数为饮食推荐设备中存储的所有用户的数量。
动态参数则为预先存储的经验值,该动态参数可以为任意数值。
举例而言,假设饮食推荐设备中存储的所有用户包括用户A、用户B和用户C,当计算菜品A的预测下单数量时,计算菜品A对于用户A的推荐值,计算菜品A对于用户B的推荐值,计算菜品A对于用户C的推荐值;然后,通过对菜品A对于用户A的推荐值、菜品A对于用户B的推荐值以及菜品A对于用户C的推荐值求和,确定菜品A在所有用户中的推荐值总和;然后,确定菜品A在前一日的剩余数量;然后,通过动态参数对菜品A在所有用户中的推荐值总和进行指数运算后,减去菜品A在前一日的剩余数量,得到菜品A的预测下单数量。
在一些实施例中,动态参数能够通过公式n=n1+E(V1)计算得到。
其中,n为动态参数,n1为前一日的动态参数,E(V1)为单例菜品在前一日的预测下单数量与实际下单数量的差值。
其中,前一日的动态参数、单例菜品在前一日的预测下单数量以及单例菜品的实际下单数量均存储于饮食推荐设备中,饮食推荐设备能够从本地存储器获取上述参数。
可以理解的是,若E(V1)为正数,则动态参数n增大,若E(V1)为负数,则动态参数n减小,以能够根据误差实时调整单例菜品的预测下单数量。
可以理解的是,菜品在所有用户中的推荐值总和越大,菜品的预测下单数量越大。
进一步地,根据每种菜品的预测下单数量向菜品提供方推荐备菜方案时,备菜方案包括菜品种类及每种菜品的预测下单数量,以使菜品提供方根据备菜方案备菜时,能够合理备菜,避免菜品因下单较少而浪费,实现资源的合理配置。
在本发明上述实施例中,通过获取每种菜品的菜品信息以及用户的饮食注意事项、饮食记录和操作记录来计算每种菜品的推荐值后,根据推荐值向用户推荐菜品,使得用户在饮食时具备饮食参考,并且由于推荐值与用户的饮食注意事项、饮食记录和操作记录相关,因此,推荐的菜品既能满足用户的喜好,又能防止用户食用到不利于自身健康的食物,使得用户能够方便地实现健康饮食。
进一步地,请参阅图3,是本发明实施例提供的一种饮食推荐装置的结构示意图,该饮食推荐装置各个模块的功能由上述饮食推荐设备400执行,用于向用户提供饮食参考,以方便用户实现健康饮食。
值得注意的是,本发明实施例所使用的术语“模块”为可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置可以以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能被构想的。
具体地,该饮食推荐装置包括:
获取模块10,用于获取菜品种类及每种菜品的菜品信息;以及,
用于获取用户的饮食信息,饮食信息包括饮食注意事项、饮食记录和操作记录;
计算模块20,用于根据每种菜品的菜品信息以及用户的饮食注意事项、饮食记录和操作记录,计算每种菜品的推荐值;
推荐模块30,用于根据推荐值向用户推荐菜品。
在一些实施例中,菜品信息包括:菜品数量和菜品食材;则,
计算模块20具体用于:
根据每种菜品的菜品食材以及用户的饮食注意事项,确定每种菜品的适用度;
根据用户的饮食记录,确定每种菜品的推荐指数;
根据用户的操作记录,确定每种菜品的喜爱分数;
根据每种菜品的菜品数量、每种菜品的适用度、每种菜品的推荐指数以及每种菜品的喜爱分数,计算每种菜品的推荐值。
在一些实施例中,计算模块20具体用于:
根据用户的操作记录,计算第二预设时间内各个菜品食材的贡献分;
根据各个菜品食材的贡献分,确定每种菜品的喜爱分数。
在一些实施例中,操作记录包括:搜索记录、点选记录、预约记录和下单记录;则,
根据用户的操作记录,计算第二预设时间内菜品食材的贡献分的公式为:
其中,U为单例菜品食材在第二预设时间内的贡献分,Cov(SC)/(N2-i)为单例菜品食材在时间间隔为N2-i时的搜索记录中的贡献分,Cov(SL)/(N2-i)为单例菜品食材在时间间隔为N2-i时的点选记录中的贡献分,Cov(OD)/(N2-i)为单例菜品食材在时间间隔为N2-i时的预约记录中的贡献分,Cov(UE)/(N2-i)为单例菜品食材在时间间隔为N2-i时的下单记录中的贡献分,N2-i为时间间隔,N2为第二预设时间。
在一些实施例中,饮食注意事项包括:宜用食材、可用食材、慎用食材和忌用食材,宜用食材对应第一预设适用度,可用食材对应第二预设适用度,慎用食材对应第三预设适用度,忌用食材对应第四预设适用度;则,
计算模块20具体用于:
确定菜品食材中是否包含忌用食材;
若菜品食材中包含忌用食材,则将第四预设适用度确定为菜品的适用度;
若菜品食材中未包含忌用食材,则确定菜品食材中是否包含慎用食材;
若菜品食材中包含慎用食材,则将第三预设适用度确定为菜品的适用度;
若菜品食材中未包含慎用食材,则确定菜品食材中是否包含宜用食材;
若菜品食材中包含宜用食材,则将第一预设适用度确定为菜品的适用度;
若菜品食材中未包含宜用食材,则将第二预设适用度确定为菜品的适用度。
在一些实施例中,计算模块20具体用于:
根据用户的饮食记录,统计第一预设时间内每种菜品的食用次数;
根据每种菜品的食用次数,确定每种菜品的推荐指数。
在一些实施例中,根据菜品的食用次数,确定菜品的推荐指数的公式为:
请参阅图4,在一些实施例中,该饮食推荐装置还包括:
确定模块40,用于在根据用户的操作记录,计算第二预设时间内各个菜品食材的贡献分之后,将贡献分大于预设贡献阈值的菜品食材确定为用户的喜爱食材。
在一些实施例中,确定模块40还用于:
确定每种菜品的相关指数;则,
计算模块20具体用于:
根据每种菜品的菜品数量、每种菜品的适用度、每种菜品的推荐指数、每种菜品的喜爱分数以及每种菜品的相关指数,计算每种菜品的推荐值。
在一些实施例中,确定菜品的相关指数的公式为:
其中,Oth(PM)为单例菜品的相关指数,为单例菜品中所有菜品食材作为喜爱食材的贡献分总和的平均值,为单例菜品中的第i个菜品食材作为喜爱食材的贡献分总和,Mi为单例菜品中的第i个菜品食材作为喜爱食材时的用户数量,P为单例菜品中的菜品食材总数。
在一些实施例中,根据菜品的菜品数量、菜品的适用度、菜品的推荐指数、菜品的喜爱分数以及菜品的相关指数,计算菜品的推荐值的公式为:
S=R*D*Hty(N1)*∑U*Oth(PM);
其中,S为单例菜品的推荐值,R为单例菜品的菜品数量,D为单例菜品的适用度,Hty(N1)为单例菜品的推荐指数,∑U为单例菜品的喜爱分数,Oth(PM)为单例菜品的相关指数。
在一些实施例中,推荐模块30具体用于:
按照推荐值由高到低的顺序向用户推荐菜品。
在一些实施例中,在根据每种菜品的菜品信息以及用户的饮食注意事项、饮食记录和操作记录,计算每种菜品的推荐值之后,
计算模块20还用于计算每种菜品的预测下单数量;
推荐模块30还用于根据每种菜品的预测下单数量向菜品提供方推荐备菜方案。
在一些实施例中,计算菜品的预测下单数量的公式为:
V=Fav(W)n-Z,n∈(0,1);
其中,V为单例菜品的预测下单数量,Fav(W)为单例菜品在所有用户中的推荐值总和,W为用户总数,n为动态参数,Z为单例菜品在前一日的剩余数量。
在一些实施例中,动态参数的计算公式为:
n=n1+E(V1);
其中,n为动态参数,n1为前一日的动态参数,E(V1)为单例菜品在前一日的预测下单数量与实际下单数量的差值。
由于装置实施例和方法实施例是基于同一构思,在内容不互相冲突的前提下,装置实施例的内容可以引用方法实施例的,在此不再一一赘述。
在其他一些可替代实施例中,上述获取模块10、计算模块20、推荐模块30以及确定模块40可以为饮食推荐设备400的处理芯片。
在本发明上述实施例中,通过获取每种菜品的菜品信息以及用户的饮食注意事项、饮食记录和操作记录来计算每种菜品的推荐值后,根据推荐值向用户推荐菜品,使得用户在饮食时具备饮食参考,并且由于推荐值与用户的饮食注意事项、饮食记录和操作记录相关,因此,推荐的菜品既能满足用户的喜好,又能防止用户食用到不利于自身健康的食物,使得用户能够方便地实现健康饮食。
进一步地,请参阅图5,是本发明实施例提供的一种饮食推荐设备的硬件结构示意图,包括:
一个或多个处理器410以及存储器420。其中,图5中以一个处理器410为例。
处理器410和存储器420可以通过总线或者其他方式连接,图5中以通过总线连接为例。
存储器420作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明上述实施例中的一种饮食推荐方法对应的程序指令以及一种饮食推荐装置对应的模块(例如,获取模块10、计算模块20、推荐模块30以及确定模块40等)。处理器410通过运行存储在存储器420中的非易失性软件程序、指令以及模块,从而执行一种饮食推荐方法的各种功能应用以及数据处理,即实现上述方法实施例中的一种饮食推荐方法以及上述装置实施例的各个模块的功能。
存储器420可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据一种饮食推荐装置的使用所创建的数据等。
所述存储数据区还存储有预设的数据,包括饮食注意事项与预设适用度的对应关系表、第一预设时间、第二预设时间、预设推荐阈值、预设贡献阈值、用户与喜爱食材的对照关系表等。
此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器420可选包括相对于处理器410远程设置的存储器,这些远程存储器可以通过网络连接至处理器410。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述程序指令以及一个或多个模块存储在所述存储器420中,当被所述一个或者多个处理器410执行时,执行上述任意方法实施例中的一种饮食推荐方法的各个步骤,或者,实现上述任意装置实施例中的一种饮食推荐装置的各个模块的功能。
上述产品可执行本发明上述实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明上述实施例所提供的方法。
本发明实施例还提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如图5中的一个处理器410,可使得计算机执行上述任意方法实施例中的一种饮食推荐方法的各个步骤,或者,实现上述任意装置实施例中的一种饮食推荐装置的各个模块的功能。
本发明实施例还提供了一种包含程序代码的计算机程序产品,当所述计算机程序产品在电子设备上运行时,所述电子设备能够执行上述任意方法实施例中的一种饮食推荐方法的各个步骤,或者,实现上述任意装置实施例中的一种饮食推荐装置的各个模块的功能。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施例的描述,本领域普通技术人员可以清楚地了解到各实施例可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施方法的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (13)
1.一种饮食推荐方法,其特征在于,包括:
获取菜品种类及每种菜品的菜品信息;
获取用户的饮食信息,所述饮食信息包括饮食注意事项、饮食记录和操作记录;
根据所述每种菜品的菜品信息以及所述用户的饮食注意事项、饮食记录和操作记录,计算所述每种菜品的推荐值;
根据所述推荐值向所述用户推荐菜品。
2.根据权利要求1所述的方法,其特征在于,所述菜品信息包括:菜品数量和菜品食材;则,
所述根据所述每种菜品的菜品信息以及所述用户的饮食注意事项、饮食记录和操作记录,计算所述每种菜品的推荐值,具体包括:
根据所述每种菜品的菜品食材以及所述用户的饮食注意事项,确定所述每种菜品的适用度;
根据所述用户的饮食记录,确定所述每种菜品的推荐指数;
根据所述用户的操作记录,确定所述每种菜品的喜爱分数;
根据所述每种菜品的菜品数量、所述每种菜品的适用度、所述每种菜品的推荐指数以及所述每种菜品的喜爱分数,计算所述每种菜品的推荐值。
3.根据权利要求2所述的方法,其特征在于,所述根据所述用户的操作记录,确定所述每种菜品的喜爱分数,具体包括:
根据所述用户的操作记录,计算第二预设时间内各个菜品食材的贡献分;
根据所述各个菜品食材的贡献分,确定所述每种菜品的喜爱分数。
4.根据权利要求3所述的方法,其特征在于,所述操作记录包括:搜索记录、点选记录、预约记录和下单记录;则,
根据所述用户的操作记录,计算第二预设时间内菜品食材的贡献分的公式为:
其中,U为单例菜品食材在第二预设时间内的贡献分,Cov(SC)/(N2-i)为单例菜品食材在时间间隔为N2-i时的搜索记录中的贡献分,Cov(SL)/(N2-i)为单例菜品食材在时间间隔为N2-i时的点选记录中的贡献分,Cov(OD)/(N2-i)为单例菜品食材在时间间隔为N2-i时的预约记录中的贡献分,Cov(UE)/(N2-i)为单例菜品食材在时间间隔为N2-i时的下单记录中的贡献分,N2-i为时间间隔,N2为所述第二预设时间。
5.根据权利要求3或4所述的方法,其特征在于,所述根据所述用户的操作记录,计算第二预设时间内各个菜品食材的贡献分的步骤之后,所述方法还包括:
将所述贡献分大于预设贡献阈值的菜品食材确定为所述用户的喜爱食材。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
确定所述每种菜品的相关指数;则,
所述根据所述每种菜品的菜品数量、所述每种菜品的适用度、所述每种菜品的推荐指数以及所述每种菜品的喜爱分数,计算所述每种菜品的推荐值,具体包括:
根据所述每种菜品的菜品数量、所述每种菜品的适用度、所述每种菜品的推荐指数、所述每种菜品的喜爱分数以及所述每种菜品的相关指数,计算所述每种菜品的推荐值。
8.根据权利要求6或7所述的方法,其特征在于,根据菜品的菜品数量、菜品的适用度、菜品的推荐指数、菜品的喜爱分数以及菜品的相关指数,计算菜品的推荐值的公式为:
S=R*D*Hty(N1)*∑U*Oth(PM);
其中,S为单例菜品的推荐值,R为单例菜品的菜品数量,D为单例菜品的适用度,Hty(N1)为单例菜品的推荐指数,∑U为单例菜品的喜爱分数,Oth(PM)为单例菜品的相关指数。
9.根据权利要求1至8中任一项所述的方法,其特征在于,所述根据所述每种菜品的菜品信息以及所述用户的饮食注意事项、饮食记录和操作记录,计算所述每种菜品的推荐值的步骤之后,所述方法还包括:
计算所述每种菜品的预测下单数量;
根据所述每种菜品的预测下单数量向菜品提供方推荐备菜方案。
10.根据权利要求9所述的方法,其特征在于,计算菜品的预测下单数量的公式为:
V=Fav(W)n-Z,n∈(0,1);
其中,V为单例菜品的预测下单数量,Fav(W)为单例菜品在所有用户中的推荐值总和,W为用户总数,n为动态参数,Z为单例菜品在前一日的剩余数量。
11.根据权利要求10所述的方法,其特征在于,所述动态参数的计算公式为:
n=n1+E(V1);
其中,n为动态参数,n1为前一日的动态参数,E(V1)为单例菜品在前一日的预测下单数量与实际下单数量的差值。
12.一种饮食推荐设备,其特征在于,包括:
至少一个处理器,以及,
与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够用于执行如权利要求1至11中任一项所述的一种饮食推荐方法。
13.一种包含程序代码的计算机程序产品,其特征在于,当所述计算机程序产品在电子设备上运行时,使得所述饮食推荐设备执行如权利要求1至11中任一项所述的一种饮食推荐方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911242876.6A CN110931110A (zh) | 2019-12-06 | 2019-12-06 | 一种饮食推荐方法及其设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911242876.6A CN110931110A (zh) | 2019-12-06 | 2019-12-06 | 一种饮食推荐方法及其设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110931110A true CN110931110A (zh) | 2020-03-27 |
Family
ID=69857418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911242876.6A Pending CN110931110A (zh) | 2019-12-06 | 2019-12-06 | 一种饮食推荐方法及其设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110931110A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114783567A (zh) * | 2022-03-23 | 2022-07-22 | 清华大学 | 菜单推送方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107391947A (zh) * | 2017-07-31 | 2017-11-24 | 长安大学 | 一种健康饮食推荐系统及方法 |
WO2018081175A1 (en) * | 2016-10-24 | 2018-05-03 | Habit, Llc | System and method for implementing meal selection based on vitals, genotype, and phenotype |
CN110162688A (zh) * | 2018-03-14 | 2019-08-23 | 吴静 | 一种基于智能家居的冰箱食物推荐方法 |
-
2019
- 2019-12-06 CN CN201911242876.6A patent/CN110931110A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018081175A1 (en) * | 2016-10-24 | 2018-05-03 | Habit, Llc | System and method for implementing meal selection based on vitals, genotype, and phenotype |
CN107391947A (zh) * | 2017-07-31 | 2017-11-24 | 长安大学 | 一种健康饮食推荐系统及方法 |
CN110162688A (zh) * | 2018-03-14 | 2019-08-23 | 吴静 | 一种基于智能家居的冰箱食物推荐方法 |
Non-Patent Citations (1)
Title |
---|
张蕾: "基于LAMP的网上订餐系统开发研究", 《电脑知识与技术》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114783567A (zh) * | 2022-03-23 | 2022-07-22 | 清华大学 | 菜单推送方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9922530B2 (en) | Method and device for generating information | |
US10347152B2 (en) | Indirect bio-feedback health and fitness management system | |
US10262302B2 (en) | Recipe selection system with bidirectional calendar interface | |
US9087364B1 (en) | System for enhancing the restaurant experience for persons with food sensitivities/preferences | |
CN110135957A (zh) | 一种智能餐厅健康饮食的菜品推荐方法、装置及存储介质 | |
CN108769159A (zh) | 一种电子菜谱智能推荐方法 | |
KR102013775B1 (ko) | 사용자 취향에 따라 맞춤형 반찬 주문이 가능한 음식 주문 시스템 및 그 운용 방법 | |
CN106326657B (zh) | 服药计划的推荐方法及系统 | |
JP2002041670A (ja) | 情報推薦装置、及び情報推薦システム | |
KR102189232B1 (ko) | 생활 습관을 기반으로 콘텐츠를 제공하는 방법, 시스템 및 비일시성의 컴퓨터 판독 가능 기록 매체 | |
CN104408553A (zh) | 健康减肥管理系统及其管理方法 | |
CN105224990A (zh) | 订餐信息的处理方法 | |
JP7054271B2 (ja) | 情報提供システム、情報提供方法および情報提供プログラム | |
JP6858321B2 (ja) | 情報提供システム、情報提供方法および情報提供プログラム | |
JP6641460B2 (ja) | 情報処理装置、情報処理方法、プログラム | |
US20140335481A1 (en) | Health management system, devices, and related methods | |
US20150132725A1 (en) | Dish information providing method and system | |
CN110910988A (zh) | 一种饮食推荐方法、装置及其设备 | |
CN109377416A (zh) | 菜单信息的生成方法、装置及设备 | |
KR20170137345A (ko) | 개인 맞춤형 요리 서비스 제공 방법 | |
CN110931110A (zh) | 一种饮食推荐方法及其设备 | |
CN116628338A (zh) | 一种移动端产品推荐方法、系统、计算机和可读存储介质 | |
CN110966838A (zh) | 食物冷藏信息监控方法、装置、电子设备和存储介质 | |
JP6563795B2 (ja) | 健康情報活用システム、方法及びプログラム | |
JP2019070999A (ja) | 価格算出装置、価格算出方法、価格算出プログラムおよび価格算出システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200327 |