Configuración y conexión a su cuenta de Google Cloud

Ver en TensorFlow.org Ejecutar en Google Colab Ver en GitHub Descargar cuaderno Logotipo de KaggleEjecutar en Kaggle

Esta guía tiene como objetivo ayudar a los usuarios nuevos a configurar una cuenta de Google Cloud Platform específicamente con la intención de usar tensorflow_cloud para ejecutar fácilmente capacitación a escala en Google Cloud AI Platform. TensorFlow Cloud proporciona API que permiten a los usuarios pasar fácilmente de depurar, entrenar y ajustar el código de Keras y TensorFlow en un entorno local o kaggle a entrenamiento/ajuste distribuido en la nube.

1. Regístrese en Google Cloud Platform

Para comenzar, vaya a https://cloud.google.com/ y haga clic en "Comenzar gratis". Este es un proceso de registro de dos pasos en el que deberá proporcionar su nombre, dirección y una tarjeta de crédito. La cuenta inicial es gratis y viene con un crédito de $300 que puedes usar. Para este paso necesitarás proporcionar una cuenta de Google (es decir, tu cuenta de Gmail) para iniciar sesión.

Después de completar el proceso de registro, será redirigido a la página de bienvenida de Google Cloud Platform . Haga clic en la pestaña "Inicio" y tome nota de su ID de proyecto y número de proyecto. (ver Identificación de proyectos )

GCP_PROJECT_ID = 'YOUR_PROJECT_ID'
PROJECT_NUMBER = 'YOUR_PROJECT_NUMBER'

2.Habilite el SDK de Google Cloud y autentique su computadora portátil

Ahora que ha configurado su proyecto, podemos continuar con el resto de los pasos de configuración directamente desde este cuaderno. Hay tres tipos de cuadernos, este paso (paso 2) es ligeramente diferente para cada cuaderno, el resto de los pasos (pasos 3 a 6) son los mismos para todos los cuadernos.

  • 2.1. Autenticación para cuadernos Kaggle
  • 2.2. Autenticación para el cuaderno Colab
  • 2.3. Autenticación para portátiles con IA en la nube: no compatible.

2.1 Configuración de autenticación para una computadora portátil Kaggle

Si está utilizando una computadora portátil Kaggle, deberá repetir este paso para cualquier computadora portátil nueva que use con este proyecto. En su cuaderno, haga clic en Complementos -> Google Cloud SDK y siga las instrucciones que se le indiquen. Luego ejecute el siguiente comando para agregar sus credenciales de autenticación a este cuaderno.

import sys
if "kaggle_secrets" in sys.modules:
    from kaggle_secrets import UserSecretsClient
    UserSecretsClient().set_gcloud_credentials(project=GCP_PROJECT_ID)

2.2 Configuración de autenticación para una computadora portátil Colab

Si está utilizando una computadora portátil Colab, deberá repetir este paso para cualquier computadora portátil nueva que use con este proyecto. Ejecute el siguiente comando para agregar sus credenciales de autenticación a este cuaderno.

import sys
if "google.colab" in sys.modules:
    from google.colab import auth
    auth.authenticate_user()

El siguiente paso es configurar la cuenta de facturación para este proyecto. Google Cloud crea un proyecto para usted de forma predeterminada que se llama "Mi primer proyecto". Usaremos este proyecto predeterminado. Utilice su ID de proyecto (del paso 1) para ejecutar los siguientes comandos. Esto le mostrará su ID de cuenta de facturación. Anótelo para el siguiente paso.

gcloud beta billing accounts list

Utilice su ID de cuenta de facturación de arriba y ejecute lo siguiente para vincular su cuenta de facturación con su proyecto.

Tenga en cuenta que si utiliza un proyecto existente, es posible que no vea un Account_ID, esto significa que no tiene los permisos adecuados para ejecutar los siguientes comandos, comunicarse con su administrador o crear un nuevo proyecto.

