Voir sur TensorFlow.org | Exécuter dans Google Colab | Voir sur GitHub | Télécharger le carnet | Participer à Kaggle |
Ce guide est destiné aux nouveaux utilisateurs souhaitant créer un compte Google Cloud Platform afin d'utiliser TensorFlow Cloud pour exécuter facilement des entraînements à grande échelle sur Google Cloud AI Platform. TensorFlow Cloud fournit des API permettant de passer aisément du débogage, de l'entraînement et de l'optimisation de code Keras et TensorFlow en local ou sur Kaggle à l'entraînement et à l'optimisation distribués dans le cloud.
1. Inscrivez-vous à Google Cloud Platform
Pour commencer, rendez-vous sur https://cloud.google.com/ et cliquez sur « Créer gratuitement ». L'inscription se fait en deux étapes : vous devrez fournir votre nom, votre adresse et une carte bancaire. Le compte de base est gratuit et inclut un crédit de 300 $ à utiliser. Pour cette étape, vous devrez vous connecter avec un compte Google (par exemple, votre compte Gmail).
Une fois votre inscription terminée, vous serez redirigé vers la page d'accueil de Google Cloud Platform . Cliquez sur l'onglet « Accueil » et notez votre ID et votre numéro de projet (voir Identification des projets ).
GCP_PROJECT_ID = 'YOUR_PROJECT_ID'
PROJECT_NUMBER = 'YOUR_PROJECT_NUMBER'
2. Activez le SDK Google Cloud et authentifiez votre ordinateur portable.
Maintenant que votre projet est configuré, nous pouvons poursuivre les étapes de configuration directement depuis ce bloc-notes. Il existe trois types de blocs-notes ; cette étape (étape 2) diffère légèrement selon le bloc-notes, tandis que les étapes suivantes (étapes 3 à 6) sont identiques pour tous.
- 2.1. Authentification pour les notebooks Kaggle
- 2.2. Authentification pour le notebook Colab
- 2.3. Authentification pour les notebooks d'IA dans le cloud - Non prise en charge.
2.1 Configurer l'authentification pour un notebook Kaggle
Si vous utilisez un notebook Kaggle, vous devrez répéter cette étape pour chaque nouveau notebook utilisé dans le cadre de ce projet. Dans votre notebook, cliquez sur Modules complémentaires → SDK Google Cloud et suivez les instructions à l'écran. Exécutez ensuite la commande suivante pour ajouter vos identifiants d'authentification à ce notebook.
import sys
if "kaggle_secrets" in sys.modules:
from kaggle_secrets import UserSecretsClient
UserSecretsClient().set_gcloud_credentials(project=GCP_PROJECT_ID)
2.2 Configurer l'authentification pour un notebook Colab
Si vous utilisez un notebook Colab, vous devrez répéter cette étape pour chaque nouveau notebook utilisé dans le cadre de ce projet. Exécutez la commande suivante pour ajouter vos identifiants d'authentification à ce notebook.
import sys
if "google.colab" in sys.modules:
from google.colab import auth
auth.authenticate_user()
3. Liez votre compte de facturation à votre projet
L'étape suivante consiste à configurer le compte de facturation pour ce projet. Google Cloud crée par défaut un projet nommé « Mon premier projet ». Nous utiliserons ce projet par défaut. Utilisez votre ID de projet (obtenu à l'étape 1) pour exécuter les commandes suivantes. Votre ID de compte de facturation s'affichera ; notez-le pour l'étape suivante.
gcloud beta billing accounts listUtilisez votre ID de compte de facturation ci-dessus et exécutez la commande suivante pour lier votre compte de facturation à votre projet.
Remarque : si vous utilisez un projet existant, il se peut que vous ne voyiez pas d’identifiant de compte (Account_ID). Cela signifie que vous ne disposez pas des autorisations nécessaires pour exécuter les commandes suivantes. Veuillez contacter votre administrateur ou créer un nouveau projet.
BILLING_ACCOUNT_ID = 'YOUR_BILLING_ACCOUNT_ID'
!gcloud beta billing projects link $GCP_PROJECT_ID --billing-account $BILLING_ACCOUNT_ID
4. Activez les API requises pour tensorflow-cloud dans votre projet
Pour tensorflow_cloud, nous utilisons deux API spécifiques : l’API AI Platform Training Jobs et l’API Cloud Builder . Notez que cette configuration n’est nécessaire qu’une seule fois pour ce projet ; vous n’aurez pas besoin de réexécuter cette commande pour chaque notebook.
gcloud services --project $GCP_PROJECT_ID enable ml.googleapis.com cloudbuild.googleapis.com5. Créez un bucket Google Cloud Storage.
Nous utiliserons ce compartiment de stockage pour les ressources temporaires ainsi que pour sauvegarder les points de contrôle du modèle. Notez le nom du compartiment pour référence ultérieure. Sachez que chaque compartiment a un nom unique au niveau mondial.
BUCKET_NAME = 'YOUR_BUCKET_NAME'
GCS_BUCKET = f'gs://{BUCKET_NAME}'
!gsutil mb -p $GCP_PROJECT_ID $GCS_BUCKET
Créer un compte de service pour les tâches de réglage HP
Cette étape est nécessaire pour utiliser HP Tuning sur Google Cloud avec CloudTuner. Pour créer un compte de service et lui accorder les droits d'édition de projet, exécutez la commande suivante et notez le nom de votre compte de service.
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
Le default AI Platform service account est identifié par une adresse e-mail au format service-PROJECT_NUMBER@cloud-ml.google.com.iam.gserviceaccount.com . À partir de votre numéro de projet obtenu à l'étape 1, nous générons l'adresse e-mail du compte de service et lui attribuons le rôle d'administrateur default AI Platform service account (roles/iam.serviceAccountAdmin) sur ce nouveau compte.
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
Félicitations !
Vous êtes maintenant prêt à exécuter tensorflow-cloud. Notez que ces étapes ne doivent être effectuées qu'une seule fois. Une fois votre projet configuré, vous pouvez réutiliser la même configuration de projet et de bucket pour vos prochaines exécutions. Pour tout nouveau notebook, vous devrez répéter l'étape 2 afin d'ajouter vos identifiants d'authentification Google Cloud.
Notez les valeurs suivantes, car elles sont nécessaires pour exécuter 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
Voir sur TensorFlow.org
Exécuter dans Google Colab
Voir sur GitHub
Télécharger le carnet
Participer à Kaggle