开放营养数据集比较:USDA、Open Food Facts、Nutrola 和 FatSecret
对主要营养数据集进行详细比较,包括 USDA FoodData Central、Open Food Facts、Nutrola 和 FatSecret。涵盖数据质量、覆盖范围、更新频率、API 访问、许可以及哪个数据集最适合您的使用案例。
每个营养应用、饮食研究和食品科技产品的核心都依赖于食品成分数据库。该数据库的质量、覆盖范围和可访问性决定了最终产品的准确性。然而,大多数用户甚至许多开发者从未深入了解他们屏幕上卡路里计数背后的数据。不同的数据库各有优缺点、更新周期和许可条款,这些都影响着它们的使用方式和场合。
本文将对四个最广泛使用的营养数据集进行深入比较:USDA FoodData Central、Open Food Facts、Nutrola 和 FatSecret。我们将从覆盖范围、数据质量、更新频率、可访问性、许可和不同使用案例的适用性等方面对它们进行评估。无论您是选择数据源的开发者、选择参考标准的研究人员,还是仅仅是想了解您的应用程序卡路里计数来源的好奇用户,本指南都将帮助您做出明智的选择。
一目了然的比较
| 特征 | USDA FoodData Central | Open Food Facts | Nutrola | FatSecret |
|---|---|---|---|---|
| 食品条目总数 | 370,000+ | 3,000,000+ | 900,000+ | 500,000+ |
| 主要数据类型 | 参考 + 品牌 | 包装产品 | 常见 + 品牌 + 餐厅 | 常见 + 品牌 |
| 地理重点 | 美国 | 全球(以欧盟为主) | 全球(50+个国家) | 全球(以美国为主) |
| 每条条目的营养成分 | 多达150种 | 可变(5-40种) | 30+种标准 | 15-25种 |
| 更新频率 | 每季度(主要),滚动(品牌) | 持续(众包) | 每月(主要),每日(个别) | 持续 |
| 数据收集方法 | 实验室分析 + 制造商 | 众包(用户扫描) | 多源验证 | 多源 + 社区 |
| API 访问 | 是(免费) | 是(免费) | 是(免费层 + 付费) | 是(免费但需注明出处) |
| 批量下载 | 是 | 是 | 付费层 | 否 |
| 许可 | 公共领域 | 开放数据库许可(ODbL) | 专有(API 访问) | 专有(API 访问) |
| 条形码/UPC 数据 | 是(品牌子集) | 是(主要关注) | 是 | 是 |
| 餐厅食品 | 有限 | 否 | 是(广泛) | 是(适度) |
| 食谱/复合食品 | 是(调查/FNDDS) | 有限 | 是 | 是 |
USDA FoodData Central
概述
USDA FoodData Central(FDC)是美国农业部的综合食品成分数据库。它是美国营养数据的权威来源,并作为其他数据库常常验证的参考标准。FDC 于2019年推出,作为一个统一的平台,合并了多个之前独立的 USDA 数据库。
数据库组成
FDC 实际上包含五个不同的数据集,每个数据集有不同的目的和方法:
基础食品:约2300种经过当前分析方法分析的最小加工食品,属于国家食品和营养分析计划(NFNAP)。这些条目的数据质量最高,数值来自对多个样本的直接实验室分析。每条条目包括营养值的均值、标准差和样本大小。
SR 传统(标准参考传统):历史 USDA 标准参考数据库的最终版本,包含约7800个食品条目。SR 传统提供了数十年来在研究中引用的营养值。尽管不再更新,但它仍然是一个重要的参考。
调查食品(FNDDS):食品和营养数据库用于饮食研究,包含约7000种食品,映射到美国人在国家健康和营养检查调查(NHANES)中实际报告的饮食。这些条目包括复合和混合菜肴,具有食谱衍生的营养特征。FNDDS 对于人口层面的饮食分析至关重要。
实验食品:一小部分为特定研究目的分析的食品,如新型作物或实验性食品配方。
品牌食品:来自 USDA 全球品牌食品产品数据库(GFBD)的350,000多个条目,该数据库收集制造商提交的营养标签数据。这是按条目计数最大的组成部分,但由于依赖于制造商的准确性和完整性,数据质量最为不稳定。
数据质量
基础食品部分代表了食品成分数据的黄金标准。营养值通过湿化学分析(蛋白质的凯尔达尔法、脂肪的酸水解法、能量的炸弹量热法)对多个来源于不同地点和季节的样本进行分析得出。分析方法遵循 AOAC 国际协议,数据经过多层质量审核。
SR 传统的数据质量也很高,但反映了某些条目中较旧的分析方法和取样协议。一些条目可以追溯到几十年前,尽管当时的营养值是准确的,但由于农业实践、动物饲养和食品加工的变化,食品成分可能会随时间而变化。
品牌食品的数据质量则更为不稳定。营养值来自制造商报告的营养标签,FDA 允许这些标签有一定的公差。例如,FDA 允许标示的卡路里计数比实际值高出20%,维生素和矿物质的含量可以达到标示值的80%或更多。这意味着品牌食品条目可能与实验室分析的值有所不同。
营养成分深度
USDA FDC 提供了任何公共数据库中最深的营养覆盖。基础食品条目可以包括多达150种个体营养成分和食品成分,包括所有的宏量营养素、个体氨基酸、个体脂肪酸(饱和、单不饱和、多不饱和、反式)、维生素、矿物质、类胡萝卜素、类黄酮和其他生物活性化合物。没有其他数据库能够达到这种分析食品的详细程度。
访问和许可
FDC 数据属于公共领域(没有版权限制)。可以通过以下方式获取:
- 网页界面:fdc.nal.usda.gov 进行手动查询
- API:api.nal.usda.gov 需注册免费 API 密钥(每小时1000次请求)
- 批量下载:完整数据库的 CSV 和 JSON 文件下载,每季度更新
公共领域状态意味着任何人都可以出于任何目的(商业或非商业)使用 USDA 数据,而无需注明出处(尽管注明出处是良好实践)。
限制
- 以美国为中心:该数据库主要覆盖美国市场上可用的食品。国际菜肴、地区产品和非美国食品系统的食品代表性不足。
- 没有餐厅数据:FDC 不包括特定餐厅的菜单项。Chipotle 的卷饼与普通卷饼并不相同,但 FDC 仅有普通版本。
- 更新滞后:基础食品更新不频繁(某些条目超过十年未重新分析)。品牌食品的更新依赖于制造商的提交。
- 没有图片:FDC 不包括食品照片,因此不适合作为视觉食品识别训练的独立资源。
- 结构复杂:五个数据库架构具有不同的 ID 系统、营养覆盖水平和数据格式,使得在没有重大开发工作的情况下整合 FDC 变得具有挑战性。
Open Food Facts
概述
Open Food Facts(OFF)是一个免费的、开源的、全球食品产品的协作数据库。它成立于2012年,作为一个非营利项目,使命类似于维基百科,但专注于食品产品。截至2026年,它包含来自200多个国家的超过300万个产品条目,使其成为按产品数量计算的最大开放食品数据库。
数据收集方法
Open Food Facts 完全依赖于众包贡献。用户(包括个人和组织合作伙伴)通过扫描条形码和拍摄营养标签照片提交产品数据,使用 Open Food Facts 移动应用或网站。光学字符识别(OCR)帮助从标签照片中提取文本,但人工审核和校正是质量过程的核心。
覆盖范围
OFF 在包装和加工食品方面的覆盖非常出色,尤其是在欧洲。法国、德国、英国和美国的产品条目数量最多。该数据库在捕捉以下方面表现优异:
- 带条形码的包装超市产品
- 在美国中心数据库中缺失的国际产品
- 成分列表和过敏原信息
- 以产品原产国格式(欧盟格式、美国格式等)呈现的营养标签数据
- 添加剂和加工指示(NOVA 分类)
- Nutri-Score(在多个欧盟国家使用的前包装营养评级)
数据质量考虑
由于 OFF 数据是众包的,因此条目的质量差异很大:
- 完整性:许多条目缺乏完整的营养数据。一个产品可能有卡路里和宏量营养素,但缺少维生素、矿物质甚至纤维。2021年的分析发现,只有67%的 OFF 条目具有完整的宏量营养素数据(能量、蛋白质、碳水化合物、脂肪),而不到20%的条目具有超出钠的微量营养素数据。
- 准确性:OCR 错误、用户转录错误以及每份与每100克值之间的混淆引入了错误。社区审核过程捕捉到许多这些错误,但错误率高于经过策划的数据库。
- 重复性:同一产品可能在不同条形码下多次出现(区域变体、重新包装产品)或来自不同贡献者的冲突数据。
- 时效性:制造商可能会重新配方,但除非用户扫描新版本,否则 OFF 条目可能不会更新。
OFF 通过贡献者声誉系统、数据验证检查(例如,标记卡路里与4 x 蛋白质 + 4 x 碳水化合物 + 9 x 脂肪不相符的条目)和社区审核来解决质量问题。
独特功能
成分分析:OFF 将成分列表解析为结构化数据,通过其 E 编号代码识别添加剂并标记过敏原。这种成分级数据在其他数据库中并不常见。
环境评分:OFF 计算 Eco-Score,基于产品类别、成分、包装和来源的环境影响评级。这使其成为关注可持续性的应用程序的独特资源。
NOVA 分类:每个产品在 NOVA 超加工等级上进行分类(1 = 未加工,4 = 超加工),使得研究和应用能够聚焦于食品加工水平。
访问和许可
OFF 数据根据开放数据库许可(ODbL)提供,要求注明出处和相同分享(衍生数据库也必须开放)。访问方式包括:
- 网页界面:world.openfoodfacts.org
- API:免费,无需身份验证
- 批量下载:完整数据库可作为 CSV 和 MongoDB 转储(多吉字节文件)
- 移动 SDK:用于条形码扫描集成
ODbL 许可意味着商业应用可以使用 OFF 数据,但必须注明 Open Food Facts,并将对数据库的任何改进分享回社区。这种相同分享要求可能会限制某些商业用例。
限制
- 包装食品偏见:OFF 主要是一个包装产品数据库。未包装的全食品(新鲜农产品、散装谷物、新鲜肉类)、餐厅菜肴和家庭烹饪的代表性不足。
- 完整性差异:许多条目缺乏关键营养素。需要完整的宏量营养素 + 微量营养素档案的应用程序不能仅依赖 OFF。
- 质量不一致:众包数据固有地比专业策划的数据有更多错误。生产应用应实施验证层。
- 没有准备上下文:OFF 记录的食品是销售状态,而非消费状态。一盒意大利面有干的营养值;煮熟的营养值(用户实际食用的)必须单独计算。
Nutrola
概述
Nutrola 维护一个专有的食品成分数据库,专为 AI 驱动的营养跟踪而设计。该数据库结合了多个权威来源和众包验证的数据,覆盖用户实际食用的各种食品:常见的全食品、品牌产品、餐厅菜单项、地方菜肴和复合餐。
数据来源和方法
Nutrola 的数据库通过多源聚合和验证过程构建:
USDA FoodData Central:基础食品和 SR 传统数据作为常见全食品和通用制备的参考层。USDA 数据在每次 USDA 发布后的30天内同步。
制造商数据:品牌产品的营养信息来自制造商提供的数据,经过标签扫描验证,并与可用的 USDA 品牌食品条目交叉验证。
餐厅合作:Nutrola 与餐厅连锁合作,使用根据 FDA 卡路里标签法规要求提供的菜单营养数据来填充餐厅食品条目。
众包验证条目:对于上述来源未涵盖的食品,特别是地方和国际菜肴,Nutrola 根据标准化食谱和 USDA 成分数据创建初始条目,然后通过用户反馈进行验证和完善。当多个用户一致纠正同一食品条目时,该纠正将被审核并可能被纳入。
AI 辅助数据录入:Nutrola 使用 AI 模型从多种语言和格式的食品标签中提取营养数据,减少了扩展国际覆盖所需的人工工作量。
覆盖范围
| 类别 | 近似条目数 | 备注 |
|---|---|---|
| 常见全食品 | 12,000 | 与 USDA 基础 + SR 传统交叉验证 |
| 品牌产品(美国) | 380,000 | 定期与制造商数据同步 |
| 品牌产品(国际) | 210,000 | 重点关注欧盟、英国、澳大利亚、亚太市场 |
| 餐厅菜单项 | 85,000 | 美国连锁 + 选定国际连锁 |
| 地方和文化菜肴 | 45,000 | 50+ 种菜系,众包验证 |
| 复合餐和食谱 | 168,000 | 基于食谱的成分级数据 |
| 总计 | 900,000+ |
数据质量措施
Nutrola 采用多种质量控制机制:
- USDA 交叉验证:所有常见食品条目与 USDA 参考数据进行交叉验证。任何宏量营养素的值偏离 USDA 参考值超过15%的条目会被标记进行审核。
- 营养合理性检查:自动检查验证卡路里值与宏量营养素总和的一致性(卡路里应大致等于4 x 蛋白质 + 4 x 碳水化合物 + 9 x 脂肪 + 7 x 酒精,在公差范围内)。未通过此检查的条目将被隔离,直到审核。
- 用户纠正分析:对用户纠正的统计分析识别出系统性被纠正的条目,触发数据团队审核。
- 定期审核:每季度随机抽样审核一部分条目,与主要来源(USDA、制造商标签、餐厅发布的数据)进行对比。
营养覆盖
标准条目包括30多种营养成分:能量(千卡)、蛋白质、总碳水化合物、总脂肪、饱和脂肪、反式脂肪、单不饱和脂肪、多不饱和脂肪、胆固醇、钠、膳食纤维、总糖、添加糖、维生素 A、维生素 C、维生素 D、钙、铁、钾、维生素 B6、维生素 B12、镁、锌等。来自 USDA 基础食品的条目可能包含 USDA 数据继承的额外营养成分。
访问
- API:免费层(每天500次请求)和付费层。请参阅 Nutrola API 开发者指南以获取完整文档。
- 应用内:Nutrola 的移动和网络应用是消费者的主要访问点。
- 批量访问:在企业层为研究和商业合作伙伴提供。
- 许可:专有。API 使用受 Nutrola 开发者服务条款的约束。未经商业许可,数据不得批量重新分发。
限制
- 专有:与 USDA 和 OFF 不同,Nutrola 的数据不能自由下载或重新分发。这限制了其在需要开放数据的学术研究中的使用。
- 营养深度:虽然30多种营养成分对于大多数消费者和临床应用来说足够,但在专门研究中不及 USDA 基础食品的150多种营养成分。
- 较新的数据集:Nutrola 的数据库比 USDA 和 OFF 年轻,这意味着对停产产品和遗留食品的历史覆盖不够完整。
FatSecret
概述
FatSecret 是最早的营养跟踪平台之一,自2007年运营以来,其食品数据库经过近二十年的发展,通过专业数据策划、社区贡献和合作伙伴关系不断演变。FatSecret 平台 API 将这些数据提供给开发者。
数据来源
FatSecret 的数据库来自多个来源:
- 专有食品数据团队:FatSecret 拥有一个数据团队,策划常见食品条目,营养数据来源于食品成分表、政府数据库和制造商数据。
- 社区贡献:用户可以添加和编辑食品条目,类似于 Open Food Facts,但在一个经过审核的框架内。
- 制造商合作:来自制造商提交的品牌食品数据。
- 国际食品机构:FatSecret 参考多个国家的食品成分数据库(澳大利亚的 FSANZ、英国的 COFID/McCance 和 Widdowson 等)以支持国际覆盖。
覆盖范围
FatSecret 的数据库大约包含500,000个食品条目,具有合理的全球覆盖。该数据库支持16种语言,反映了 FatSecret 在多个国际市场的存在。覆盖在美国、澳大利亚和欧洲的食品方面最强。餐厅食品的覆盖适中,包括主要的美国连锁。
数据质量
FatSecret 对社区贡献的条目使用审核系统,其专业数据团队策划核心食品数据库。对于常见食品和主要品牌产品,数据质量通常良好。然而,正如任何接受社区贡献的数据库一样,边缘案例和不常见项目的准确性可能会有所不同。
营养覆盖通常比 USDA 或 Nutrola 更有限,通常每条条目提供15-25种营养成分。核心的宏量营养素、钠、纤维、糖和饱和脂肪通常可用。微量营养素的覆盖则不够全面。
访问和许可
- API:FatSecret 平台 API 免费使用,日请求限制为5000次。然而,使用免费 API 的应用程序必须显示 FatSecret 品牌和注明出处。
- 身份验证:OAuth 1.0,实施比其他提供商使用的 API 密钥或 OAuth 2.0 方法更复杂。
- 批量下载:不可用。数据仅通过 API 访问。
- 许可:专有,免费层需注明出处。通过商业合作提供白标选项。
独特功能
多语言支持:支持16种语言,FatSecret 的语言覆盖范围比大多数竞争对手更广,只有 Open Food Facts 更具优势。
悠久的历史:近二十年的运营使 FatSecret 的数据库经过广泛测试和完善。新数据库仍在发现的边缘案例,FatSecret 通常已经解决。
饮食和食谱集成:FatSecret 的平台包括与食品数据库紧密集成的食谱和餐单功能,为开发者构建餐单规划工具提供了现成的用例。
限制
- 没有批量下载:开发者无法下载完整数据集以进行离线分析或本地托管。所有访问必须通过 API。
- OAuth 1.0 身份验证:较旧的身份验证协议增加了实施复杂性。
- 注明出处要求:免费层 API 用户的强制 FatSecret 品牌可能与某些应用程序设计或品牌要求相冲突。
- 微量营养素数据有限:需要全面维生素和矿物质数据的应用程序可能会发现 FatSecret 的覆盖不足。
- 没有 AI 识别功能:该平台不提供 AI 驱动的食品识别能力。
逐项比较:详细功能比较
宏量营养素数据完整性
我们将“完整的宏量营养素数据”定义为每条条目都有能量(千卡)、蛋白质(克)、总碳水化合物(克)和总脂肪(克)。
| 数据库 | 完整宏量营养素条目的百分比 | 备注 |
|---|---|---|
| USDA FDC(基础) | 100% | 实验室分析 |
| USDA FDC(SR 传统) | 99.8% | 计算得出少数条目 |
| USDA FDC(品牌) | 94% | 一些制造商提交不完整 |
| Open Food Facts | ~67% | 根据国家和贡献者而异 |
| Nutrola | 99.2% | 质量门控防止不完整条目 |
| FatSecret | ~92% | 策划的较高,社区添加的较低 |
国际食品覆盖
| 区域 | USDA | Open Food Facts | Nutrola | FatSecret |
|---|---|---|---|---|
| 北美 | 优秀 | 良好 | 优秀 | 优秀 |
| 西欧 | 有限 | 优秀 | 良好 | 良好 |
| 东亚 | 较差 | 中等 | 良好 | 中等 |
| 南亚 | 较差 | 中等 | 良好 | 中等 |
| 东南亚 | 较差 | 中等 | 良好 | 较差 |
| 拉丁美洲 | 较差 | 中等 | 良好 | 中等 |
| 中东 | 较差 | 较差 | 中等 | 较差 |
| 非洲 | 非常差 | 较差 | 有限 | 较差 |
| 大洋洲 | 有限 | 良好 | 良好 | 优秀 |
餐厅和准备食品覆盖
| 数据库 | 主要美国连锁 | 区域美国餐厅 | 国际连锁 | 准备/熟食 |
|---|---|---|---|---|
| USDA | 无 | 无 | 无 | 仅普通 |
| Open Food Facts | 非常有限 | 无 | 非常有限 | 无 |
| Nutrola | 85,000+ 项 | 不断增加 | 选定市场 | 是 |
| FatSecret | 中等 | 有限 | 有限 | 一些 |
开发者体验
| 因素 | USDA | Open Food Facts | Nutrola | FatSecret |
|---|---|---|---|---|
| API 文档质量 | 足够 | 良好 | 优秀 | 良好 |
| 第一次成功调用的时间 | 15-30 分钟 | 5 分钟(无身份验证) | 10 分钟 | 20-30 分钟(OAuth 1.0) |
| SDK 可用性 | 无官方 | Python、JS、Dart | Python、JS(官方) | 社区 SDK |
| 沙盒/测试环境 | 否 | 生产 = 测试 | 是 | 否 |
| Webhook 支持 | 否 | 否 | 计划(2026年) | 否 |
| 批量操作 | 是(下载) | 是(下载) | 是(API) | 否 |
选择合适的数据集
对于学术研究
主要推荐:USDA FoodData Central
学术研究通常需要最权威、文档齐全且可自由获取的数据。USDA FDC,特别是基础食品部分,提供了经过实验室分析的营养值和统计文档(均值、标准差、样本大小),可以在同行评审的出版物中引用。公共领域许可消除了任何法律复杂性。对于专注于个别脂肪酸或氨基酸水平的特定营养研究,USDA 是唯一具有足够深度的选择。
补充使用:Open Food Facts,用于涉及包装食品产品、食品环境研究或超加工评估(NOVA 分类)的研究。
对于消费者营养应用
主要推荐:Nutrola 或 Nutritionix(通过 API)
消费者应用需要广泛覆盖人们实际食用的食品,包括餐厅餐点、品牌产品和国际菜肴。它们需要一致的数据质量和与人们对食品的理解相匹配的份量信息(“中等鸡胸肉”而不是“100克生鸡肉”)。Nutrola 的 API 提供了这种组合,具有自然语言解析和可选的 AI 识别功能。
补充使用:USDA,作为常见全食品的参考层,并填补微量营养素数据的空白。
对于包装食品/条形码扫描应用
主要推荐:Open Food Facts
如果您的应用程序以扫描包装食品条形码为中心,OFF 提供了全球覆盖的最大条形码索引数据库,完全免费和开放。其成分解析、过敏原标记以及 Nutri-Score 和 Eco-Score 功能增加了营养数据本身所不具备的价值。
补充使用:Nutrola 或 FatSecret,用于补充 OFF 中缺失的产品和非包装食品的覆盖。
对于国际或多语言应用
主要推荐:Open Food Facts + Nutrola
OFF 提供了最广泛的国际包装食品覆盖,支持40多种语言。Nutrola 在8种语言中增加了国际常见食品和餐厅的覆盖,数据完整性更高。FatSecret 的16种语言支持对于面向消费者的应用也很相关。
对于预算有限的项目
主要推荐:FatSecret 平台 API 或 USDA + Open Food Facts
FatSecret 的免费层提供5000次每日请求,是所有专有 API 中最慷慨的,前提是您能满足注明出处的要求。或者,将 USDA(用于参考数据)与 Open Food Facts(用于品牌产品)结合,您将获得一个完全免费的开放数据堆栈,尽管您需要在数据规范化和质量过滤上投入开发时间。
数据库之间的实体关系
理解这些数据库之间的关系有助于在集成多个来源时:
USDA 是参考权威:Nutrola、FatSecret 和 OFF 中的许多条目最终都源自 USDA 数据。当您在多个数据库中看到“鸡胸肉:每100克165千卡”时,该数字源自 USDA 分析。
OFF 和 Nutrola 都以 USDA 为基础数据:两个数据库都使用 USDA 作为通用食品条目的基础,并在其上叠加其他数据(品牌产品、国际食品)。
条形码重叠:OFF、Nutrola 和 FatSecret 都通过条形码索引食品,但它们的覆盖范围不同。给定的 UPC 可能在所有三个数据库中存在、在两个中存在,或仅在一个中存在。检查多个数据库可以提高条形码查找的命中率。
餐厅数据是关键差异:USDA 和 OFF 基本没有餐厅数据。Nutrola 拥有最全面的餐厅覆盖。FatSecret 的覆盖适中。对于经常外出就餐的用户的应用程序,这通常是决定性因素。
数据质量方法比较
| 质量测量 | USDA 基础 | USDA 品牌 | Open Food Facts | Nutrola | FatSecret |
|---|---|---|---|---|---|
| 主要数据来源 | 实验室分析(AOAC 方法) | 制造商标签 | 用户扫描标签 | 多源验证 | 多源策划 |
| 样本多样性 | 多个地区/季节 | 单一标签 | 单一贡献 | 交叉验证 | 变量 |
| 卡路里/宏量一致性检查 | 实验室验证 | 无系统性 | 自动公式检查 | 自动 + 手动审核 | 审核 |
| 统计文档 | 是(标准差、样本数) | 否 | 否 | 否 | 否 |
| 更新触发 | 研究项目周期 | 制造商提交 | 用户贡献 | 制造商 + 用户 + 审核 | 用户 + 数据团队 |
| 错误校正过程 | 内部科学审核 | 有限 | 社区审核 | 用户反馈 + 数据团队 | 用户报告 + 审核 |
常见问题
哪个营养数据库最准确?
对于常见全食品,USDA FoodData Central 基础食品是最准确的,因为它依赖于使用标准化方法的直接实验室分析。对于包装和品牌产品,准确性取决于数据与产品最新配方的当前性。没有单一数据库在所有食品类型中都是“最准确”的。对于生产应用,最佳做法是使用 USDA 作为参考层,并补充一个在品牌、餐厅和国际食品覆盖方面更强的数据库。
我可以将多个营养数据库的数据结合起来吗?
可以,这是一种常见的做法。主要挑战是标准化不同数据库之间的营养名称和单位(例如,“维生素 A”可能根据来源以 IU、RAE 或 mcg 报告),处理同一食品的不同营养值的重复条目,以及管理不同的许可要求。USDA 数据(公共领域)可以与任何其他来源自由结合。Open Food Facts 数据在重新分发合并数据集时需要遵守 ODbL。
我应该多久更新一次本地的营养数据副本?
对于 USDA 数据,按照 USDA 发布周期进行季度同步对于基础和传统数据是足够的。品牌食品数据变化更频繁;建议每月同步。对于 Open Food Facts,考虑到其持续贡献模式,每月或每周同步是合适的。对于 Nutrola 或 FatSecret 的基于 API 的访问,数据在 API 调用时始终是最新的,因此除非您在缓存,否则不需要本地同步。
为什么不同数据库中相同食品的卡路里计数会有所不同?
造成差异的因素有多个:不同的分析方法、不同的样本来源、对“相同”食品的不同定义(“糙米”是熟的还是生的?长粒还是短粒?是否加盐?)、舍入惯例和数据的年龄。不同数据库中相同食品的差异通常在5-10%之间,通常反映的是合理的变异,而非错误。
Open Food Facts 数据是否足够可靠以用于生产应用?
如果您实施验证层,Open Food Facts 数据足够可靠以用于生产。最佳实践包括过滤未通过宏量营养素-卡路里一致性检查的条目,要求最低完整性阈值,交叉验证高流量条目,并向用户显示数据可信度指标。许多成功的应用程序,包括 Yuka 和其他食品扫描应用的某些组件,依赖于 OFF 数据并采取了这些预防措施。
Nutrola 的数据库是否包含 USDA 和 Open Food Facts 的数据?
Nutrola 使用 USDA FoodData Central 作为常见全食品的参考层,定期与 USDA 发布同步。Nutrola 不直接包含 Open Food Facts 数据,尽管在品牌食品覆盖方面存在自然重叠,两个数据库都从制造商标签中获取数据。Nutrola 的专有层包括餐厅数据、众包验证的国际菜肴和 AI 验证的条目,这些在 USDA 或 OFF 中均不可用。
Nutritionix、CalorieKing 和其他商业数据库呢?
Nutritionix 维护着一个最大的商业食品数据库之一(超过100万个条目),在餐厅食品覆盖方面尤其强大。CalorieKing 是一个在澳大利亚和美国颇受欢迎的成熟数据库。两者都是专有的,提供商业定价的 API 访问。我们将此次比较重点放在具有免费或开放访问层的数据集上,以为开发者和研究人员提供最具可操作性的指导。在全面的商业比较中,Nutritionix 将与 Nutrola 并列,尽管定价更高,但在美国餐厅覆盖方面更深。
结论
没有单一的营养数据集适合所有用例。USDA FoodData Central 仍然是分析准确性和营养深度的黄金标准,Open Food Facts 在包装产品覆盖和开放性方面领先,Nutrola 在覆盖广度与数据质量之间取得平衡,并在拥有免费 API 访问的数据集中提供最强的餐厅和国际食品覆盖,FatSecret 则提供了一个成熟、经过充分测试的数据库,具有慷慨的免费 API 访问。
对于严肃的应用程序,最稳健的方法是采用多数据库的分层架构:USDA 作为参考基础,Nutrola 作为现实食品覆盖和 API 驱动访问的综合数据库,以及 Open Food Facts 作为包装产品广度的补充来源。了解每个数据集的优缺点和方法论,确保为您的应用程序提供的营养数据尽可能准确和完整,符合当前食品成分科学的最新状态。