当前位置: 首页 > news >正文

应用分享:基于 Grounding DINO 的智能膳食助手如何推进健康信息学发展

一、引言

在快速发展的移动健康应用领域,膳食辅助工具已成为管理糖尿病等健康状况和促进更好营养习惯的重要组成部分。本文介绍了一种创新的膳食管理方法,通过移动应用程序利用先进的机器学习技术进行食物识别和个性化营养指导

来自摩洛哥阿卡瓦因大学的 Abdelilah Nossair 和 Hamza El Housni 的这项工作融合了多个前沿领域:计算机视觉、零样本学习、移动健康技术和营养学。与现有解决方案相比,该应用的独特之处在于使用了 Grounding DINO 模型,该模型无需大量标记的训练数据即可实现准确的食物识别

二、研究背景与目标

智能膳食助手应用的开发解决了健康信息学中的几个关键需求:

(1)个性化膳食管理:与饮食相关的健康问题日益普遍,需要提供定制化的营养指导。

(2)准确的食物识别:传统的饮食应用通常难以准确识别食物,限制了其实用性。

(3)数据隐私问题:健康信息需要严格的隐私保护,而许多商业应用未能优先考虑这一点。

(4)用户友好界面:需要以易于理解的格式呈现复杂的营养信息,以鼓励用户经常使用。

这项研究的主要目标是开发一款克服这些挑战的移动应用,利用先进的计算机视觉模型,特别是在零样本目标检测方面表现出色的 Grounding DINO 模型。这一能力使应用程序无需针对每种特定食物类型进行训练就能识别食物。

三、方法论

研究采用了多层面的方法论:

(1)技术选择:研究者选择了 React Native 和 TypeScript 进行跨平台移动开发,PostgreSQL 进行数据管理,以及 Grounding DINO 模型进行对象检测。

(2)系统架构设计:设计了一个综合架构,整合了认证、机器学习推理、数据存储和监控组件。

(3)数据处理:应用程序使用自托管的 PostgreSQL 数据库存储食品信息和健康洞察,确保数据完整性和用户隐私。

(4)调查设计:为评估应用程序的有效性,设计了使用李克特量表(Likert scales)和多项选择题的调查,以评估可用性、准确性和用户满意度。

(5)模型训练和验证:针对食物识别配置了 Grounding DINO 模型,数据按以下比例分配:70%用于训练,15%用于验证,15%用于测试。

四、系统架构

智能膳食助手应用具有结构良好的系统架构,集成了多个组件以实现最佳功能、安全性和性能:

图1 系统架构图,展示了智能饮食助手应用程序不同组件之间的相互连接情况。

该系统由几个关键组件组成:

(1)移动设备(客户端):使用 React Native 和 TypeScript 构建的面向用户的应用程序。

(2)认证服务:利用 Firebase Authentication 进行安全用户管理。

(3)应用服务器:使用 Python 和 Django 构建,处理业务逻辑和用户请求。

(4)数据库:自托管的 PostgreSQL 数据库,用于存储食品信息和营养信息。

(5)机器学习服务器:托管 Grounding DINO 模型的 TensorFlow 实现,用于食物识别。

(6)分析和监控:实施 Prometheus 和 Grafana 进行持续性能监控。

(7)数据隐私层:使用 AES 加密和 TLS 协议确保整个系统的数据安全。

数据流程从用户交互开始,经过用户配置文件定制、图像捕获和上传、后端处理与机器学习分析、营养数据检索和分析,最后向用户呈现相关的饮食见解。

五、技术实现

智能膳食助手应用的技术实现涉及几个复杂的组件:

1. 基于 Grounding DINO 的零样本学习

Grounding DINO 模型代表了目标检测技术的重大进步。与传统的监督学习模型不同,后者需要为每个食物类别提供大量标记数据集,而 Grounding DINO 可以使用自然语言提示识别对象,使其非常适合多样化和复杂的食物识别领域。

该模型使用以下通用框架来运行:

# Simplified representation of Grounding DINO implementationimport groundingdino.datasets.transforms as T
from groundingdino.models import build_model
from groundingdino.util.utils import clean_state_dict

