Cal AIのポーション推定はどれほど信頼できるか?測定された重量とAI推定の監査
20種類の食品をキッチンスケールで測定し、Cal AIを通じて写真を撮影し、アプリのポーション推定と実際の測定重量を比較しました。Cal AIのポーション推定がどれほど正確で一貫しているかをお伝えします。
Cal AIは、写真を使って食品のポーションとカロリーを推定するカロリー追跡アプリです。 このアプリの基本的な約束は、食品を計量したり測定したりする必要がなく、ただプレートの写真を撮るだけでAIが残りを処理するというものです。この提案は、カロリー追跡の最も面倒な部分を取り除くもので魅力的です。しかし、これは二次元の画像から三次元のサイズと重量を推定するという根本的なコンピュータビジョンの問題を解決することに依存しています。
ポーション推定の信頼性とは、AIが推定した重量や体積が実際の測定値に近いことを意味します。また、一貫性も重要です。同じ食品を何度も撮影した場合、毎回同じ推定値が得られるべきです。私たちは、20種類の食品をキャリブレーションされたキッチンスケールで測定し、Cal AIを通じて写真を撮影し、結果を比較することでこの2つの側面をテストしました。
根本的な問題:2D画像からの3D推定
テスト結果を検討する前に、この問題が本質的に難しい理由を理解することが重要です。写真は三次元を二次元に圧縮します。深さ、高さ、体積の情報は部分的に失われます。3センチメートルの高さのご飯の山は、カメラの角度が差を圧縮する場合、2センチメートルの高さの山と同じに見えます。
AIは、プレートのサイズ、食品が投影する影、フレーム内の既知の物体の相対的な比率、トレーニングデータに対するパターンマッチングなどの文脈的手がかりから失われた次元を推測しなければなりません。これらの推測ステップのそれぞれが潜在的な誤差をもたらします。2021年に発表された『International Journal of Food Sciences and Nutrition』の研究では、写真からポーションを推定する訓練を受けた栄養士でさえ、50-70%の精度しか達成できなかったことが示されています。これは、視覚的なポーション推定が人間でもAIでも本質的に不正確であることを示唆しています。
これはCal AIに対する批判ではありません。これは、あらゆる写真ベースのポーション推定システムが直面する基本的な課題です。問題は、この根本的な制限が実際にどれだけの誤差を生じさせ、その誤差がカロリーデータを有用にするのに十分小さいかどうかです。
テスト方法論:スケールで測定した重量とCal AI推定
私たちは、均一なアイテム(予測可能な形状とサイズ)、不規則な固体(形状が変動する)、積み重ねられた食品、液体、容器に入った食品、盛り付けられた複数成分の食事という6つのカテゴリにわたる20種類の食品を選びました。各食品は、1グラムまでの精度でキャリブレーションされたキッチンスケールで測定されました。
各食品は、標準的な26センチメートルの白いディナープレートに置かれ(特に記載がない限り)、Cal AIを通じて約30センチメートルの距離から45度の角度で撮影されました。Cal AIの推定ポーションサイズとカロリー数を記録し、実際の測定値からの偏差を計算しました。
ポーション推定の精度:Cal AI推定と実際の重量
完全な信頼性テスト結果
| 食品 | 実際の重量 | Cal AI推定 | 重量偏差 | 偏差% | 実際のカロリー | Cal AIカロリー | カロリー影響 |
|---|---|---|---|---|---|---|---|
| スライスしたパン | 38 g | 40 g | +2 g | +5.3% | 95 | 100 | +5 |
| 大きな卵(茹で) | 50 g | 50 g | 0 g | 0.0% | 78 | 78 | 0 |
| プロテインバー(包装なし) | 60 g | 55 g | -5 g | -8.3% | 210 | 193 | -17 |
| 鶏むね肉(グリル) | 174 g | 140 g | -34 g | -19.5% | 287 | 231 | -56 |
| ステーキ(グリル) | 225 g | 175 g | -50 g | -22.2% | 573 | 446 | -127 |
| サーモンフィレ(焼き) | 168 g | 145 g | -23 g | -13.7% | 349 | 302 | -47 |
| 炊いた白米 | 210 g | 180 g | -30 g | -14.3% | 232 | 199 | -33 |
| 炊いたパスタ | 240 g | 195 g | -45 g | -18.8% | 374 | 304 | -70 |
| マッシュポテト | 200 g | 160 g | -40 g | -20.0% | 224 | 179 | -45 |
| ミックスグリーンサラダ | 120 g | 95 g | -25 g | -20.8% | 19 | 15 | -4 |
| オレンジジュース(グラス) | 250 ml | 200 ml | -50 ml | -20.0% | 112 | 90 | -22 |
| ミルク入りコーヒー(マグ) | 350 ml | 250 ml | -100 ml | -28.6% | 58 | 41 | -17 |
| スープ(ボウル) | 400 ml | 300 ml | -100 ml | -25.0% | 160 | 120 | -40 |
| アーモンド(小ボウル) | 35 g | 28 g | -7 g | -20.0% | 204 | 163 | -41 |
| トレイルミックス(ボウル) | 55 g | 42 g | -13 g | -23.6% | 264 | 201 | -63 |
| ヨーグルト(容器) | 170 g | 150 g | -20 g | -11.8% | 100 | 88 | -12 |
| りんご(丸ごと) | 182 g | 170 g | -12 g | -6.6% | 95 | 89 | -6 |
| アボカド半分 | 68 g | 75 g | +7 g | +10.3% | 109 | 120 | +11 |
| ピーナッツバター(トーストに塗ったもの) | 18 g(PBのみ) | 12 g | -6 g | -33.3% | 105 | 70 | -35 |
| 鶏肉 + ご飯 + ブロッコリーのプレート | 440 g 合計 | 365 g 合計 | -75 g | -17.0% | 542 | 450 | -92 |
要約統計:
- 平均絶対偏差: 16.9%
- 中央偏差: 19.2%
- 過小評価バイアス: 20種類の食品中18種類が過小評価
- 平均カロリー影響: 1食品あたり37カロリー
- 10%以内の精度の食品: 20種類中5種類(25%)
- 20%以上の偏差の食品: 20種類中8種類(40%)
結果は明確で一貫したパターンを示しています。テストした20種類の食品のうち18種類でCal AIはポーションサイズを過小評価しました。平均偏差は16.9%でしたが、この平均は特定のカテゴリの厳しさを隠しています。不規則な肉(鶏むね肉、ステーキ)は19-22%の過小評価を示しました。積み重ねられた食品(ご飯、パスタ、マッシュポテト)は14-20%の過小評価を示しました。液体は20-29%の過小評価を示しました。
ポーション推定が信頼できる場所
Cal AIの推定は、均一で予測可能な形状と標準化されたサイズの食品に対して最も正確でした。
均一なアイテム
スライスしたパン、茹で卵、りんごは、実際の重量の5-10%以内に収まります。これらの食品は一貫した形状を持ち、AIのトレーニングデータによく捉えられています。スライスしたパンは、ブランドに関係なく、厚さと寸法がほぼ同じです。大きな卵は大きな卵です。AIのトレーニングデータには、これらのアイテムの数千の画像が含まれており、その予測可能な幾何学は深さの推定をあまり重要でなくしています。
標準化されたパッケージアイテム
包装されていないプロテインバーは、実際の重量の8.3%以内で推定されました。直方体の形状と標準化された寸法により、視覚的に予測可能です。規則的な幾何学的形状を持つ食品は、テストで不規則な食品よりも一貫して優れた結果を示しました。
共通の要因は、これらの食品が形状の変動が少ないことです。一枚のスライスしたパンを見れば、基本的にすべてのスライスを見たことになります。AIは、文脈的手がかりから寸法を推測するのではなく、記憶された典型的な寸法に依存できます。
ポーション推定が信頼できない場所
不規則な形状:ステーキと鶏肉の問題
グリルされたステーキは22.2%過小評価され、1つの食品アイテムで127カロリーの誤差が生じました。鶏むね肉は19.5%過小評価され、56カロリーの誤差が生じました。これらは、タンパク質摂取を追跡する人々によく記録される食品の中で最も一般的なものです。
不規則な形状は、食品の厚さが異なるため難しいです。鶏むね肉は、厚い中心部から薄い端に taper します。上からまたは斜めからの写真では、AIは表面積を捉えますが、中心部の厚さを過小評価します。その結果、カロリー密度の高いタンパク質に影響を与える系統的な過小評価が生じます。これは、マクロ追跡において最も重要な食品です。
積み重ねられた食品:ご飯、パスタ、ポテト
炊いたご飯、パスタ、マッシュポテトは14-20%過小評価されました。これらの食品は、高さがあり、2Dの写真で圧縮されます。プレートに盛られたご飯の一人前は、ピークで4センチメートルの高さかもしれませんが、45度の角度で撮影された写真では、はるかに薄い層に見えます。
USDA FoodData Centralデータベースでは、炊いた白米は1カップ(186 g)あたり130カロリーとされています。210グラムのサービングで14.3%の過小評価は、33カロリーの不足に相当します。多くの人がご飯を大きな食事の一部として食べるため、誤差はプレート上のすべての積み重ねられた食品で累積します。
液体:見えない体積の問題
液体は、最も信頼性の低いカテゴリで、偏差は20-29%でした。オレンジジュースのグラスは20%過小評価され、ミルク入りコーヒーは28.6%過小評価されました。スープは25%過小評価されました。
問題は単純です。AIは液体の表面を見えますが、容器の深さを判断できません。広くて浅いボウルと狭くて深いボウルは、写真では同じ表面を持ちながら、全く異なる体積を保持しています。容器の寸法がわからなければ、AIの体積推定は根本的に推測に過ぎません。
角度の問題:同じ食品、異なる推定
食品ごとの精度テストを超えて、同じ食品が異なる角度から撮影された場合にCal AIが一貫した推定を出すかどうかを調査しました。
角度の一貫性テスト:グリルされた鶏むね肉(実際の174 g)
| 写真の角度 | Cal AI推定 | 実際からの偏差 |
|---|---|---|
| 45度(標準) | 140 g | -19.5% |
| 真上から(90度) | 155 g | -10.9% |
| 低角度(20度) | 125 g | -28.2% |
| 側面(10度) | 110 g | -36.8% |
同じ174グラムの鶏むね肉は、カメラの角度によって110グラムから155グラムまでの推定値を生成しました — 45グラムの差です。真上からの角度が最も正確な結果をもたらしましたが、これでも11%近くの誤差がありました。低角度と側面の角度では、食品の高さと深さが圧縮されるため、著しく過小評価されました。
これは、ユーザーが得るカロリー数が、何を食べているかだけでなく、どのように電話を持っているかにも部分的に依存することを意味します。低い角度で食品を撮影する習慣のあるユーザーは、上から撮影するユーザーに比べてカロリーを一貫して過小評価します。
プレートサイズの錯覚:同じポーション、異なるプレート
プレートサイズがCal AIのポーション推定に影響を与えるかどうかをテストするために、200グラムの炊いたパスタを3つの異なるプレートに置きました。
プレートサイズテスト:200 gの炊いたパスタ
| プレート直径 | Cal AI推定 | 偏差 |
|---|---|---|
| 20 cm(小皿) | 225 g | +12.5% |
| 26 cm(標準皿) | 195 g | -2.5% |
| 32 cm(大皿) | 155 g | -22.5% |
同じ200グラムのパスタは、小皿では225グラム、大皿では155グラムと推定されました — プレートサイズだけで70グラムの差があります。これは、デボーフ錯覚と呼ばれる、周囲の文脈が物体の見かけのサイズを変えることに関するよく知られた知覚バイアスです。AIは、プレートサイズが見かけのポーションサイズと相関する食品写真のトレーニングデータからこのバイアスを学習しています。
大きなレストランの皿やサービングボウルで食べるユーザーにとって、Cal AIはシステマティックにポーションを過小評価します。小さなデザート皿で食べるユーザーにとっては、アプリが過大評価します。どちらのグループも、実際に消費した量の正確なカウントを得ることはできません。
一貫性テスト:同じ食品、5回の写真
グリルされた鶏むね肉とご飯、ブロッコリーの一人前(実際542カロリー)を連続して5回撮影し、電話の角度をわずかに調整しました。
5枚の写真の一貫性テスト
| 写真番号 | Cal AI合計カロリー | 実際からの偏差 |
|---|---|---|
| 1 | 450 | -17.0% |
| 2 | 478 | -11.8% |
| 3 | 435 | -19.7% |
| 4 | 462 | -14.8% |
| 5 | 448 | -17.3% |
同じ食事の5枚の写真は、435から478までの異なるカロリー推定を生成しました — 43カロリーの差です。平均は455カロリーで、実際の542カロリーを16.1%過小評価しました。1枚の写真も実際のカロリー内容の10%以内の結果を出しませんでした。
このテストは、精度と一貫性の問題を同時に示しています。推定値は一貫して低い(精度の失敗)だけでなく、同一食品の写真によっても異なります(一貫性の失敗)。この食事を記録するユーザーは、5枚の写真のうちどれを撮影するかによって異なる数字を得ます。
日々の誤差の累積
私たちのテストでの食品ごとの個別の誤差は平均37カロリーです。それは小さく聞こえますが、典型的な1日は3食とスナックを通じて10から15の個別の食品項目を記録することを考慮すると、重要です。
日々の累積シナリオ
| 食事 | 記録した食品 | 実際のカロリー | Cal AI合計 | 累積誤差 |
|---|---|---|---|---|
| 朝食(オートミール、バナナ、ピーナッツバター) | 3アイテム | 445 | 385 | -60 |
| 昼食(鶏肉、ご飯、野菜) | 3アイテム | 542 | 450 | -92 |
| スナック(アーモンド、ヨーグルト) | 2アイテム | 304 | 251 | -53 |
| 夕食(ステーキ、マッシュポテト、サラダ) | 3アイテム | 816 | 640 | -176 |
| 日々の合計 | 11アイテム | 2,107 | 1,726 | -381 |
381カロリーの過小評価。これは総摂取量の18.1%に相当します — 存在しない赤字です。体重減少のために500カロリーの赤字を計画しているユーザーは、Cal AIの過小評価バイアスを考慮すると、実際には119カロリーの赤字に陥ります。このペースでは、計画された1週間あたり1ポンドの体重減少は0.24ポンドに減少します。1ヶ月の規律ある追跡は、期待される結果の1週間分を生み出し、ユーザーはその理由を特定する方法がありません。
『American Journal of Clinical Nutrition』に発表された研究は、食事評価における誤りの最も一般的な方向が食物摂取の過小報告であることを一貫して示しています。人間がラベル付けしたデータで訓練されたAIシステムは、このバイアスを引き継ぎます。
Nutrolaがポーション推定を異なる方法で扱う理由
Nutrolaのポーション推定問題へのアプローチは、写真AIを最終的な答えではなく出発点として扱うことです。このアプリの写真認識は食品を特定し、180万以上のエントリからなる栄養士によって検証されたデータベースにマッピングし、正確なグラムあたりのカロリー値を確立します。しかし、NutrolaはAIにポーションサイズを推測させるだけでなく、音声修正レイヤーを提供します。
食事の写真を撮った後、「実際には鶏肉が約200グラムだった」とか「ご飯は約1カップだった」と言うことができます。エントリーは、検証されたグラムあたりの栄養データに基づいて瞬時に更新されます。これは数秒で完了し、手動検索よりも速く、どのAIも2D画像から3Dボリュームを正確に推定できないという根本的な制限を解決します。
検証されたデータベースは、重要な差別化要因です。ポーション推定が完璧であっても、カロリー計算は参照する栄養データの信頼性に依存します。Nutrolaのデータベースには、栄養士によって検証されたデータから得られた1つの検証済みエントリーが含まれており、クラウドソースの重複や矛盾するエントリーはありません。食品の写真認識、音声修正されたポーション、検証されたデータの組み合わせにより、NutrolaはAIが写真から推測したのではなく、実際に食べたものを反映したカロリーログを生成します。
Nutrolaは、パッケージ食品のバーコードスキャンや自宅で調理した食事のレシピインポートも含まれており、すべての記録方法でデータの一貫した品質を確保しています。iOSとAndroidで利用可能で、広告なしのプランが月額EUR 2.50で提供されており、Nutrolaはスピードと正確性が相反しない原則に基づいて設計されています。
よくある質問
Cal AIのカロリー計算はどれほど正確ですか?
私たちの20種類の食品のテストでは、Cal AIのポーション推定は実際の測定重量から平均16.9%偏差しました。これは、個々の食品アイテムあたり平均37カロリーの誤差に相当します。食品の25%(20種類中5種類)だけが10%の精度以内で推定されました。アプリは強い過小評価バイアスを示し、テストした20種類の食品中18種類のポーションを過小報告しました。1日の食事全体では、これらの個々の誤差が381カロリーの過小評価に累積しました。
Cal AIが同じ食事に対して異なるカロリーを示すのはなぜですか?
Cal AIの推定は、写真の角度、照明、フレーミングによって変わります。これは、2D画像から3Dポーションサイズを推測しているためです。私たちの一貫性テストでは、同じ食事の5枚の写真が435から478までのカロリー推定を生成しました — 43カロリーの差です。カメラの角度が最も大きな影響を与えます。角度テストでは、側面からの写真で110グラムと推定された鶏むね肉が、真上からの写真では155グラムと推定されました。
Cal AIは食品によって精度が異なりますか?
はい。Cal AIは、スライスしたパン(5.3%の偏差)、茹で卵(0%の偏差)、丸ごとの果物(6.6%の偏差)など、均一で予測可能な形状の食品に対して最も正確です。不規則な形状の肉(19-22%の偏差)、ご飯やパスタのような積み重ねられた食品(14-20%の偏差)、液体(20-29%の偏差)には最も不正確です。あなたの食事が主にシンプルで均一な食品で構成されている場合、アプリはより信頼性がありますが、複雑で多成分の食事を食べる場合は信頼性が低くなります。
プレートサイズはCal AIのカロリー推定に影響を与えますか?
はい。私たちのプレートサイズテストでは、200グラムのパスタが20センチメートルの小皿では225グラム、32センチメートルの大皿では155グラムと推定されました — 同じポーションで70グラムの差があります。これは、デボーフ錯覚によるもので、周囲の文脈が物体の見かけのサイズを変えます。大きな皿やレストランの皿で食べるユーザーは、一貫して過小評価されたポーションを目にすることになります。
Cal AIを体重減少に使用できますか?
Cal AIは大まかなカロリー意識を提供できますが、そのシステマティックな過小評価バイアスは、正確な赤字ベースの体重減少には問題があります。私たちの日々のシナリオでは、計画された500カロリーの赤字がCal AIの過小評価を考慮すると119カロリーの実効赤字に減少しました — 意図された赤字の76%の削減です。より信頼できる結果を得るためには、写真ベースの記録と実際の食品の計量を組み合わせるか、Nutrolaのようなアプリを使用して、写真AIと音声修正されたポーション、検証された栄養データベースを組み合わせることをお勧めします。