تدريب نموذج تصنيف الصور باستخدام AutoML Vision Edge

لتدريب نموذج تصنيف الصور، عليك تزويد AutoML Vision Edge بمجموعة من والصور والتسميات المقابلة. تستخدم شركة AutoML Vision Edge مجموعة البيانات هذه لتدريب الجديد في السحابة الإلكترونية، والذي يمكنك استخدامه لتصنيف الصور على الجهاز فقط في التطبيق. (راجع نظرة عامة للحصول على معلومات عامة عن هذه الميزة).

AutoML Vision Edge عبارة عن منصة خدمة السحابة الإلكترونية. يخضع استخدام الخدمة إلى اتفاقية ترخيص Google Cloud Platform والأحكام الخاصة بالخدمات وتحرير الفاتورة وفقًا لذلك. للحصول على معلومات الفوترة، يُرجى مراجعة AutoML الأسعار .

قبل البدء

1- تجميع بيانات التدريب

أولاً، تحتاج إلى تجميع مجموعة بيانات تدريب للصور المصنفة. إبقاء مع وضع الإرشادات التالية في الاعتبار:

  • يجب أن تكون الصور بأحد التنسيقات التالية: JPEG أو PNG أو GIF أو BMP أو ICO.

  • يجب أن يكون حجم كل صورة 30 ميغابايت أو أقل. يُرجى ملاحظة أنّ AutoML Vision Edge معظم الصور أثناء المعالجة المسبقة، لذلك ليس هناك فائدة من الدقة عمومًا تقديم صور عالية الدقة للغاية.

  • عليك تضمين 10 أمثلة على الأقل لكل تصنيف ويفضّل أن يكون عددها 100 أو أكثر.

  • تضمين زوايا متعددة ودرجات دقة وخلفيات متعددة لكل تصنيف

  • يجب أن تكون بيانات التدريب قريبة قدر الإمكان من البيانات التي التنبؤات. فعلى سبيل المثال، إذا كانت حالة الاستخدام لديك تتضمن معلومات ضبابية والصور المنخفضة الدقة (مثل تلك التي تلتقطها كاميرا المراقبة)، وبيانات التدريب من صور ضبابية منخفضة الدقة.

  • تم تحسين النماذج التي أنشأتها أداة AutoML Vision Edge للصور الفوتوغرافية التي تصوّر الأجسام في العالم الحقيقي. قد لا تعمل بشكل جيد مع الأشعة السينية والرسومات اليدوية المستندات الممسوحة ضوئيًا والإيصالات وما إلى ذلك.

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

عندما تكون صور التدريب جاهزة، يمكنك إعدادها لاستيرادها إلى Firebase. أمامك ثلاثة خيارات:

الخيار 1: أرشيف ZIP المنظَّم

نظّم صور التدريب في أدلة، يكون كل منها يحمل اسم التسمية يحتوي على صور تُعد أمثلة على تلك التصنيفات. ثم اضغط الدليل بتنسيق أرشيف zip.

يمكن أن تصل أسماء الأدلة في أرشيف ZIP هذا إلى 32 حرفًا ASCII ويمكن أن يحتوي فقط على أحرف أبجدية رقمية وحرف الشرطة السفلية (_).

على سبيل المثال:

my_training_data.zip
  |____accordion
  | |____001.jpg
  | |____002.jpg
  | |____003.jpg
  |____bass_guitar
  | |____hofner.gif
  | |____p-bass.png
  |____clavier
    |____well-tempered.jpg
    |____well-tempered (1).jpg
    |____well-tempered (2).jpg

الخيار 2: Cloud Storage باستخدام فهرس CSV

تحميل صور التدريب إلى Google Cloud Storage وإعداد ملف CSV يسرد عنوان URL لكل صورة، واختياريًا التسميات الصحيحة لكل صورة. يكون هذا الخيار مفيدًا عند استخدام مجموعات بيانات كبيرة جدًا.

على سبيل المثال، يمكنك تحميل صورك إلى Cloud Storage وإعداد ملف CSV، مثل ما يلي:

gs://your-training-data-bucket/001.jpg,accordion
gs://your-training-data-bucket/002.jpg,accordion
gs://your-training-data-bucket/003.jpg,accordion
gs://your-training-data-bucket/hofner.gif,bass_guitar
gs://your-training-data-bucket/p-bass.png,bass_guitar
gs://your-training-data-bucket/well-tempered.jpg,clavier
gs://your-training-data-bucket/well-tempered%20(1).jpg,clavier
gs://your-training-data-bucket/well-tempered%20(2).jpg,clavier

