Unpacking and Utilizing Vertex with Google Earth Engine for Machine Learning.

Stephen Chege-Tierra Insights
Towards AI
Published in
4 min readMay 8, 2024

--

Created by the author with DALL E-3

Google Earth Engine for machine learning has just gotten a new face lift, with all the advancement that has been going on in the world of Artificial intelligence, Google Earth Engine was not going to be left behind as it is an important tool for spatial analysis.

I am referring to Vertex, the new machine learning platform that can help you train and deploy ML models and AI applications, and customize large language models (LLMs) for use in your AI-powered applications which is a new product set to be a game changer in the AI tech race.

How will this impact Google Earth Engine? Let us look at what is in this tool and how you can integrate Vertex with the Google Earth engine to analyse and deploy geospatial Earth data.

What is Google Earth Engine?

Google Earth Engine (GEE) is a ground-breaking technology that is changing our understanding of and interactions with our world. Established by Google in 2010, it possesses a vast assortment of geospatial data containing of petabytes of data collected by multiple satellites, such as Sentinel, MODIS, Landsat, and more for analysis.

GEE is the perfect resource for anyone fascinated with learning about, understanding, and visualizing the health of our world, be they an eco-aware fanatic, a data-savvy scientist, or an intrepid explorer. People have yet to understand how powerful this tool is and what it can do.

When everything is taken into account, Google Earth Engine is the effective force that has drastically transformed the way we track, assess, and understand the dynamics of our planet. It catalyzes sustainable action and is a tool for scientific inquiry, contributing to the creation of a more robust and linked world.

What is Vertex?

According to Google Cloud development, Vertex AI is a machine learning (ML) platform that allows you to train and deploy ML models and AI applications, and modify large language models (LLMs) for use in your AI-powered applications. Vertex AI assimilates workflows from data science, data engineering, and machine learning to help your teams work together with a shared toolkit and grow your apps with the help of Google Cloud.

Vertex AI has several features that are beneficial to Geospatial data scientists such as customer training which is a feature that can scale infrastructure for training custom machine learning models by widespread popular frameworks like TensorFlow, PyTorch, and scikit-learn.

Code for Goggle Earth Engine

/ Replace with your Vertex AI endpoint URL
var endpoint = "https://your-project-id.endpoints.YOUR_REGION/deployments/latest";

// Specify input tile size, projection, and output bands
var model = ee.Model.fromVertexAi({
'endpoint': endpoint,
'inputTileSize': [1, 1],
'proj': ee.Projection('EPSG:4326').atScale(10),
'fixInputProj': true,
'outputBands': {'output': { 'type': ee.PixelType.float(), 'dimensions': 1 } }
});

// Apply the model to an Earth Engine image
var image = ee.Image("LANDSAT/LC08/C02/T1_SR/LC08_044034_2014_04_08");
var classifiedImage = model.predict(image.toArray());

// Print the results
print(classifiedImage.getInfo());

With Python

Load Library.

import ee
from google.cloud import vertexai as vertexai
# Initialize Earth Engine
ee.Initialize()

# Import Vertex AI Engine module
from google.cloud import vertexai as vertexai

# Replace with your project ID
project_id = "your-project-id"

# Create Vertex AI Engine client
engine_client = vertexai.EngineServiceClient()

# Replace with your Vertex AI region
region = "us-central1"

# Create endpoint name
endpoint = f"{project_id}/endpoints/{region}/deployments/latest"

# Load the Vertex AI Engine model
model = engine_client.load_endpoint(endpoint=endpoint)

# Example usage: apply the model to an Earth Engine image
image = ee.Image("LANDSAT/LC08/C02/T1_SR/LC08_044034_2014_04_08")
classified_image = model.predict(image=image.toArray())

# Print the results
print(classified_image.getInfo())

How Will it Impact Google Earth Engine?

This new feature will greatly complement the Google Earth engine which in turn will deliver better spatial analysis. Here are other ways Vertex will impact Google Earth Engine.

Advanced Model Deployment: Geospatial Users can deploy their trained models to do inference on Earth observation data in real-time or in batch mode by combining Vertex AI with Google Earth Engine for analysis

Scalability: To develop and implement machine learning models, Vertex AI provides scalable infrastructure. Users of Google Earth Engine can benefit from this scalability by being able to handle larger datasets and carry out more intricate analyses.

Enhanced Machine Learning Capabilities: To create, implement, and oversee machine learning models, Vertex AI offers a single platform. Through the integration of Vertex AI with Google Earth Engine, users may gain access to sophisticated machine learning models and algorithms for more efficient analysis of Earth observation data.

Integration with Google Cloud Services: BigQuery, Cloud Storage, TensorFlow, and other Google Cloud services are all closely linked with Vertex AI. Users of Google Earth Engine may now easily access and examine Earth observation data that is stored in Google Cloud Platform (GCP) services. They can also take advantage of extra GCP features for data processing and analysis thanks to this connection.

Conclusion

Vertex AI is a major improvement over Google Cloud’s machine learning and data science solutions. Vertex AI simplifies the machine learning lifecycle by offering a unified platform with extensive tools and services, enabling seamless data preparation and model deployment. Vertex AI provides scalable infrastructure and managed services to satisfy a range of demands, whether users are looking to employ AutoML for rapid model generation or custom training for more complicated jobs. Vertex AI’s features for model explainability, monitoring, and smooth integration with other Google Cloud services enable businesses to quickly advance their machine learning projects and get insightful information from their data.

--

--