ChatDiet-基于大模型增强框架的AI营养师,提升个性化营养导向的食物推荐Chatbot

图片

ChatDiet: Empowering personalized nutrition-oriented food recommender chatbots through an 

LLM-augmented framework

摘要

食物对健康的深远影响需要先进的以营养为导向的食物推荐服务。传统方法通常缺乏个性化、可解释性和互动性的关键要素。虽然大型语言模型(LLMs)带来了可解释性和解释性,但它们单独使用未能实现真正的个性化。本文介绍了ChatDiet,一个专为个性化营养导向食物推荐聊天机器人设计的新型LLM驱动框架。ChatDiet整合了个人模型和人群模型,辅以一个协调器,无缝检索和处理相关信息。个人模型利用因果发现和推理技术评估特定用户的个性化营养效果,而人群模型提供关于食物营养成分的概括信息。协调器检索、协同并传递两个模型的输出给LLM,提供旨在支持目标健康结果的定制食物推荐。其结果是动态传递个性化且可解释的食物推荐,根据个别用户偏好量身定制。我们对ChatDiet的评估包括一个引人注目的案例研究,我们建立了一个因果个人模型来估计个体营养效果。我们的评估包括一项展示出92%有效率的食品推荐测试,并附有说明性对话示例,突显了ChatDiet在可解释性、个性化和互动性方面的优势。

 引言

食物在我们的生活中扮演着关键角色,对人类健康产生深远影响。广泛的研究证实,营养不仅有助于整体幸福感,还在疾病管理、睡眠调节、情绪调节和免疫功能增强方面发挥着至关重要的作用(Hu,2002年;Mathers,2019年;Raut、Prabhu、Fatehpuria、Bangar和Sahu,2018年)。饮食选择对肠道微生物群的影响是这种联系的一个有力例证。在这方面,地中海饮食是一个典型的典范。富含水果、蔬菜和谷物,低脂肪,这种饮食方式在保护和促进肠道健康方面显得尤为重要(Singh等人,2017年;Valdes、Walter、Segal和Spector,2018年)。

饮食与健康之间的这种复杂关系激发了人们利用技术提供食品推荐服务的日益浓厚兴趣。这些服务提供饮食计划指导,有助于改善健康结果。常规的食品推荐服务通常基于个人是否喜欢某种食物来优先考虑个别食品偏好,较少强调考虑营养健康方面(Min、Jiang和Jain,2019年)。相比之下,以营养为导向的食品推荐作为一种食品推荐形式,认识到饮食模式对个体健康的重大影响。

