TensorFlow, derin öğrenme gibi ileri düzey makine öğrenimi yöntemlerini destekleyen açık kaynak bir makine öğrenimi platformudur. Bu sayfada, Earth Engine'daki TensorFlow'a özgü özellikler açıklanmaktadır. TensorFlow modelleri Earth Engine dışında geliştirilip eğitilse de Earth Engine API, eğitim ve test verilerini TFRecord biçiminde dışa aktarma ve TFRecord biçiminde görüntü içe/dışa aktarma yöntemleri sağlar. TensorFlow'u Earth Engine'daki verilerle kullanmak için ardışık düzenlerin nasıl geliştirileceği hakkında daha fazla bilgi için TensorFlow örnekleri sayfasına bakın. Earth Engine'ın verileri TFRecord dosyalarına nasıl yazdığı hakkında daha fazla bilgi edinmek için TFRecord sayfasına bakın.
ee.Model
ee.Model
paketi, TensorFlow destekli makine öğrenimi modelleriyle etkileşimi yönetir.
AI Platform'da barındırılan modellerle etkileşim kurma
ee.Model.fromAiPlatformPredictor()
ile yeni bir ee.Model
örneği oluşturulabilir. Bu, Earth Engine verilerini tenörlere paketleyen, bunları Google AI Platform'a tahmin istekleri olarak yönlendiren ve ardından yanıtları otomatik olarak Earth Engine veri türlerine yeniden birleştiren bir ee.Model
nesnesi. Modelinizin ve girişlerinin boyutuna ve karmaşıklığına bağlı olarak, AI Platform modelinizin minimum düğüm boyutunu yüksek hacimli tahminlere uygun olacak şekilde ayarlamak isteyebilirsiniz.
Earth Engine, AI Platform modellerinin TensorFlow'un SavedModel biçimini kullanmasını gerektirir. Barındırılan bir modelin Earth Engine ile etkileşime geçebilmesi için giriş/çıkışlarının, TensorProto değişim biçimiyle (özellikle de base64'te serileştirilmiş TensorProto'larla) uyumlu olması gerekir. Bu işlemi kolaylaştırmak için Earth Engine CLI'de, mevcut bir SavedModel'i giriş/çıkış biçimlerini dönüştürmek için gereken işlemlere sarmalayan model prepare
komutu bulunur.
ee.Model.fromAiPlatformPredictor()
ile bir modeli kullanmak için modeli kullanacak yeterli izinlere sahip olmanız gerekir. Daha açık belirtmek gerekirse, sizin (veya modeli kullanan herhangi bir kullanıcının) en az
ML Engine Model Kullanıcı rolüne sahip olmanız gerekir. Model izinlerini Cloud Console'un modeller sayfasından inceleyebilir ve ayarlayabilirsiniz.
Bölgeler
Modelleriniz için bölgesel uç noktalar kullanmalı, model oluştururken, sürüm oluştururken ve ee.Model.fromAiPlatformPredictor()
'te bölgeyi belirtmelisiniz. Herhangi bir bölge kullanılabilir (küresel kullanmayın) ancak us-central1
tercih edilir. REGIONS
parametresini belirtmeyin. Cloud Console'dan model oluşturuyorsanız bölgesel kutunun işaretlendiğinden emin olun.
Maliyetler
Resim Tahminleri
Barındırılan bir model kullanarak ee.Image
hakkında tahminde bulunmak için model.predictImage()
'ü kullanın. predictImage()
işlevinin döndürdüğü tür, haritaya eklenebilen, diğer hesaplamalarda kullanılabilen, dışa aktarılabilen vb. bir ee.Image
öğesidir. Earth Engine, giriş bantlarını otomatik olarak karolar ve ölçek değişiklikleri ile gerektiğinde aşırı karolama için çıkış projeksiyonunu ayarlar. (Kart oluşturmanın işleyiş şekli hakkında daha fazla bilgi için TFRecord belgesine bakın.) Earth Engine'ın, bantlar skaler olsa bile her zaman 3D tenzorları modelinize ileteceğini unutmayın (son boyut 1 olur).
Neredeyse tüm konvolüsyon modellerinde sabit bir giriş projeksiyonu (modelin eğitildiği verilerin projeksiyonu) bulunur. Bu durumda, ee.Model.fromAiPlatformPredictor()
çağrınızda fixInputProj
parametresini true olarak ayarlayın.
Tahminleri görselleştirirken sabit giriş projeksiyonuna sahip bir modeli uzaklaştırırken dikkatli olun. Bunun nedeni, burada açıklanan durumla aynıdır. Özellikle, büyük bir mekansal kapsama yakınlaştırmak çok fazla veri isteğiyle sonuçlanabilir ve AI Platform tarafından yavaşlama veya ret olarak kendini gösterebilir.