البحث وراء تقنية التعرف على الطعام من Nutrola

كيف تستطيع Nutrola التعرف على الطعام من صورة في أقل من ثلاث ثوانٍ؟ استكشاف عميق في أبحاث الرؤية الحاسوبية، التعلم العميق، وعلوم التغذية التي تدعم تقنيتنا الذكية.

Medically reviewed by Dr. Emily Torres, Registered Dietitian Nutritionist (RDN)

عندما تلتقط صورة لعشائك وتقوم Nutrola بإرجاع تحليل غذائي كامل في أقل من ثلاث ثوانٍ، فإن وراء ذلك عقودًا من الأبحاث في مجال الرؤية الحاسوبية، علوم التغذية، وهندسة الذكاء الاصطناعي. ما يبدو كلحظة واحدة من التعرف هو في الواقع سلسلة من النماذج المتخصصة، كل منها يحل مشكلة علمية محددة. من لحظة ضغط زر الكاميرا إلى لحظة ظهور قيم المغذيات الكبرى على الشاشة، تمر صورتك عبر سلسلة من العمليات المبنية على أبحاث أساسية من مؤسسات مثل ستانفورد، MIT، Google DeepMind، ومختبر الرؤية الحاسوبية في ETH زيورخ.

تتبع هذه المقالة تلك السلسلة خطوة بخطوة، مستشهدة بالأبحاث الحقيقية والمفاهيم التقنية التي تجعل من التعرف على الطعام من Nutrola ممكنًا.

سلسلة الرؤية الحاسوبية

تقنية التعرف على الطعام من Nutrola ليست نموذجًا واحدًا. إنها سلسلة متعددة المراحل حيث تتعامل كل مرحلة مع مهمة محددة، ويغذي مخرج مرحلة واحدة المرحلة التالية.

المرحلة 1 - معالجة الصورة. قبل أن ترى أي شبكة عصبية صورتك، تخضع الصورة الخام لعملية تطبيع. يشمل ذلك تغيير الحجم إلى دقة إدخال قياسية، وضبط توازن اللون الأبيض وتباين التعرض، وتطبيق تحويلات تعزيز البيانات خلال التدريب. أظهرت أبحاث كريزيفسكي وسوتسكيبر وهينتون في ورقتهم الرائدة عام 2012 حول ImageNet أن المعالجة المسبقة وتعزيز البيانات تحسن بشكل كبير من تعميم الشبكات العصبية التلافيفية العميقة. توسعت الأنظمة الحديثة في ذلك باستخدام تقنيات مثل CutMix (Yun et al., 2019) وRandAugment (Cubuk et al., 2020)، التي تعلم النموذج أن يكون قويًا أمام الحجب والتغيرات اللونية الشائعة في تصوير الطعام.

المرحلة 2 - اكتشاف الطعام وتقسيمه. بعد المعالجة المسبقة، تمر الصورة عبر نموذج اكتشاف الأجسام الذي يحدد ويحدد موقع كل عنصر غذائي مميز على الطبق. تعتمد هذه المرحلة بشكل كبير على الأبحاث في الشبكات العصبية التلافيفية المعتمدة على المناطق. أسس نموذج Faster R-CNN (Ren et al., 2015) نموذج الشبكات المقترحة، بينما تستخدم الهياكل الحديثة مثل DETR (Carion et al., 2020) من أبحاث الذكاء الاصطناعي في فيسبوك الانتباه المعتمد على المحولات لإزالة المكونات المصممة يدويًا مثل صناديق التثبيت تمامًا. لتحقيق دقة على مستوى البكسل، تقوم نماذج التقسيم الدلالي المعتمدة على هياكل مثل DeepLab (Chen et al., 2017) بتعيين كل بكسل في الصورة إلى فئة غذائية، وهو أمر حاسم للأطباق المختلطة حيث تتداخل المكونات.