# Load model
model = build_model(args)
checkpoint = torch.load(path_to_model, map_location="cpu")
model.load_state_dict(clean_state_dict(checkpoint["model"]), strict=False)
model.eval()# Process image and text prompt
transform = T.Compose([
    T.RandomResize([800], max_size=1333),
    T.ToTensor(),
    T.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])])
image_transformed, _ = transform(image_pil, None)# Detect food itemswith torch.no_grad():
    outputs = model(image_transformed, captions=["food item"])
    boxes, logits, phrases = outputs["pred_boxes"], outputs["pred_logits"], outputs["pred_phrases"]

2. 跨平台移动应用

客户端应用程序使用 React Native 和 TypeScript 开发,确保 iOS 和 Android 平台的兼容性,同时保持性能。该应用包括以下模块:

(1)用户身份验证和个人资料管理;

(2)食物图像捕获和处理;

(3)显示营养信息和建议;

(4)饮食模式的历史跟踪;

(5)基于用户个人资料的个性化健康见解。

3. 后端处理和数据库管理

服务器端实现使用 Python 和 Django 处理请求,PostgreSQL 存储数据。数据库架构包括以下表格:

(1)用户个人资料和健康参数;

(2)食物项目和营养价值;

(3)基于健康状况的饮食建议;

(4)用于性能优化的使用分析。

六、模型性能

Grounding DINO 模型在食物识别任务中表现出色。关键性能指标包括:

(1)精确率:90.79%;

(2)准确率:87.98%;

(3)召回率:93.84%;

(4)F1分数:92.30%。

这些指标表明该模型能够从图像中准确识别各种食物的强大能力,即使是遇到训练数据中未明确包含的食物也是如此。这种零样本学习能力在现实场景中特别有价值,因为用户可能会消费多种文化多样的食物。

该模型的性能可以通过以下用于计算 F1 分数的公式来表示:

如此高的 F1 分数表明在精确率和召回率之间达到了良好的平衡,确保了该应用程序能够以极少的误报或漏报正确识别出食品项目。

七、用户体验与验证

研究人员进行了全面调查,评估应用程序的可用性、准确性和用户满意度。主要发现包括:

(1)用户友好性:调查参与者对应用程序的界面和易用性表示高度满意;

(2)准确性认知:用户认为食物识别能力和营养建议准确可靠;

(3)隐私信任:受访者对应用程序的数据处理方式和隐私措施表示信任;

(4)净推荐值(NPS):应用程序获得了 41.3 的NPS,表明用户满意度高,且有可能向他人推荐该应用。

用户满意度指标表明,应用程序的技术复杂性并不影响其可访问性,使其适合具有不同技术水平的多样化用户群体。

八、数据隐私和安全

智能膳食助手应用的突出特点是对数据隐私和安全的重视。研究人员实施了几项措施来保护敏感的健康信息:

(1)自托管数据库:通过使用自托管的 PostgreSQL 数据库,应用程序与基于云的替代方案相比,对数据存储和访问保持更大的控制权。

(2)AES 加密:采用高级加密标准加密来保护静态数据。

(3)TLS 协议:传输层安全性保护客户端和服务器之间传输的数据。

(4)Firebase 身份验证:安全的用户身份验证防止未经授权访问个人健康信息。

(5)持续监控:使用 Prometheus 和 Grafana 检测并响应潜在的安全异常。

这些以隐私为中心的设计决策使该应用程序区别于许多可能优先基于商业目的进行数据收集,而非保护用户隐私的商业替代方案。

九、意义与影响

智能膳食助手应用对健康信息学领域做出了几项重要贡献:

(1)零样本学习的应用:将 Grounding DINO 用于食物识别,展示了尖端 AI 技术在日常健康管理中的实际应用。

(2)个性化饮食指导:应用程序根据个人健康状况提供定制的营养建议,对糖尿病等疾病患者特别有价值。

(3)保护隐私的健康技术:对数据安全的重视为负责任的健康应用开发树立了榜样。

