Prediksi menggunakan TensorFlow dan Cloud AI Platform

TensorFlow adalah platform ML open source yang mendukung metode ML lanjutan seperti deep learning. Halaman ini menjelaskan fitur khusus TensorFlow di Earth Engine. Meskipun model TensorFlow dikembangkan dan dilatih di luar Earth Engine, Earth Engine API menyediakan metode untuk mengekspor data pelatihan dan pengujian dalam format TFRecord serta mengimpor/mengekspor gambar dalam format TFRecord. Lihat halaman contoh TensorFlow untuk mengetahui informasi selengkapnya tentang cara mengembangkan pipeline untuk menggunakan TensorFlow dengan data dari Earth Engine. Lihat halaman TFRecord untuk mempelajari lebih lanjut cara Earth Engine menulis data ke file TFRecord.

ee.Model

Paket ee.Model menangani interaksi dengan model machine learning yang didukung TensorFlow.

Berinteraksi dengan model yang dihosting di AI Platform

Instance ee.Model baru dapat dibuat dengan ee.Model.fromAiPlatformPredictor(). Ini adalah objek ee.Model yang memaketkan data Earth Engine ke dalam tensor, meneruskannya sebagai permintaan prediksi ke Google AI Platform, lalu secara otomatis menyusun ulang respons menjadi jenis data Earth Engine. Perhatikan bahwa bergantung pada ukuran dan kompleksitas model serta inputnya, sebaiknya Anda menyesuaikan ukuran node minimum model AI Platform untuk mengakomodasi volume prediksi yang tinggi.

Earth Engine mewajibkan model AI Platform untuk menggunakan format SavedModel TensorFlow. Sebelum model yang dihosting dapat berinteraksi dengan Earth Engine, input/output-nya harus kompatibel dengan format pertukaran TensorProto, khususnya TensorProto yang diserialisasi dalam base64. Untuk mempermudah hal ini, CLI Earth Engine memiliki perintah model prepare yang menggabungkan SavedModel yang ada dalam operasi yang diperlukan untuk mengonversi format input/output.

Untuk menggunakan model dengan ee.Model.fromAiPlatformPredictor(), Anda harus memiliki izin yang memadai untuk menggunakan model tersebut. Secara khusus, Anda (atau siapa pun yang menggunakan model) memerlukan setidaknya peran Pengguna Model ML Engine. Anda dapat memeriksa dan menetapkan izin model dari halaman model di Cloud Console.

Wilayah

Anda harus menggunakan endpoint regional untuk model, dengan menentukan region saat pembuatan model, pembuatan versi, dan di ee.Model.fromAiPlatformPredictor(). Setiap region akan berfungsi (jangan gunakan global), tetapi us-central1 lebih disarankan. Jangan tentukan parameter REGIONS. Jika Anda membuat model dari Konsol Cloud, pastikan kotak regional dicentang.

Biaya

Prediksi Gambar

Gunakan model.predictImage() untuk membuat prediksi pada ee.Image menggunakan model yang dihosting. Jenis nilai yang ditampilkan predictImage() adalah ee.Image yang dapat ditambahkan ke peta, digunakan dalam komputasi lain, diekspor, dll. Earth Engine akan otomatis menyusun ubin band input dan menyesuaikan proyeksi output untuk perubahan skala dan overtiling sesuai kebutuhan. (Lihat dokumen TFRecord untuk informasi selengkapnya tentang cara kerja tiling). Perhatikan bahwa Earth Engine akan selalu meneruskan tensor 3D ke model Anda meskipun band adalah skalar (dimensi terakhir akan menjadi 1).

Hampir semua model convolutional akan memiliki proyeksi input tetap (data tempat model dilatih). Dalam hal ini, tetapkan parameter fixInputProj ke true dalam panggilan Anda ke ee.Model.fromAiPlatformPredictor(). Saat memvisualisasikan prediksi, berhati-hatilah saat memperkecil model yang memiliki proyeksi input tetap. Hal ini karena alasan yang sama seperti yang dijelaskan di sini. Secara khusus, memperbesar cakupan spasial yang besar dapat menyebabkan permintaan terlalu banyak data dan dapat muncul sebagai pelambatan atau penolakan oleh AI Platform.