أمثلة على سير العمل في TensorFlow

تتضمّن هذه الصفحة أمثلة على سير العمل لتوضيح استخدامات TensorFlow مع Earth Engine. اطّلِع على صفحة TensorFlow للحصول على مزيد من التفاصيل. تم كتابة هذه الأمثلة باستخدام واجهة برمجة التطبيقات Python API في Earth Engine وTensorFlow التي تعمل في دفاتر ملاحظات Colab.

التكاليف

التوقّع المتعدّد الفئات باستخدام شبكة عصبية عميقة

الشبكة العصبية "العميقة" (DNN) هي ببساطة شبكة عصبية اصطناعية (ANN) تحتوي على واحدة أو أكثر من الطبقات المخفية. يوضّح هذا المثال شبكة عصبية عميقة بسيطة جدًا تتضمّن طبقة مخفية واحدة. تأخذ شبكة DNN الإدخالات على شكل متجهات طيفية (أي بكسل واحد في كل مرة) وتُخرج تصنيفًا واحدًا واحتمالات الفئات لكل بكسل. توضِّح "دفتر ملاحظات Colab" أدناه كيفية إنشاء شبكة DNN وتدريبها باستخدام بيانات من Earth Engine وإجراء توقّعات بشأن الصور التي تم تصديرها واستيراد التوقّعات إلى Earth Engine.

شبكة عصبية عميقة قابلة للاستضافة للتنبؤ في Earth Engine

للحصول على توقّعات من النموذج الذي تم تدريبه مباشرةً في Earth Engine (مثلاً في محرر الرموز البرمجية)، عليك استضافة النموذج على Google AI Platform. يوضّح هذا الدليل كيفية حفظ نموذج مدرَّب بتنسيق SavedModel وإعداد النموذج للاستضافة باستخدام الأمر earthengine model prepare والحصول على توقّعات في Earth Engine بشكل تفاعلي باستخدام ee.Model.fromAiPlatformPredictor.

الانحدار اللوجستي باستخدام TensorFlow

من السهل تنفيذ أساليب تعلُّم الآلة الكلاسيكية، مثل الانحدار اللوجستي، في TensorFlow. توضِّح "دفتر الملاحظات" هذا أداة رصد للغابات المُصنَّفة على أنّها مُصنَّعة استنادًا إلى الانحدار اللوجستي، وذلك من خلال الصور المركبة السنوية قبل وبعد. يُرجى العِلم أنّ هذا النموذج البسيط جدًا مخصّص لأغراض توضيحية فقط، ويمكنك إضافة بعض الطبقات المخفية لزيادة الدقة.

الانحدار باستخدام شبكة عصبية تلافعية

تحتوي الشبكة العصبية "التجميعية" (CNN) على طبقة تجميعية واحدة أو أكثر، حيث تكون المدخلات هي مجموعات من وحدات البكسل، ما يؤدي إلى إنشاء شبكة غير متصلة بالكامل، ولكنها مناسبة لتحديد الأنماط المكانية. لا تحتوي الشبكة العصبية التوليدية بالكامل (FCNN) على طبقة مكتملة الاتصال كمخرج. وهذا يعني أنّه لا يتعلم نتيجة كليّة (أي نتيجة واحدة لكل صورة)، بل يتعلم نتائج مُعدَّلة (أي لكل بكسل).

توضِّح "دفتر ملاحظات" Colab هذا استخدام نموذج UNET، وهو شبكة عصبية تلافعية وظيفية تم تطويرها لتقسيم الصور الطبية، وذلك لتوقع ناتج مستمر [0،1] في كل بكسل من 256×256 بكسل مجاور. على وجه التحديد، يوضّح هذا المثال كيفية تصدير أجزاء من البيانات لتدريب الشبكة وكيفية تداخل أجزاء الصور لاستنتاجها، وذلك لإزالة العناصر المزعجة في حدود المربّعات.

التدريب على AI Platform

بالنسبة إلى النماذج الكبيرة نسبيًا (مثل مثال FCNN)، قد لا يكون طول عمر المعالج الافتراضية المجانية الذي يتم تشغيل أوراق ملاحظات Colab عليه كافيًا لمهمّة تدريب طويلة الأمد. على وجه التحديد، إذا لم يتم تقليل خطأ التنبؤ المتوقّع في مجموعة بيانات التقييم، قد يكون من الحكمة إجراء المزيد من دورات التدريب. لتنفيذ مهام تدريب كبيرة في السحابة الإلكترونية، توضِّح ملفّ ملاحظات Colab هذا كيفية تجميع رمز التعليم وبدء مهمة تدريب وإعداد SavedModel باستخدام الأمر earthengine model prepare والحصول على توقّعات في Earth Engine بشكل تفاعلي باستخدام ee.Model.fromAiPlatformPredictor.