يجب تخزين الصور في حزمة ضمن مشروع Google Cloud المرتبط بمشروعك على Firebase.

الاطّلاع على إعداد بيانات التدريب في Cloud AutoML وثائق الرؤية لمزيد من المعلومات حول إعداد ملف CSV.

الخيار 3: الصور غير المصنّفة

يمكنك تصنيف صور التدريب في وحدة تحكّم "Firebase" بعد تحميلها. إما بشكل فردي أو في ملف ZIP غير مهيكل. يُرجى الاطّلاع على الخطوة التالية.

2- تدريب نموذجك

بعد ذلك، درِّب أحد النماذج باستخدام صورك:

  1. فتح مجموعات بيانات الرؤية في وحدة تحكُّم Google Cloud. اختَر مشروعك عندما يُطلب منك ذلك.

  2. انقر على مجموعة بيانات جديدة، وأدخِل اسمًا لمجموعة البيانات، ثم اختَر نوع الذي ترغب في تدريبه، وانقر على إنشاء مجموعة بيانات.

  3. في علامة التبويب استيراد لمجموعة البيانات، حمّل إما أرشيفًا مضغوطًا من صور التدريب أو ملف CSV الذي يحتوي على مواقع Cloud Storage التي تم تحميلها إليه. اطّلِع على تجميع بيانات التدريب.

  4. بعد اكتمال مهمة الاستيراد، استخدِم علامة التبويب الصور للتحقّق من بيانات التدريب وتصنيف أي صور غير مصنّفة.

  5. في علامة التبويب تدريب، انقر على بدء التدريب.

    1. أدخِل اسمًا للنموذج واختَر نوع النموذج Edge.

    2. ضبط إعدادات التدريب التالية التي تتحكّم في الأداء للنموذج الذي تم إنشاؤه:

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

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

      يُرجى العِلم أنّه يمكن إكمال عملية التدريب في وقت أقل من الوقت المحدّد إذا رصد النظام أنّ النموذج محسّن وأنّ التدريب الإضافي لن يُحسِّن الدقة. يتم تحصيل الرسوم منك فقط للساعات المستخدمة بالفعل.

      أوقات التدريب المعتادة
      مجموعات صغيرة جدًاساعة واحدة
      500 صورةساعتان
      1,000 صورة3 ساعات
      5,000 صورة6 ساعات
      10,000 صورة7 ساعات
      50,000 صورة11 ساعة
      100,000 صورة13 ساعة
      1,000,000 صورة18 ساعة

3- تقييم النموذج

عند اكتمال التدريب، يمكنك النقر على علامة التبويب تقييم من أجل الاطلاع على مقاييس الأداء للنموذج.

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

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

معدل الاسترجاع هو نسبة عدد الصور التي تم تصنيفها بشكل صحيح إلى عدد الصور التي تتضمّن محتوى كان من المفترض أن يتمكّن النموذج من تصنيفه. فعندما في حالة تذكُّر النموذج بدرجة عالية، فإنه يخفق في تعيين أي تصنيف في كثير من الأحيان (أقل من ذلك سلبية).

يعتمد تحديد ما إذا كان التحسين للدقة أو التذكُّر على حالة استخدامك. عرض للمبتدئين في مجال AutoML Vision ودليل دليل تعلُّم الآلة الشامل - AutoML للحصول على مزيد من المعلومات

عندما تجد حدًّا أدنى للثقة ينتج عنه مقاييس تناسبك، قم بتدوينها فستستخدم حد الثقة لضبط النموذج التطبيق. (يمكنك استخدام هذه الأداة في أي وقت للحصول على قيمة حدّة مناسبة).

4. نشر النموذج أو تنزيله

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

نشر النموذج

على اختبار اختبار يمكنك استخدامها، يمكنك نشر النموذج على الإنترنت التي تقوم بتشغيل نموذجك في السحابة. يتم تناول هذا الخيار في مستندات Cloud AutoML: تشير رسالة الأشكال البيانية المستندات على هذا الموقع مع الخيارين المتبقيين.

نشر النموذج

