En los ejemplos de esta página, se muestran los usos de Vertex AI con Earth Engine. Consulta la página de modelos alojados para obtener más detalles. En estos ejemplos, se usa la API de Python de Earth Engine que se ejecuta en notebooks de Colab.
Costos
AutoML
Clasificación de cultivos con poco código
AutoML permite crear y entrenar un modelo con un esfuerzo técnico mínimo. En este ejemplo, se muestra cómo entrenar e implementar un modelo tabular de AutoML con el SDK de Python de Vertex AI y, luego, conectarse a él desde Earth Engine para clasificar los tipos de cultivos a partir de imágenes aéreas del Programa Nacional de Imágenes Agrícolas (NAIP).
PyTorch
Clasificación de cobertura terrestre con una CNN
En este ejemplo, se muestra una CNN simple que toma varios vectores espectrales como entradas (es decir, un píxel a la vez) y genera una sola etiqueta de clase por píxel. En el notebook de Colab, se muestra cómo crear la CNN, entrenarla con datos de Earth Engine, implementar el modelo en Vertex AI y obtener predicciones del modelo en Earth Engine.
Tensorflow
Predicción de varias clases con una DNN desde cero
Una red neuronal “profunda” (DNN) es una red neuronal artificial (ANN) con una o más capas ocultas. En este ejemplo, se muestra una DNN simple con una sola capa oculta. La DNN toma vectores espectrales como entradas (es decir, un píxel a la vez) y genera una sola etiqueta de clase y probabilidades de clase por píxel. En el notebook de Colab, se muestra cómo crear la DNN, entrenarla con datos de Earth Engine, realizar predicciones en las imágenes exportadas y, luego, importar las predicciones a Earth Engine.
Predicción de varias clases con una DNN alojada en Vertex AI
Puedes obtener predicciones de un modelo alojado en Vertex AI directamente en Earth Engine (p.ej., en el editor de código). En esta guía, se muestra cómo entrenar, guardar y preparar un modelo de TensorFlow para alojarlo, implementarlo en un extremo de Vertex AI y obtener un mapa de predicciones de modelos interactivos de Earth Engine.
Segmentación semántica con una FCNN entrenada y alojada en Vertex AI
En esta guía, se muestra la segmentación semántica para la cartografía de cobertura terrestre. Los detalles sobre las entradas o los datos de entrenamiento se encuentran en esta sesión de Geo for Good de 2022. Con datos de Earth Engine, esta guía muestra cómo entrenar un modelo en Vertex AI con una máquina personalizada, prepararlo para alojarlo, implementarlo en un extremo y obtener un mapa de predicciones de modelos interactivos de Earth Engine.
Aloja un modelo de segmentación de copas de árboles previamente entrenado
Puedes alojar modelos previamente entrenados para obtener predicciones interactivas en Earth Engine. Por ejemplo, Li et al. (2023) publicaron varios modelos de segmentación de copas de árboles implementados en TensorFlow. Si las entradas y salidas tienen la forma adecuada, estos modelos se pueden alojar directamente y usarse para obtener predicciones en Earth Engine donde haya imágenes de entrada. En esta guía, se muestra cómo descargar un modelo previamente entrenado, prepararlo para alojarlo en Vertex AI y obtener predicciones sobre las imágenes del catálogo público de Earth Engine.
Bosques de decisión de Yggdrasil (YDF)
Bosques de decisión de Yggdrasil (YDF) es una implementación de modelos populares de aprendizaje automático basados en árboles compatibles con TensorFlow. Estos modelos se pueden entrenar, guardar y alojar en Vertex AI, al igual que con las redes neuronales. En este notebook, se muestra cómo instalar YDF, entrenar un modelo simple, alojarlo en Vertex AI y obtener predicciones interactivas en Earth Engine.
Obsoleto
TensorFlow Decision Forests
TensorFlow Decision Forests (TF-DF) es una implementación de modelos populares de aprendizaje automático basados en árboles en TensorFlow. Estos modelos se pueden entrenar, guardar y alojar en Vertex AI, al igual que con las redes neuronales de TensorFlow. En este notebook, se muestra cómo instalar TF-DF, entrenar un bosque aleatorio, alojar el modelo en Vertex AI y obtener predicciones interactivas en Earth Engine.
Regresión con un FCNN
Una red neuronal "convolucional" (CNN) contiene una o más capas convolucionales, en las que las entradas son vecindarios de píxeles, lo que genera una red que no está completamente conectada, pero es adecuada para identificar patrones espaciales. Una red neuronal convolucional completa (FCNN) no contiene una capa completamente conectada como resultado. Esto significa que no aprende un resultado global (es decir, un solo resultado por imagen), sino resultados localizados (es decir, por píxel).
En este notebook de Colab, se muestra el uso del modelo UNET, una FCNN desarrollada para la segmentación de imágenes médicas, para predecir una salida continua [0,1] en cada píxel de 256 × 256 vecindarios de píxeles. Específicamente, en este ejemplo, se muestra cómo exportar parches de datos para entrenar la red y cómo superponer parches de imágenes para la inferencia, de modo que se eliminen los artefactos de los límites de las tarjetas.
Realiza el entrenamiento en AI Platform
En el caso de modelos relativamente grandes (como el ejemplo de FCNN), es posible que la longevidad de la máquina virtual gratuita en la que se ejecutan los notebooks de Colab no sea suficiente para una tarea de entrenamiento de larga duración. Específicamente, si el error de predicción esperado no se minimiza en el conjunto de datos de evaluación, es posible que se deban realizar más iteraciones de entrenamiento. Para realizar trabajos de entrenamiento grandes en la nube, en este notebook de Colab, se muestra cómo empacar tu código de entrenamiento, iniciar un trabajo de entrenamiento, preparar un SavedModel
con el comando earthengine model prepare
y obtener predicciones en Earth Engine de forma interactiva con ee.Model.fromAiPlatformPredictor
.