المرحلة 3 - تصنيف الطعام. يتم تصنيف كل منطقة غذائية تم اكتشافها بعد ذلك. تعتمد الأسس الحديثة لمصنفات الطعام على هياكل تم التحقق منها على ImageNet (Deng et al., 2009)، مجموعة البيانات التي تحتوي على 14 مليون صورة مصنفة والتي حفزت ثورة التعلم العميق. توفر مجموعات البيانات الخاصة بالطعام مثل Food-101 (Bossard et al., 2014)، التي تحتوي على 101,000 صورة عبر 101 فئة، وUECFOOD-256 (Kawano وYanai، 2015)، التي تغطي 256 فئة غذائية مع التركيز على المأكولات اليابانية، بيانات التدريب الخاصة بالمجال اللازمة لضبط هذه الهياكل العامة للتعرف على الطعام.

المرحلة 4 - تقدير الحصة. بعد تحديد ما هو موجود على الطبق، يقدر النظام كمية كل عنصر موجود. هذه هي أصعب مشكلة غير محلولة في أبحاث التعرف على الطعام وتتطلب تقدير العمق والتفكير الحجمي من صورة ثنائية الأبعاد واحدة.

المرحلة 5 - رسم القيم الغذائية. أخيرًا، يتم ربط العنصر الغذائي المصنف وحجم الحصة المقدرة بقاعدة بيانات غذائية موثوقة لإنتاج قيم السعرات الحرارية والبروتينات والكربوهيدرات والدهون والميكرونutrients.

تمثل كل من هذه المراحل منطقة متميزة من البحث النشط. تستعرض الأقسام أدناه المراحل الأكثر تحديًا من الناحية التقنية بالتفصيل.

تصنيف الطعام: أكثر من "هذه سلطة"

تمييز السلطة عن الستيك هو أمر بسيط لأي مصنف حديث. التحدي الحقيقي يبدأ عندما يجب على النظام التمييز بين أطباق متشابهة بصريًا: دجاج تيكا ماسالا مقابل دجاج بالزبدة، باد تاي مقابل نودلز سكران، أو سلطة يونانية مقابل فتوش. تشترك هذه الأطباق في الألوان والملمس والأنماط الهيكلية ولكن تختلف بشكل كبير في المكونات وكثافة السعرات الحرارية.

التعلم الانتقالي وتكييف المجال

تعتمد الطريقة القياسية لتصنيف الطعام على التعلم الانتقالي، وهي تقنية تم توضيحها من قبل يوسينسكي وآخرين (2014)، حيث يتم ضبط نموذج تم تدريبه مسبقًا على مجموعة بيانات عامة كبيرة مثل ImageNet على بيانات محددة بالطعام. تنتقل الطبقات السفلية من الشبكة، التي تكشف عن الحواف والملمس والأشكال الأساسية، بشكل جيد عبر المجالات. بينما يتم إعادة تدريب الطبقات العليا، التي تشفر المعاني الدلالية، لتعلم ميزات محددة بالطعام مثل الفرق بين لمعان السطح المقلي واللمسة غير اللامعة للطبخ على البخار.

أظهرت أبحاث حسن نجاد وآخرين (2016) أن ضبط InceptionV3 على Food-101 حقق دقة تصل إلى 88.28 في المئة، وهو قفزة كبيرة مقارنةً بالطرق السابقة المعتمدة على الميزات المصممة يدويًا. وقد دفعت الأعمال الحديثة باستخدام المحولات البصرية (Dosovitskiy et al., 2020) ونسخها الخاصة بالطعام دقة Food-101 إلى ما فوق 93 في المئة.

التصنيف متعدد التسميات للأطباق المعقدة

نادراً ما تحتوي الوجبات الحقيقية على عنصر واحد فقط. قد يحتوي طبق العشاء النموذجي على سمك السلمون المشوي، والهليون المحمص، والكينوا، وصلصة الزبدة بالليمون. يحل التصنيف متعدد التسميات، حيث يمكن أن تتلقى صورة واحدة عدة تسميات مستقلة، هذه المشكلة. أسست أبحاث وانغ وآخرين (2016) على الهياكل المعمارية CNN-RNN لتصنيف الصور متعددة التسميات أطرًا تلتقط أنماط التواجد المشترك للتسميات. في مجال الطعام، يعني ذلك أن النموذج يتعلم أن الأرز والكاري يظهران معًا بشكل متكرر، مما يعد إشارة سياقية تحسن دقة العناصر الغذائية الفردية.