BILLING_ACCOUNT_ID = 'YOUR_BILLING_ACCOUNT_ID'

!gcloud beta billing projects link $GCP_PROJECT_ID --billing-account $BILLING_ACCOUNT_ID

4. Habilite las API requeridas para tensorflow-cloud en su proyecto

Para tensorflow_cloud utilizamos dos API específicas: API de trabajos de capacitación de AI Platform y API de generador de nube . Tenga en cuenta que esta es una configuración única para este proyecto, no es necesario volver a ejecutar este comando para cada notebook.

gcloud services --project $GCP_PROJECT_ID enable ml.googleapis.com cloudbuild.googleapis.com

5. Cree un depósito de Google Cloud Storage

Usaremos este depósito de almacenamiento para activos temporales y para guardar los puntos de control del modelo. Tome nota del nombre del depósito para referencia futura. Tenga en cuenta que los nombres de los depósitos son únicos a nivel mundial.

BUCKET_NAME = 'YOUR_BUCKET_NAME'

GCS_BUCKET = f'gs://{BUCKET_NAME}'
!gsutil mb -p $GCP_PROJECT_ID $GCS_BUCKET

Cree una cuenta de servicio para trabajos de HP Tuning

Este paso es necesario para utilizar HP Tuning en Google Cloud mediante CloudTuner. Para crear una cuenta de servicio y darle acceso al editor de proyectos, ejecute el siguiente comando y anote el nombre de su cuenta de servicio.

SERVICE_ACCOUNT_NAME ='YOUR_SERVICE_ACCOUNT_NAME'

SERVICE_ACCOUNT_EMAIL = f'{SERVICE_ACCOUNT_NAME}@{GCP_PROJECT_ID}.iam.gserviceaccount.com'
!gcloud iam --project $GCP_PROJECT_ID service-accounts create $SERVICE_ACCOUNT_NAME
!gcloud projects add-iam-policy-binding $GCP_PROJECT_ID \
    --member serviceAccount:$SERVICE_ACCOUNT_EMAIL \
    --role=roles/editor

La default AI Platform service account se identifica mediante una dirección de correo electrónico con el formato service-PROJECT_NUMBER@cloud-ml.google.com.iam.gserviceaccount.com . Usando su número de proyecto del paso uno, creamos el correo electrónico de la cuenta de servicio y otorgamos la función de administrador default AI Platform service account (roles/iam.serviceAccountAdmin) en su nueva cuenta de servicio.

DEFAULT_AI_PLATFORM_SERVICE_ACCOUNT = f'service-{PROJECT_NUMBER}@cloud-ml.google.com.iam.gserviceaccount.com'

!gcloud iam --project $GCP_PROJECT_ID service-accounts add-iam-policy-binding \
--role=roles/iam.serviceAccountAdmin \
--member=serviceAccount:$DEFAULT_AI_PLATFORM_SERVICE_ACCOUNT \
$SERVICE_ACCOUNT_EMAIL

Felicidades !

Ahora está listo para ejecutar tensorflow-cloud. Tenga en cuenta que estos pasos solo deben ejecutarse una vez. Una vez que haya configurado su proyecto, puede reutilizar el mismo proyecto y configuración del depósito para ejecuciones futuras. Para cualquier cuaderno nuevo, deberá repetir el paso dos para agregar sus credenciales de autenticación de Google Cloud.

Tome nota de los siguientes valores, ya que son necesarios para ejecutar tensorflow-cloud.

print(f"Your GCP_PROJECT_ID is:       {GCP_PROJECT_ID}")
print(f"Your SERVICE_ACCOUNT_NAME is: {SERVICE_ACCOUNT_NAME}")
print(f"Your BUCKET_NAME is:          {BUCKET_NAME}")
Your GCP_PROJECT_ID is:       YOUR_PROJECT_ID
Your SERVICE_ACCOUNT_NAME is: YOUR_SERVICE_ACCOUNT_NAME
Your BUCKET_NAME is:          YOUR_BUCKET_NAME