يتيح لك LiteRT تشغيل نماذج TensorFlow من تعلُّم الآلة في تطبيقات Android يوفّر نظام LiteRT الإنشاء والتخصيص بيئات التنفيذ لتشغيل النماذج على Android بسرعة وكفاءة، بما في ذلك خيارات تسريع الأجهزة.
نماذج تعلُّم الآلة
يستخدم LiteRT نماذج TensorFlow التي يتم تحويلها إلى نماذج تنسيق نموذج التعلم الآلي المحمول الأكثر كفاءة. يمكنك استخدام ميزات باستخدام LiteRT على Android أو تصميم نماذج TensorFlow الخاصة بك وتحويلها إلى تنسيق LiteRT.
تناقش هذه الصفحة استخدام نماذج التعلم الآلي المصممة بالفعل ولا تتناول إنشاء النماذج أو تدريبها أو اختبارها أو تحويلها. مزيد من المعلومات حول اختيار نماذج التعلم الآلي وتعديلها وإنشاؤها وتحويلها LiteRT في صفحة الطُرز.
تشغيل النماذج على Android
نموذج LiteRT الذي يعمل داخل تطبيق Android يأخذ البيانات والعمليات البيانات، ثم ينتج عنها تنبؤ بناءً على منطق النموذج. أداء TensorFlow يتطلب تنفيذ النموذج البسيط بيئة تشغيل خاصة أن تكون البيانات التي يتم تمريرها إلى النموذج بتنسيق بيانات محدد، يسمى tensor. عندما يعالج أحد النماذج البيانات، المعروفة باسم الاستنتاج، فإنها تنشئ نتائج تنبؤات وتمريرها إلى تطبيق Android حتى يتمكن من اتخاذ إجراء، مثل إظهار النتيجة للمستخدم أو تنفيذ منطق إضافي للأعمال.
الشكل 1. مسار التنفيذ الوظيفي لنماذج LiteRT في نظام Android التطبيقات.
على مستوى التصميم الوظيفي، يحتاج تطبيق Android الخاص بك إلى العناصر التالية تشغيل نموذج LiteRT:
- بيئة وقت تشغيل LiteRT لتنفيذ النموذج
- معالج إدخال النماذج لتحويل البيانات إلى موتّرات
- معالِج إخراج النموذج لتلقّي مُعالِجات نتائج الإخراج وتفسيرها كنتائج توقّعات
توضح الأقسام التالية كيف يمكن لمكتبات وأدوات LiteRT توفير هذه العناصر الوظيفية.
إنشاء التطبيقات باستخدام LiteRT
يصف هذا القسم المسار الموصى به والأكثر شيوعًا لتنفيذ LiteRT في تطبيق Android. ينبغي أن تولي اهتمامًا أكبر أقسام بيئة وقت التشغيل ومكتبات التطوير. في حال حذف إذا طورت نموذجًا مخصصًا، فتأكد من مراجعة قسم التطوير المتقدم المسارات.
خيارات بيئة بيئة التشغيل
هناك عدة طرق يمكنك من خلالها تفعيل بيئة وقت تشغيل لتنفيذ النماذج. في تطبيق Android. في ما يلي الخيارات المفضّلة:
- LiteRT في وقت تشغيل خدمات Google Play بيئة (يُنصح بها)
- بيئة وقت تشغيل LiteRT المستقلة
بشكل عام، يجب استخدام بيئة التشغيل التي توفِّرها Google Play. للغاية لأنها أكثر توفيرًا في المساحة من البيئة القياسية يتم تحميله ديناميكيًا، مع الحفاظ على حجم التطبيق أصغر. خدمات Google Play أيضًا يستخدم تلقائيًا أحدث إصدار ثابت من LiteRT مما يمنحك ميزات إضافية وتحسين الأداء بمرور الوقت. في حال حذف توفير تطبيقك على الأجهزة التي لا تتضمّن خدمات Google Play أو التي لا تتضمّن تحتاج إلى إدارة بيئة وقت تشغيل تعلُّم الآلة عن كثب، فيجب عليك استخدام وقت تشغيل LiteRT القياسي. يجمع هذا الخيار رمزًا إضافيًا في يتيح لك التحكّم بشكل أكبر في وقت تشغيل تعلُّم الآلة داخل التطبيق تكلفة زيادة حجم تنزيل تطبيقك.
يمكنك الوصول إلى بيئات وقت التشغيل هذه في تطبيق Android من خلال إضافة TensorFlow. مكتبات تطوير بسيطة لبيئة تطوير التطبيقات. للحصول على معلومات حول كيفية استخدام بيئات وقت التشغيل العادية في تطبيقك، راجِع المقالة التالية .
المكتبات
يمكنك الوصول إلى واجهة برمجة التطبيقات للترجمة من خلال Google Play. . يمكنك استخدام صفحة LiteRT الأساسية مكتبات الدعم في تطبيقك على Android. بالنسبة تفاصيل البرمجة حول استخدام مكتبات LiteRT ووقت التشغيل بيئات التطوير، يُرجى الاطّلاع على أدوات التطوير لأجهزة Android.
الحصول على نماذج
يتطلب تشغيل نموذج في أحد تطبيقات Android استخدام نموذج بتنسيق LiteRT. إِنْتَ استخدام نماذج مُنشأة مسبقًا أو إنشاء نموذج باستخدام TensorFlow وتحويله إلى الإصدار Lite . لمزيد من المعلومات حول كيفية الحصول على نماذج لتطبيق Android، راجع صفحة نماذج LiteRT.
التعامل مع بيانات الإدخال
يجب أن تكون أي بيانات تمررها في نموذج التعلم الآلي عبارة عن متوتر مع بيانات محددة البنية، ويُسمى غالبًا شكل الموتّر. لمعالجة البيانات باستخدام نموذج، أن يحوّل رمز التطبيق البيانات من تنسيقها الأصلي، مثل الصور أو النصوص أو البيانات الصوتية، في موتر بالشكل المطلوب لنموذجك.
تنفيذ الاستنتاجات
تُعرف معالجة البيانات من خلال نموذج لإنشاء نتيجة التنبؤ باسم من تنفيذ استنتاج. يتطلب الاستنتاج في أحد تطبيقات Android بيئة وقت تشغيل LiteRT ونموذج وإدخال البيانات.
يشير هذا المصطلح إلى السرعة التي يمكن أن يستنِد بها أحد النماذج استنتاجًا على جهاز معيّن. على حجم البيانات التي تتم معالجتها، وعلى تعقيد النموذج، موارد الحوسبة المتاحة مثل الذاكرة ووحدة المعالجة المركزية أو المعالِجات المتخصصة اسم مسرِّعات الأعمال يمكن أن تعمل نماذج تعلُّم الآلة بشكل أسرع على إلى معالجات متخصصة مثل وحدات معالجة الرسومات (GPUs) وأداة Tensor وحدات المعالجة (TPUs)، باستخدام برامج تشغيل أجهزة LiteRT التي تسمى مفوَّضين لمزيد من المعلومات حول المفوَّضين وتسريع الأجهزة معالجة النماذج، راجع قسم تسريع الأجهزة نظرة عامة.
التعامل مع نتائج الإخراج
تنشِئ النماذج نتائج تنبؤات في صورة عوامل عشرات، والتي يجب التعامل معها بواسطة تطبيق Android من خلال اتخاذ إجراء أو عرض نتيجة للمستخدم. ناتج النموذج يمكن أن تكون النتائج بسيطة مثل رقم يتوافق مع نتيجة واحدة (0 = كلب، 1 = قطة، 2 = طائر) لتصنيف الصورة، إلى نتائج أكثر تعقيدًا، مثل مربعات الإحاطة المتعددة لكائنات مصنفة في صورة ما، مع تصنيفات ثقة التنبؤ بين 0 و1.
مسارات التطوير المتقدمة
عند استخدام نماذج LiteRT أكثر تعقيدًا وتخصصًا، يمكنك إلى استخدام مناهج تطوير أكثر تقدمًا مما هو موضح أعلاه. تصف الأقسام التالية الأساليب المتقدمة لتنفيذ النماذج وتطويرها للاستخدام مع LiteRT في تطبيقات Android.
بيئات وقت التشغيل المتقدمة
بالإضافة إلى بيئة التشغيل العادية ووقت تشغيل "خدمات Google Play" بيئات LiteRT، هناك بيئات وقت تشغيل إضافية التي يمكن استخدامها مع تطبيق Android. الاستخدام المرجّح لهذه البيئات هو إذا لديك نموذج تعلُّم آلة يستخدم عمليات تعلُّم الآلة غير متاحة من خلال بيئة وقت التشغيل القياسية لـ LiteRT.
- وقت التشغيل المرن لـ LiteRT
- وقت تشغيل LiteRT المخصّص
يتيح لك وقت تشغيل Flex في LiteRT تضمين المشغلات المحددة المطلوبة لنموذجك. كخيار متقدم للجري نموذجك، يمكنك إنشاء LiteRT لـ Android لتشمل مشغلي الوظائف الأخرى المطلوبة لتشغيل نموذج تعلُّم الآلة من TensorFlow. لمزيد من المعلومات، يُرجى الاطّلاع على إنشاء LiteRT لأجهزة Android.
واجهات برمجة التطبيقات C وC++
يوفر LiteRT أيضًا واجهة برمجة تطبيقات لتشغيل النماذج باستخدام C وC++. إذا كان التطبيق Android NDK، فيجب عليك يمكنك استخدام واجهة برمجة التطبيقات هذه. يمكنك أيضًا استخدام واجهة برمجة التطبيقات هذه في حال نريد أن يكونوا قادرين على مشاركة التعليمة البرمجية بين منصات متعددة. لمزيد من المعلومات حول خيار التطوير هذا، راجع قسم التطوير الأدوات
تنفيذ النموذج المستند إلى الخادم
بوجه عام، يجب تشغيل النماذج في التطبيق على جهاز Android لاتخاذ يستفيدون من وقت الاستجابة البطيء وخصوصية البيانات المحسّنة للمستخدمين. ومع ذلك، فهناك حالات يكون فيها تشغيل أي نموذج على خادم سحابي، بعيدًا عن الجهاز، أفضل الحل. على سبيل المثال، إذا كان لديك نموذج كبير لا يضغط بسهولة وصولاً إلى الحجم الذي يتناسب مع احتياجات المستخدمين أجهزة Android، أو التي يمكن تنفيذها باستخدام أداء معقول على هذه الأجهزة. قد يكون هذا النهج أيضًا إذا كان الحل المفضل لديك هو أداء متسق للنموذج عبر مجموعة واسعة من الأجهزة على رأس الأولويات.
تقدّم Google Cloud حزمة كاملة من الخدمات لتشغيل جهاز TensorFlow. نماذج التعلم هذه. لمزيد من المعلومات، يُرجى الاطّلاع على الذكاء الاصطناعي والجهاز في Google Cloud المنتجات التعليمية.
تطوير النماذج المخصّصة وتحسينها
ومن المحتمل أن تشمل مسارات التطوير الأكثر تقدمًا تطوير آلة مخصصة النماذج التعليمية وتحسين تلك النماذج للاستخدام على أجهزة Android. إذا كنت التخطيط لإنشاء نماذج مخصّصة، مع الحرص على تطبيق والتقنيات إلى النماذج لتقليل الذاكرة والمعالجة. لمزيد من المعلومات حول كيفية إنشاء النماذج العالية الأداء للاستخدام مع LiteRT، راجع أفضل الأداء الممارسات في قسم "النماذج".