(4)跨文化适用性:模型的零样本能力使其在多元文化食品环境中具有潜在价值。

其潜在影响不仅限于个人用户,还延伸到更广泛的医疗保健生态系统,此类应用可以补充专业饮食咨询,减轻医疗服务提供者的负担,并为以营养为重点的公共健康计划做出贡献。

十、局限性和未来工作

在原文中,研究人员承认该应用存在一些局限性和,并给出未来改进的方向:

(1)扩展食物识别能力:进一步完善模型,以识别更复杂的菜肴和混合食物。

(2)与可穿戴设备集成:未来版本可以整合来自血糖监测仪、活动追踪器和其他健康设备的数据,实现更全面的健康管理。

(3)纵向饮食分析:开发功能追踪长期饮食习惯并提供洞察。

(4)文化适应:增强应用程序以更好地识别并提供多元文化食物的营养信息。

(5)临床验证:进行临床试验,验证使用该应用程序管理糖尿病等疾病的健康影响。

结论

本应用通过使用 Grounding DINO 模型的零样本学习能力,推动了膳食辅助技术的进步。此外,优秀的性能指标,以及积极的用户反馈表明,这种方法在改善膳食管理方面具有相当大的潜力,特别是对于具有特定健康状况的个体。随着移动健康技术的不断发展,将 Grounding DINO 等先进的 AI 模型与用户友好界面和隐私保护机制的集成为未来健康信息学创新设定了宝贵先例。

通过连接计算机视觉、零样本学习和营养科学之间的鸿沟,智能膳食助手应用展示了跨学科方法在以个性化方式解决复杂健康挑战方面的潜力。

参考资料

1. 论文《Eating Smart: Advancing Health Informatics with the Grounding DINO based Dietary Assistant App》,作者:Abdelilah Nossair 和 Hamza El Housni。链接:https://arxiv.org/pdf/2406.00848

2. 在 DINO-X 开放平台调用最新的 DINO 模型 API:https://cloud.deepdataspace.com/

3. Grounding DINO Playground:https://cloud.deepdataspace.com/playground/grounding_dino

相关文章:

  • Qt样式表(窗口、按钮之类,有图片和代码详细注释)
  • Windows单机模拟MySQL主从复制
  • Spring MVC 全栈指南:RESTful 架构、核心注解与 JSON 实战解析
  • 什么是Lodash
  • Linux 常用命令 - ip 【显示和配置网卡参数】
  • 【深度学习】自定义实现DataSet和DataLoader
  • zlm启用webrtc交叉编译指南
  • [免费]SpringBoot+Vue外卖(点餐)平台系统【论文+源码+SQL脚本】
  • 「出海匠」借助CloudPilot AI实现AWS降本60%,支撑AI电商高速增长
  • 鸿蒙开发-动画
  • C++核心机制-this 指针传递与内存布局分析
  • 读者、写者问题优化
  • 在AMGCL中使用多个GPU和多个计算节点求解大规模稀疏矩阵方程
  • JVM考古现场(十九):量子封神·用鸿蒙编译器重铸天道法则
  • 智能合约安全审计平台——以太坊虚拟机安全沙箱
  • Font Maker的成功之路:产品迭代与创新营销助力增长
  • 国达陶瓷重磅推出陶瓷罗马柱外墙整装尖端新产品“冠岩臻石”
  • Profibus DP主站转modbusTCP网关与dp从站通讯案例
  • 在vue项目中package.json中的scripts 中 dev:“xxx“中的xxx什么概念
  • 爬虫:一文掌握 curl-cffi 的详细使用(支持 TLS/JA3 指纹仿真的 cURL 库)
  • 男子拍摄女性视频后在网上配发诱导他人违法犯罪文字,已被警方行拘
  • 马克龙:美乌欧在法磋商乌克兰问题“积极且有建设性”
  • 国家统计局:3月全国城镇不包含在校生的16-24岁劳动力失业率降至16.5%
  • 图解|回应期盼、可感可及!26项措施打开上海民营经济发展新天地
  • 李强在北京调研:以更大力度促进消费扩大内需做强国内大循环