پیش بینی با استفاده از پلتفرم TensorFlow و Cloud AI

TensorFlow یک پلت فرم متن باز ML است که از روش های پیشرفته ML مانند یادگیری عمیق پشتیبانی می کند. این صفحه ویژگی های خاص TensorFlow را در Earth Engine توضیح می دهد. اگرچه مدل‌های TensorFlow خارج از Earth Engine توسعه یافته و آموزش داده می‌شوند، API Engine Earth روش‌هایی را برای صادرات آموزش و آزمایش داده‌ها در قالب TFRecord و واردات/صادرات تصاویر در قالب TFRecord ارائه می‌کند. برای اطلاعات بیشتر درباره نحوه توسعه خطوط لوله برای استفاده از TensorFlow با داده‌های Earth Engine ، صفحه نمونه‌های TensorFlow را ببینید. برای کسب اطلاعات بیشتر در مورد نحوه نوشتن داده ها در فایل های TFRecord به صفحه TFRecord مراجعه کنید.

ee.Model

بسته ee.Model تعامل با مدل‌های یادگیری ماشینی مبتنی بر TensorFlow را مدیریت می‌کند.

تعامل با مدل های میزبانی شده در پلتفرم هوش مصنوعی

یک نمونه جدید ee.Model را می توان با ee.Model.fromAiPlatformPredictor() ایجاد کرد. این یک شی ee.Model است که داده‌های Earth Engine را در تانسورها بسته‌بندی می‌کند، آنها را به عنوان درخواست‌های پیش‌بینی به پلتفرم هوش مصنوعی Google ارسال می‌کند و سپس به طور خودکار پاسخ‌ها را در انواع داده‌های Earth Engine دوباره جمع می‌کند. توجه داشته باشید که بسته به اندازه و پیچیدگی مدل خود و ورودی های آن، ممکن است بخواهید حداقل اندازه گره مدل پلتفرم هوش مصنوعی خود را تنظیم کنید تا حجم بالایی از پیش بینی ها را در خود جای دهد.

Earth Engine به مدل‌های پلتفرم هوش مصنوعی برای استفاده از قالب SavedModel TensorFlow نیاز دارد. قبل از اینکه یک مدل میزبان بتواند با Earth Engine تعامل داشته باشد، ورودی/خروجی های آن باید با فرمت تبادلی TensorProto، به ویژه TensorProtos سریال شده در base64 سازگار باشد. برای آسان‌تر کردن این کار، Earth Engine CLI دستور model prepare را دارد که SavedModel موجود را در عملیات‌های مورد نیاز برای تبدیل فرمت‌های ورودی/خروجی می‌پیچد.

برای استفاده از یک مدل با ee.Model.fromAiPlatformPredictor() ، باید مجوزهای کافی برای استفاده از مدل داشته باشید. به طور خاص، شما (یا هر کسی که از مدل استفاده می کند) حداقل به نقش کاربر مدل موتور ML نیاز دارید. می‌توانید مجوزهای مدل را از صفحه مدل‌های کنسول Cloud بررسی و تنظیم کنید.

مناطق

شما باید از نقاط انتهایی منطقه ای برای مدل های خود استفاده کنید، منطقه را در ایجاد مدل، ایجاد نسخه و در ee.Model.fromAiPlatformPredictor() مشخص کنید. هر منطقه ای کار می کند (از global استفاده نکنید)، اما us-central1 ترجیح داده می شود. پارامتر REGIONS را مشخص نکنید. اگر در حال ایجاد یک مدل از Cloud Console هستید، مطمئن شوید که کادر منطقه ای علامت زده شده است.

هزینه ها

پیش بینی تصویر

از model.predictImage() برای پیش بینی در ee.Image با استفاده از یک مدل میزبان استفاده کنید. نوع برگشتی predictImage() یک ee.Image است که می‌تواند به نقشه اضافه شود، در محاسبات دیگر استفاده شود، صادر شود، و غیره (برای اطلاعات بیشتر در مورد نحوه کار کاشی کاری به سند TFRecord مراجعه کنید). توجه داشته باشید که Earth Engine همیشه تانسورهای سه بعدی را به مدل شما ارسال می کند حتی زمانی که باندها اسکالر هستند (آخرین بعد 1 خواهد بود).

تقریباً همه مدل‌های کانولوشنیک دارای یک پیش‌بینی ورودی ثابت خواهند بود (داده‌هایی که مدل بر روی آن آموزش داده شده است). در این حالت، پارامتر fixInputProj را در فراخوانی به ee.Model.fromAiPlatformPredictor() روی true تنظیم کنید. هنگام تجسم پیش‌بینی‌ها، هنگام بزرگ‌نمایی مدلی که دارای نمایش ورودی ثابت است، احتیاط کنید. این به همان دلیلی است که در اینجا توضیح داده شده است . به طور خاص، بزرگ‌نمایی به یک محدوده فضایی بزرگ می‌تواند منجر به درخواست داده‌های بیش از حد شود و ممکن است به صورت کاهش سرعت یا رد شدن توسط پلتفرم هوش مصنوعی ظاهر شود.