توسع Nutrola هذا باستخدام نظام تصنيف هرمي. بدلاً من توقع تسمية مسطحة، يصنف النظام أولاً الفئة الغذائية العامة (حبوب، بروتين، خضار، صلصة)، ثم يضيق إلى العنصر المحدد داخل تلك الفئة. تقلل هذه الطريقة الثنائية من الارتباك بين العناصر المرئية المتشابهة من فئات مختلفة وتعكس كيفية تنظيم قواعد البيانات الغذائية.

تقدير الحصة: التحدي الثلاثي الأبعاد

تحديد الطعام الموجود على الطبق يحل نصف المشكلة فقط. تحتوي حصة 100 جرام من صدور الدجاج على 165 سعرة حرارية. تحتوي حصة 250 جرام على 412 سعرة حرارية. بدون تقدير دقيق للحصة، حتى التعرف المثالي على الطعام ينتج عنه تقديرات غير موثوقة للسعرات الحرارية.

تقدير العمق الأحادي

يتطلب تقدير حجم الطعام من صورة ثنائية الأبعاد واحدة أن يستنتج النظام العمق، وهي مشكلة تعرف بتقدير العمق الأحادي. نشر آيجن وبورشرغ وفيرغس (2014) أعمالًا أساسية تظهر أن الشبكات العصبية التلافيفية يمكن أن تتنبأ بخريطة العمق على مستوى البكسل من الصور الفردية. قدمت أبحاث حديثة من رانفتل وآخرين (2021) نموذج MiDaS، الذي تم تدريبه على مجموعات بيانات مختلطة ويقدم تقديرات عمق نسبية قوية عبر مشاهد متنوعة.

لتطبيقات الطعام، يسمح تقدير العمق للنظام بتمييز بين طبقة رقيقة من الصلصة المنتشرة على طبق ووعاء عميق من الحساء. مع الهندسة المعروفة للأشياء المرجعية الشائعة مثل الأطباق والأوعية والأدوات، يمكن تحويل خرائط العمق إلى تقديرات حجم تقريبية.

الأساليب الهندسية لتقدير الحجم

أظهرت أبحاث من جامعة طوكيو (أوكاموتو وياناي، 2016) أنه يمكن تقدير حجم الطعام من خلال تركيب الأشكال الهندسية، مثل الأسطوانات، والأنصاف الكروية، والمكعبات المستطيلة، على المناطق الغذائية المقسمة. كومة من الأرز تقارب نصف كرة. كوب من الحليب يقارب أسطوانة. شريحة من الخبز تقارب مكعبًا مستطيلاً.

تنتج هذه التقريبات الهندسية، جنبًا إلى جنب مع الأولويات الكثافية المتعلمة (يعرف النظام أن حجمًا معينًا من البطاطس المهروسة يزن أكثر من نفس الحجم من الفشار)، تقديرات الوزن التي أظهرت الأبحاث أنها تقع ضمن 15 إلى 20 في المئة من الحقيقة الأرضية لمعظم الأطعمة الشائعة. تقوم Nutrola بتحسين هذه التقديرات بشكل أكبر باستخدام نهج جماعي خاص يجمع بين التفكير الهندسي ونماذج الانحدار المتعلمة التي تم تدريبها على عشرات الآلاف من صور الطعام ذات الأوزان المعروفة.

معايرة الأجسام المرجعية

تستخدم بعض أنظمة التعرف على الطعام أجسامًا مرجعية معروفة في المشهد لمعايرة الحجم. يبلغ قطر الطبق القياسي حوالي 26 سنتيمترًا. تقيس بطاقة الائتمان 85.6 × 53.98 مليمتر. عندما يكتشف النظام مثل هذه الأجسام، يمكنه تحديد مقياس حقيقي يحسن بشكل كبير من تقديرات الحجم والوزن. أظهرت أبحاث من فنج وآخرين (2016) في جامعة بوردو أن المعايرة المعتمدة على الأطباق قللت من خطأ تقدير الحصة بحوالي 25 في المئة مقارنةً بالطرق غير المعايرة.