众多研究已经对多种以营养为导向的食物推荐方法的发展做出了贡献(Agapito等人,2018年;Iwendi、Khan、Anajemba、Bashir和Noor,2020年;Micha等人,2017年;Story、Kaphingst、Robinson-O'Brien和Glanz,2008年)。这些方法不仅简化了选择饮食的过程,还促进了用户采纳可持续和注重健康的习惯。这些建议的力量在于它们能够整合营养科学,以满足人群或亚人群层面的需求,为寻求做出明智饮食决策的个人提供直观实用的指南。

然而,传统的以营养为导向的食物推荐服务在全面理解个体健康与幸福感之间复杂的相互作用方面遇到了限制,包括生理参数、身体活动和睡眠质量,并将它们与个性化的营养需求对齐。更确切地说,这些系统在定制其食物建议以满足个人的具体营养需求时经常遇到挑战。营养对个体影响的固有变异性引起了关于缺乏真正个性化的担忧。此外,目前普遍依赖基于人群的营养标准,可能会忽视营养响应中的细微个体差异。

此外,当前的食物推荐服务缺乏必要的可解释性元素。这些服务通常依赖于作为“黑盒”运作的机器学习模型,使得阐明其推荐理由变得具有挑战性。值得注意的是,基于人口标准的以营养为导向的食物推荐服务在解释针对个体化营养需求的建议时面临困难。另一个重大缺陷在于缺乏互动性。这些系统在动态响应用户反馈、纳入新的偏好以及适应用户状态变化(例如临时饮食选择或与特定食物相关的限制)方面存在不足。

我们认为当前大型语言模型(LLMs)的进展为克服这些限制提供了机会。LLMs能够提供可解释和可阐释的建议,特别是在以互动方式使用时,如作为聊天机器人(Birkun & Gautam,2023年;Jeon & Lee,2023年)。然而,必须认识到,仅靠LLMs在提供营养导向食物推荐所需的个性化程度方面存在不足。它们缺乏整合和利用个人数据进行分析以进行推荐和用户互动的能力。因此,需要一个全面的框架,利用LLMs进行食物推荐,同时整合多样的人口级和个人数据来源。

本文提出了一个基于LLMs的个性化营养导向食物推荐聊天机器人框架,名为ChatDiet。我们介绍了一个作为问题解决者的协调器,用于处理与食物相关的问题。该协调器分析输入的查询,并通过与个人和人群模型互动来提取相关信息。随后,通过将所获得的信息输入到大型语言模型(LLM)中生成响应。我们利用因果发现和推断方法从用户数据中提取出因果个人模型,考虑个人营养对健康结果的影响。我们通过一个案例研究展示了该框架的能力,该案例研究包括使用可穿戴和移动设备收集的一名个体在三年时间内收集的健康数据。我们通过食物推荐有效性测试对ChatDiet进行评估,以评估其提供个性化且可解释的食物推荐的能力。我们还展示了对话示例,以说明ChatDiet的互动性。

核心速览

研究背景

  1. 研究问题

    :这篇文章要解决的问题是如何通过大型语言模型(LLMs)增强的营养导向食物推荐聊天机器人(ChatDiet),提供个性化、可解释和互动的食物推荐。

  2. 研究难点

    :该问题的研究难点包括:传统方法缺乏个性化、可解释性和互动性;LLMs虽然具有可解释性,但单独使用无法实现真正的个性化;需要整合个人和人群模型,并提供动态的、个性化的食物推荐。

  3. 相关工作

    :该问题的研究相关工作包括营养导向的食物推荐方法、LLMs在推荐任务中的应用等。例如,Agapito等人(2018)利用用户健康状况建议对慢性肾病患者的有益食物;Iwendi等人(2020)将食物特征、生物计量数据和疾病特定信息结合起来开发患者食物推荐。

研究方法

这篇论文提出了ChatDiet框架,用于解决营养导向食物推荐的问题。具体来说,

  1. Orchestrator:作为问题解决器,Orchestrator负责处理用户的查询,从个人模型和人群模型中检索相关信息,并将这些信息转化为适合LLMs处理的文本格式。Orchestrator执行三个主要任务:检索、转录和提示工程。

    图片

  2. Personal Model:个人模型结合了用户的个人数据,包括食物偏好评分、饮食历史、电子健康记录和从可穿戴设备收集的生理信号。使用因果发现和因果推断方法来确定营养对健康结果的影响。具体方法包括使用结构无关建模(SAM)算法进行因果发现,并通过因果推断方法估计个体治疗效应(ATE)。

  3. Population Model:人群模型包含了不特定于个人的信息,如食物知识图谱、一般营养标准、公共饮食指南和营养补充事实。该模型作为一个食物知识加载函数,直接从食物数据库中选择和加载营养信息。

  4. Generative Response:利用语言模型处理来自Orchestrator的文本,生成个性化的营养导向食物推荐。使用的语言模型是gpt-3.5-turbo。

实验设计

  1. 数据收集

    :实验使用了来自一个参与者的N-of-1数据集,该参与者在三年期间使用多种设备收集了睡眠、身体活动、皮肤温度、心率和心率变异性等数据。还使用了Cronometer食物日志应用程序和Apple Health Kit来跟踪饮食和健康指标。

  2. 数据增强

    :为了在更大的样本量上评估ChatDiet,生成了365天的合成数据,模拟了100个增强参与者的数据。每个增强参与者都有一个个性化的因果图,链接营养因素和健康结果。

  3. 实验设置

    :实验包括四个主要组件:Orchestrator、个人模型、人群模型和语言模型。Orchestrator使用BM25检索算法、指导提示和链式思维提示工程方法。个人模型使用SAM算法进行因果发现,并通过DoWhy库进行因果推断。人群模型直接从食物数据库中加载营养信息。

结果与分析

  1. 个性化食物推荐的准确性:通过食物推荐有效性测试,ChatDiet在HRV、整体睡眠质量、REM睡眠持续时间和深度睡眠持续时间方面的推荐准确性分别为0.95、0.93、0.85和0.95。

  2. 可解释性展示:通过对话示例展示了ChatDiet的可解释性,系统能够展示其推荐背后的逻辑和决策过程。例如,当用户希望提高REM睡眠持续时间时,ChatDiet推荐了富含维生素E、缬氨酸和蛋白质的食物,如杏仁,并解释了这些营养素对睡眠的积极影响。

    图片

  3. 个性化展示:通过比较ChatDiet在有和没有个人数据的情况下的推荐,展示了其个性化策略。系统不仅承认Omega-3的积极作用,还评估了蛋白质含量的建设性影响,展示了其根据个人营养需求定制建议的能力。

    图片

  4. 互动性展示:通过对话示例展示了ChatDiet的互动性,系统能够有效地回应用户的后续问题,提供替代选项,确保推荐的相关性和适应性。

    图片

总体结论

这篇论文介绍了ChatDiet,一个基于LLMs的营养导向食物推荐框架。通过结合个人和人群模型以及动态的Orchestrator,ChatDiet提供了个性化和可解释的食物推荐。实验结果表明,ChatDiet在食物推荐的有效性、可解释性和互动性方面表现出色,达到了92%的有效性率。ChatDiet代表了利用技术改善饮食选择和整体健康的重大进展。

论文评价

优点与创新

  1. 个性化营养推荐

    :ChatDiet通过结合个人和人群模型,利用因果发现和推断技术,提供个性化的营养效果评估,从而实现针对特定用户的个性化食物推荐。

  2. 可解释性

    :ChatDiet强调可解释性,能够展示推荐背后的逻辑和决策过程,使用户能够清楚地理解推荐的理由。

  3. 交互性

    :ChatDiet展示了强大的交互能力,能够动态响应用户的后续问题,适应用户的偏好变化,提供动态的互动对话体验。

  4. 高有效性率

    :在食物推荐测试中,ChatDiet达到了92%的有效性率,显著展示了其在提供个性化和可解释食物推荐方面的优势。

  5. 案例研究

    :通过一个三年的纵向数据集,展示了ChatDiet在实际应用中的潜力,验证了其框架的实用性和有效性。

不足与反思

  1. 数据局限性

    :ChatDiet的个性化食物建议仅限于数据集中可用的因素,如果用户查询缺乏明确的因素名称,可能会导致不准确的推荐。

  2. 幻觉问题

    :在某些情况下,ChatDiet的输出与提供的个人营养效应相矛盾,尽管语言模型承认了个人影响,但仍然会出现不一致的推荐,这削弱了建议的可信度和可靠性。

  3. 未来工作

    :未来的工作将集中在假设场景下对用户偏好的反事实分析上,以预测他们未来的参与度并生成基于这些模拟的个性化推荐。这将有助于超越过去的行为分析,为用户提供更准确和有效的服务。

关键问题及回答

问题1:ChatDiet框架中的Orchestrator是如何处理用户查询的?

Orchestrator在ChatDiet框架中扮演着问题解决器的角色,负责处理用户的查询。它执行三个主要任务:检索、转录和提示工程。

  1. 检索

    :Orchestrator从个人模型和人群模型中检索与用户查询最相关的信息。例如,如果用户查询与深度睡眠相关,Orchestrator会使用BM25算法检索对深度睡眠有显著影响的营养素,然后检索含有这些营养素的食物。

  2. 转录

    :Orchestrator将非文本信息转换为文本格式,以便LLM能够处理。这包括将时间序列数据和其他非文本结构转换为适合LLM输入的文本。

  3. 提示工程

    :Orchestrator设计提示以指导LLM,确保其理解其在对话中的角色和上下文。例如,Orchestrator会提供一个指令模板,要求LLM根据用户的个人营养效应和提供的食物成分列表提供食物推荐。

通过这些步骤,Orchestrator能够有效地处理和增强ChatDiet的食物推荐。

问题2:ChatDiet的个人模型如何利用因果发现和推断方法来确定营养对健康结果的影响?

ChatDiet的个人模型使用因果发现和因果推断方法来确定营养对健康结果的影响。具体步骤如下:

  1. 因果发现

    :使用结构无关建模(SAM)算法进行因果发现。SAM算法通过对抗性学习来结合条件独立关系和数据不对称性,从而在模型复杂性和数据拟合之间取得平衡。通过SAM算法,ChatDiet能够生成一个因果图,描绘日常营养摄入与健康结果之间的关系。

  2. 因果推断

    :在获得因果图后,使用因果推断方法(如ATE)来估计个体治疗效应。ATE量化了治疗或干预对结果的平均影响。通过因果推断,ChatDiet能够评估不同营养素对健康结果的具体影响,例如维生素B1对深度睡眠持续时间的影响。

  3. 中介分析

    :为了更准确地评估营养对健康结果的影响,ChatDiet进行了中介分析。中介分析通过调查中间过程来揭示独立变量如何通过中介变量影响依赖变量,从而提供更详细的因果路径解释。

通过这些方法,ChatDiet的个人模型能够提供个性化的营养建议,帮助用户根据其独特的营养需求和健康状况做出更明智的饮食选择。

问题3:ChatDiet在食物推荐有效性测试中的表现如何?

在食物推荐有效性测试中,ChatDiet表现出色,达到了92%的有效性率。具体表现如下:

  1. 目标健康结果

    :测试选择了HRV、整体睡眠质量、REM睡眠持续时间和深度睡眠持续时间作为目标健康结果。

  2. 用户查询

    :生成了400个用户查询,每个查询对应一个目标健康结果。

  3. 评估标准

    :手动评估ChatDiet提供的推荐及其解释,确保推荐的内容和营养效应与用户的个人数据一致。如果推荐内容和相关解释与用户的个人营养需求相符,则分类为“正确”。

  4. 有效性比率

    :计算推荐有效性比率(RER),即“正确”推荐的占比。结果显示,ChatDiet在HRV、整体睡眠质量、REM睡眠持续时间和深度睡眠持续时间方面的推荐准确性分别为0.95、0.93、0.85和0.95。

这些结果表明,ChatDiet能够提供准确且个性化的食物推荐,并为其推荐提供合理的解释,满足了用户对可解释性和个性化食物推荐的需求。

 

如何学习AI大模型?

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。


👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。


1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值