من خلال نشر النموذج على Firebase، يمكنك تعديل النموذج بدون رفعه. إصدار جديد من التطبيق، ويمكنك استخدام Remote Config وA/B Testing لإجراء ما يلي: تعرض نماذج مختلفة ديناميكيًا لمجموعات مختلفة من المستخدمين.

إذا اخترت توفير النموذج من خلال استضافته باستخدام Firebase فقط، وليس حزمة التطبيق مع التطبيق، يمكنك تقليل حجم التنزيل الأولي لتطبيقك. ومع ذلك، يُرجى الأخذ في الاعتبار أنه إذا لم يتم إدراج النموذج مع تطبيقك، لن تتوفّر الوظائف المتعلّقة بالطراز إلى أن ينزِّل تطبيقك لأول مرة.

لنشر النموذج، يمكنك استخدام إحدى الطريقتَين التاليتَين:

  • نزِّل نموذج TF Lite من صفحة الاختبار والاستخدام الخاصة بمجموعة البيانات في وحدة تحكّم Google Cloud، ثم حمِّل النموذج على صفحة النموذج المخصّص في وحدة تحكّم Firebase. وعادةً ما تكون هذه هي أسهل طريقة لنشر نموذج واحد.
  • يمكنك نشر النموذج مباشرةً من مشروع Google Cloud إلى Firebase باستخدام SDK للمشرف. يمكنك استخدام هذه الطريقة لنشر عدة نماذج بشكل مجمّع أو لمساعدة في إنشاء مسارات نشر مبرمَجة.

لنشر النموذج باستخدام واجهة برمجة تطبيقات إدارة النماذج في "SDK للمشرف":

  1. ثبِّت حزمة تطوير البرامج (SDK) وابدأ إعدادها.

  2. انشر النموذج.

    ستحتاج إلى تحديد معرِّف مورد النموذج، وهو سلسلة الذي يبدو مثل المثال التالي:

    projects/PROJECT_NUMBER/locations/us-central1/models/MODEL_ID
    PROJECT_NUMBER رقم مشروع حزمة Cloud Storage التي تحتوي على الأمثل. قد يكون هذا مشروعك في Firebase أو مشروع Google Cloud آخر. مشروعك. يمكنك العثور على هذه القيمة في صفحة "الإعدادات" في وحدة تحكّم Firebase أو لوحة بيانات وحدة التحكّم Google Cloud
    MODEL_ID رقم تعريف النموذج، الذي حصلت عليه من AutoML Cloud API.

    Python

    # First, import and initialize the SDK.
    
    # Get a reference to the AutoML model
    source = ml.TFLiteAutoMlSource('projects/{}/locations/us-central1/models/{}'.format(
        # See above for information on these values.
        project_number,
        model_id
    ))
    
    # Create the model object
    tflite_format = ml.TFLiteFormat(model_source=source)
    model = ml.Model(
        display_name="example_model",  # This is the name you will use from your app to load the model.
        tags=["examples"],             # Optional tags for easier management.
        model_format=tflite_format)
    
    # Add the model to your Firebase project and publish it
    new_model = ml.create_model(model)
    new_model.wait_for_unlocked()
    ml.publish_model(new_model.model_id)
    

    Node.js

    // First, import and initialize the SDK.
    
    (async () => {
      // Get a reference to the AutoML model. See above for information on these
      // values.
      const automlModel = `projects/${projectNumber}/locations/us-central1/models/${modelId}`;
    
      // Create the model object and add the model to your Firebase project.
      const model = await ml.createModel({
        displayName: 'example_model',  // This is the name you use from your app to load the model.
        tags: ['examples'],  // Optional tags for easier management.
        tfliteModel: { automlModel: automlModel },
      });
    
      // Wait for the model to be ready.
      await model.waitForUnlocked();
    
      // Publish the model.
      await ml.publishModel(model.modelId);
    
      process.exit();
    })().catch(console.error);
    

تنزيل & دمج النموذج مع تطبيقك

من خلال تجميع النموذج مع تطبيقك، يمكنك التأكّد من أنّ ميزات الذكاء الاصطناعي في تطبيقك تظل تعمل حتى في حال عدم توفّر النموذج المستضاف على Firebase.

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

لتنزيل النموذج، انقر على TF Lite في أداة اختبار البيانات واستخدامها.

الخطوات التالية

والآن بعد أن نشرت النموذج أو نزّلته، تعرف على كيفية استخدام النموذج في +iOS تطبيقات Android