طبقة قاعدة البيانات الموثوقة

لا يكفي التعرف بالذكاء الاصطناعي وحده لتقديم تقديرات دقيقة للسعرات الحرارية. حتى إذا حقق نموذج دقة 99 في المئة في تحديد صدور الدجاج المشوي، فإن الناتج الغذائي النهائي يعتمد تمامًا على جودة قاعدة البيانات التي يرتبط بها.

هنا يختلف نهج Nutrola عن العديد من المنافسين. تعتمد معظم تطبيقات تتبع الطعام على قواعد بيانات مستندة إلى الجمهور حيث يمكن لأي مستخدم تقديم معلومات غذائية. وجدت الدراسات أن قواعد بيانات الطعام المستندة إلى الجمهور تحتوي على معدلات خطأ تتراوح بين 15 و30 في المئة، مع اختلاف بعض الإدخالات عن القيم المعتمدة في المختبر بأكثر من 50 في المئة لبعض المغذيات الكبرى.

تحافظ Nutrola على قاعدة بيانات غذائية موثوقة بنسبة 100 في المئة. يتم التحقق من كل إدخال مقابل مصادر موثوقة تشمل USDA FoodData Central، وجداول التركيب الغذائي لمركز الصحة الوطني البريطاني، وتحليلات غذائية تمت مراجعتها من قبل الأقران. يعني هذا أنه حتى إذا أدخلت طبقة التعرف بالذكاء الاصطناعي هامشًا صغيرًا من الخطأ في تحديد الطعام أو تقدير الحصة، فإن البيانات الغذائية التي ترتبط بها موثوقة.

تتعامل طبقة التحقق أيضًا مع دقة تفوتها الأساليب النقية المعتمدة على الذكاء الاصطناعي: تؤثر طريقة التحضير على المحتوى الغذائي. تحتوي صدر دجاج بوزن 150 جرام مشوي على حوالي 165 سعرة حرارية، لكن نفس الصدر المقلي في زيت الزيتون يحتوي على حوالي 230 سعرة حرارية. تلتقط قاعدة بيانات Nutrola هذه التغيرات المعتمدة على طريقة التحضير، ويتم تدريب نموذج التعرف على التمييز بين طرق الطهي عندما تكون الإشارات البصرية موجودة، مثل الفرق بين السطح المشوي والسماكة المقلية.

التعلم المستمر والتحسين

التعرف على الطعام ليس مشكلة تُحل مرة واحدة ويتم نشرها. تتطور المأكولات، وتظهر أطباق جديدة، وتزداد توقعات المستخدمين. تم تصميم نظام Nutrola للتحسين المستمر من خلال عدة آليات تستند إلى أبحاث التعلم الآلي.

التعلم النشط

التعلم النشط، الذي تم توضيحه من قبل سيتلز (2009)، هو استراتيجية حيث يحدد النموذج الأمثلة التي يشعر بأقل ثقة بشأنها ويعطي الأولوية لتلك للمراجعة والتسمية البشرية. عندما يواجه نظام Nutrola طبقًا لا يمكنه تصنيفه بثقة عالية، يتم وضع علامة على تلك الصورة للمراجعة من قبل الخبراء. بمجرد تصنيفها، تدخل في سلسلة التدريب ويصبح النموذج أفضل في الحالات التي كان فيها أضعف.

تعد هذه الطريقة أكثر كفاءة في البيانات من جمع المزيد من الصور التدريبية بشكل عشوائي. أظهرت الأبحاث باستمرار أن التعلم النشط يمكن أن يحقق دقة نموذج مكافئة مع 30 إلى 60 في المئة أقل من البيانات المسمى مقارنةً بالعينات العشوائية.

