التوقّعات باستخدام TensorFlow وCloud AI Platform

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

ee.Model

تعالج حزمة ee.Model التفاعل مع نماذج تعلُّم الآلة المستندة إلى TensorFlow.

التفاعل مع النماذج المستضافة على AI Platform

يمكن إنشاء مثيل ee.Model جديد باستخدام ee.Model.fromAiPlatformPredictor(). هذا عنصر ee.Model يحزم بيانات Earth Engine في مصفوفات، ويعيد توجيهها كطلبات توقّع إلى Google AI Platform، ثم يعيد تلقائيًا تجميع الردود في أنواع بيانات Earth Engine. يُرجى العِلم أنّه استنادًا إلى حجم ومدى تعقيد النموذج وبيانات الإدخال، قد تحتاج إلى تعديل الحد الأدنى لحجم العقدة في نموذجك على "منصّة الذكاء الاصطناعي" لاستيعاب عددٍ كبيرٍ من التوقّعات.

تتطلّب أداة Earth Engine أن تستخدم نماذج AI Platform تنسيق SavedModel في TensorFlow. لكي يتمكّن النموذج المستضاف من التفاعل مع Earth Engine، يجب أن تكون مدخلاته/مخرجاته متوافقة مع تنسيق تبادل TensorProto، وبشكل خاص مع تنسيق ملف TensorProto التسلسلي بترميز base64. لتسهيل ذلك، تتضمّن وحدة تحكّم سطر الأوامر في Earth Engine الأمر model prepare الذي يلفّ SavedModel حاليًا في العمليات المطلوبة لتحويل تنسيقات الإدخال/الإخراج.

لاستخدام نموذج مع ee.Model.fromAiPlatformPredictor()، يجب أن يكون لديك أذونات كافية لاستخدام النموذج. على وجه التحديد، يجب أن يكون لديك (أو لدى أي مستخدم للنموذج) على الأقل دور "مستخدم نموذج محرّك تعلُّم الآلة". يمكنك فحص أذونات النماذج وضبطها من صفحة النماذج في Cloud Console.

المناطق

يجب استخدام نقاط نهاية إقليمية لنماذجك، مع تحديد المنطقة عند إنشاء النموذج، وإنشاء الإصدار وفي ee.Model.fromAiPlatformPredictor(). يمكن استخدام أي منطقة، ولكن يُفضَّل استخدام us-central1. لا تحدِّد المَعلمة REGIONS. إذا كنت بصدد إنشاء نموذج من Cloud Console، تأكَّد من وضع علامة في المربّع "إقليمي".

التكاليف

توقّعات الصور

استخدِم model.predictImage() لوضع توقّعات بشأن ee.Image باستخدام نموذج مستضاف. نوع الإرجاع لـ predictImage() هو ee.Image الذي يمكن إضافته إلى الخريطة، واستخدامه في عمليات حسابية أخرى، وتصديره، وما إلى ذلك. ستعرِض Earth Engine تلقائيًا أشرطة الإدخال وتعدِّل الإسقاط الناتج لتغييرات النطاق وإعادة التجميع حسب الحاجة. (اطّلِع على مستند TFRecord للحصول على مزيد من المعلومات عن آلية عمل التجميع في شرائح). يُرجى العِلم أنّ Earth Engine ستعيد توجيه مصفوفات 3D دائمًا إلى النموذج حتى عندما تكون النطاقات متسلسلة (سيكون السمة الأخيرة هي 1).

ستتضمّن جميع النماذج التوليدية تقريبًا إسقاطًا ثابتًا للمدخلات (أي البيانات التي تم تدريب النموذج عليها). في هذه الحالة، اضبط المَعلمة fixInputProj على true في طلبك إلى ee.Model.fromAiPlatformPredictor(). عند عرض التوقّعات، يجب توخّي الحذر عند التصغير في نموذج يحتوي على تصوُّر ثابت للإدخال. ويعود السبب في ذلك إلى السبب نفسه الموضّح هنا. وعلى وجه التحديد، يمكن أن يؤدي التصغير إلى نطاق مكاني كبير إلى طلبات للحصول على بيانات كثيرة جدًا، وقد يؤدي ذلك إلى إبطاء الأداء أو رفض الطلبات من قِبل "منصّة الذكاء الاصطناعي".