التعامل مع الأطعمة الجديدة والمأكولات الإقليمية

أحد أكبر التحديات في التعرف على الطعام هو تغطية الأطباق الإقليمية والثقافية المحددة. قد يواجه نموذج تم تدريبه أساسًا على المأكولات الغربية صعوبة في التعامل مع الحلويات من جنوب شرق آسيا، أو الحساء من غرب إفريقيا، أو الأطعمة المخمرة من الدول الاسكندنافية. تعالج Nutrola هذا من خلال حملات جمع بيانات مستهدفة تركز على المأكولات غير الممثلة، جنبًا إلى جنب مع تقنيات التعلم القليل (Wang et al., 2020) التي تسمح للنموذج بتعلم فئات جديدة من الطعام من أعداد صغيرة نسبيًا من الأمثلة.

تعد ملاحظات المستخدمين مدخلًا حاسمًا لهذه العملية. عندما يصحح المستخدم طعامًا تم تحديده بشكل خاطئ، فإن هذا التصحيح يتغذى مرة أخرى إلى سلسلة التدريب. يتم تجميع هذه التصحيحات عبر ملايين الوجبات المسجلة عالميًا، مما يخلق تدفقًا مستمرًا من بيانات الحقيقة الأرضية التي تغطي بالضبط الأطعمة التي يتناولها الناس في حياتهم اليومية.

كيف يترجم هذا إلى طبقك

تنتج الأبحاث الموضحة أعلاه فوائد ملموسة تشعر بها في كل مرة تفتح فيها Nutrola.

تسجيل في ثلاث ثوانٍ. يتم تنفيذ السلسلة الكاملة، من معالجة الصورة إلى البحث الغذائي، في أقل من ثلاث ثوانٍ على هاتف ذكي حديث. تسمح تقنيات تحسين النموذج بما في ذلك التكميم (Jacob et al., 2018) والبحث عن بنية الشبكة العصبية (Zoph وLe، 2017) بتشغيل نماذج معقدة بكفاءة على الأجهزة المحمولة دون التضحية بالدقة.

التعامل مع الوجبات المعقدة. يعني الكشف متعدد التسميات والتقسيم الدلالي أنك لست بحاجة إلى تصوير كل عنصر غذائي بشكل منفصل. تنتج صورة واحدة لطبق مليء تحليلات غذائية فردية لكل مكون.

دقة عبر المأكولات. يضمن التعلم المستمر وجمع البيانات المستهدفة أن النظام يعمل سواء كنت تتناول السوشي في طوكيو، أو التاكو في مكسيكو سيتي، أو الإينجيرا في أديس أبابا، أو مشاوي يوم الأحد في لندن. يتحسن النموذج مع كل وجبة يتم تسجيلها عبر قاعدة مستخدمي Nutrola العالمية.

تحسين دقة تدريجي. كلما استخدمت Nutrola أكثر، أصبحت أفضل، سواء بالنسبة لك بشكل فردي أو لجميع المستخدمين بشكل جماعي. يضمن التعلم النشط أن يركز النموذج تحسينه على الحالات التي يحتاجها أكثر.

بيانات غذائية موثوقة. على عكس التطبيقات التي تعتمد على قواعد بيانات مستندة إلى الجمهور ذات معدلات خطأ غير معروفة، فإن كل تقدير للسعرات الحرارية تعيده Nutrola مدعوم ببيانات غذائية موثوقة تم التحقق منها في المختبر. يتعرف الذكاء الاصطناعي على الطعام؛ تضمن قاعدة البيانات الموثوقة أن الأرقام صحيحة.

الأسئلة الشائعة

كيف يتعرف الذكاء الاصطناعي من Nutrola على الطعام من صورة؟

تستخدم Nutrola سلسلة متعددة المراحل من الرؤية الحاسوبية. تمر صورتك أولاً عبر معالجة الصورة، ثم عبر نموذج اكتشاف عميق يتعرف على كل عنصر غذائي على الطبق ويقسمه. يتم تصنيف كل عنصر باستخدام الشبكات العصبية التلافيفية التي تم ضبطها على مجموعات بيانات محددة بالطعام، ويتم تقدير حجمه باستخدام تقدير العمق والتفكير الحجمي، ويتم ربط النتيجة بقاعدة بيانات Nutrola الغذائية الموثوقة لإنتاج قيم السعرات الحرارية والمغذيات الكبرى.

ما مدى دقة تقنية التعرف على الطعام من Nutrola؟

تحقق نماذج التصنيف من Nutrola معدلات دقة تصل إلى 90 في المئة على المعايير القياسية للتعرف على الطعام، مع تجاوز دقة أعلى من 95 في المئة. بالنسبة لتقدير الحصة، عادةً ما يقع النظام ضمن 15 إلى 20 في المئة من الوزن الفعلي، وهو ما يعادل أو أفضل من دقة تقدير المدربين الغذائيين. بالتزامن مع قاعدة بيانات Nutrola الموثوقة، ينتج هذا تقديرات سعرات حرارية أكثر موثوقية بكثير من التسجيل اليدوي، والذي تظهر الأبحاث أنه يقلل من تناول الطعام بنسبة 10 إلى 45 في المئة.

ما الأبحاث ومجموعات البيانات التي تدعم الذكاء الاصطناعي للتعرف على الطعام من Nutrola؟

تستند تقنية Nutrola إلى أبحاث الرؤية الحاسوبية الأساسية بما في ذلك الشبكات العصبية التلافيفية التي تم التحقق منها على ImageNet، وهياكل اكتشاف الأجسام مثل Faster R-CNN وDETR، ومجموعات البيانات الخاصة بالطعام بما في ذلك Food-101 وUECFOOD-256. يستند النظام أيضًا إلى أبحاث تقدير العمق الأحادي لتقدير الحصص وأبحاث التعلم النشط لتحسين النموذج المستمر. يتم التحقق من جميع البيانات الغذائية مقابل مصادر موثوقة مثل USDA FoodData Central.

هل يمكن لـ Nutrola التعرف على أطعمة متعددة في طبق واحد؟

نعم. تستخدم Nutrola الكشف متعدد التسميات والتقسيم الدلالي لتحديد وتحليل كل عنصر غذائي مميز في صورة واحدة. سواء كان طبقك يحتوي على عنصرين أو ثمانية، يقوم النظام بعزل كل واحد، وتصنيفه بشكل مستقل، وتقدير حجمه، وإرجاع تحليل غذائي لكل عنصر بالإضافة إلى إجمالي الوجبة.

كيف تتعامل Nutrola مع الأطعمة من مختلف المأكولات والثقافات؟

تجمع Nutrola بين بيانات التدريب ذات التغطية الواسعة مع جمع البيانات المستهدفة للمأكولات غير الممثلة وتقنيات التعلم القليل التي تسمح للنموذج بتعلم فئات جديدة من الطعام من أعداد صغيرة نسبيًا من الأمثلة. تغذي تصحيحات المستخدمين من قاعدة مستخدمي Nutrola العالمية باستمرار إلى سلسلة التدريب، مما يضمن تحسين الدقة للأطباق المحددة التي يتناولها الناس عبر كل منطقة وثقافة غذائية.

هل تتحسن تقنية التعرف على الطعام من Nutrola مع مرور الوقت؟

نعم. تستخدم Nutrola التعلم النشط، وهي استراتيجية تعلم آلي حيث يحدد النظام الصور التي يشعر بأقل ثقة بشأنها ويعطي الأولوية لتلك للمراجعة من قبل الخبراء وإعادة التدريب. بالتزامن مع ملاحظات المستخدمين المجمعة من ملايين الوجبات المسجلة عالميًا، يعني هذا أن النموذج يتحسن باستمرار. كل وجبة تقوم بتسجيلها تساهم في جعل التعرف من Nutrola أكثر دقة لجميع المستخدمين.

مستعد لتحويل تتبع تغذيتك؟

انضم إلى الآلاف الذين حولوا رحلتهم الصحية مع Nutrola!