Lihat di TensorFlow.org | Jalankan di Google Colab | Lihat di GitHub | Unduh buku catatan | Jalankan di Kaggle |
Panduan ini bertujuan untuk membantu pengguna baru menyiapkan akun Google Cloud Platform, khususnya dengan tujuan menggunakan tensorflow_cloud untuk menjalankan pelatihan dalam skala besar dengan mudah di Google Cloud AI Platform. TensorFlow Cloud menyediakan API yang memungkinkan pengguna untuk dengan mudah beralih dari debugging, pelatihan, dan penyetelan kode Keras dan TensorFlow di lingkungan lokal atau Kaggle ke pelatihan/penyetelan terdistribusi di Cloud.
1. Daftar ke Google Cloud Platform
Untuk memulai, kunjungi https://cloud.google.com/ dan klik “Mulai Gratis”. Ini adalah proses pendaftaran dua langkah di mana Anda perlu memberikan nama, alamat, dan kartu kredit Anda. Akun pemula gratis dan dilengkapi dengan kredit $300 yang dapat Anda gunakan. Untuk langkah ini, Anda perlu memberikan Akun Google (misalnya akun Gmail Anda) untuk masuk.
Setelah menyelesaikan proses pendaftaran, Anda akan dialihkan ke halaman selamat datang Google Cloud Platform . Klik tab "Beranda" dan catat ID Proyek dan Nomor Proyek Anda. (lihat Mengidentifikasi proyek )
GCP_PROJECT_ID = 'YOUR_PROJECT_ID'
PROJECT_NUMBER = 'YOUR_PROJECT_NUMBER'
2. Aktifkan Google Cloud SDK dan autentikasi notebook Anda.
Sekarang setelah Anda menyiapkan proyek Anda, kita dapat melanjutkan dengan langkah-langkah konfigurasi lainnya langsung dari notebook ini. Ada tiga jenis notebook, langkah ini (langkah #2) sedikit berbeda untuk setiap notebook, sedangkan langkah-langkah lainnya (langkah #3 hingga #6) sama untuk semua notebook.
- 2.1. Otorisasi untuk notebook Kaggle
- 2.2. Otorisasi untuk notebook Colab
- 2.3. Otorisasi untuk Cloud AI Notebooks - Tidak didukung.
2.1 Menyiapkan Otentikasi untuk Notebook Kaggle
Jika Anda menggunakan notebook Kaggle, Anda perlu mengulangi langkah ini untuk setiap notebook baru yang Anda gunakan dengan proyek ini. Di notebook Anda, klik Add-ons -> Google Cloud SDK dan ikuti petunjuk yang muncul. Kemudian jalankan perintah berikut untuk menambahkan kredensial otentikasi Anda ke notebook ini.
import sys
if "kaggle_secrets" in sys.modules:
from kaggle_secrets import UserSecretsClient
UserSecretsClient().set_gcloud_credentials(project=GCP_PROJECT_ID)
2.2 Menyiapkan Otentikasi untuk Notebook Colab
Jika Anda menggunakan notebook Colab, Anda perlu mengulangi langkah ini untuk setiap notebook baru yang Anda gunakan dengan proyek ini. Jalankan perintah berikut untuk menambahkan kredensial otentikasi Anda ke notebook ini.
import sys
if "google.colab" in sys.modules:
from google.colab import auth
auth.authenticate_user()
3. Hubungkan akun penagihan Anda ke proyek Anda
Langkah selanjutnya adalah menyiapkan akun penagihan untuk proyek ini. Google Cloud secara default membuat proyek untuk Anda yang bernama “Proyek Pertama Saya”. Kita akan menggunakan proyek default ini. Gunakan ID Proyek Anda (dari langkah 1) untuk menjalankan perintah berikut. Ini akan menampilkan ID Akun Penagihan Anda, catat ini untuk langkah selanjutnya.
gcloud beta billing accounts listGunakan ID Akun Penagihan Anda dari atas dan jalankan perintah berikut untuk menautkan akun penagihan Anda dengan proyek Anda.
Perhatikan, jika Anda menggunakan proyek yang sudah ada, Anda mungkin tidak melihat Account_ID, ini berarti Anda tidak memiliki izin yang tepat untuk menjalankan perintah berikut. Hubungi administrator Anda atau buat proyek baru.
BILLING_ACCOUNT_ID = 'YOUR_BILLING_ACCOUNT_ID'
!gcloud beta billing projects link $GCP_PROJECT_ID --billing-account $BILLING_ACCOUNT_ID
4. Aktifkan API yang Diperlukan untuk tensorflow-cloud di proyek Anda
Untuk tensorflow_cloud, kami menggunakan dua API khusus: AI Platform Training Jobs API dan Cloud builder API . Perlu diingat bahwa ini adalah pengaturan satu kali untuk proyek ini, Anda tidak perlu menjalankan perintah ini lagi untuk setiap notebook.
gcloud services --project $GCP_PROJECT_ID enable ml.googleapis.com cloudbuild.googleapis.com5. Buat bucket Google Cloud Storage
Kita akan menggunakan bucket penyimpanan ini untuk aset sementara serta untuk menyimpan checkpoint model. Catat nama bucket untuk referensi di masa mendatang. Perlu diingat bahwa nama bucket bersifat unik secara global.
BUCKET_NAME = 'YOUR_BUCKET_NAME'
GCS_BUCKET = f'gs://{BUCKET_NAME}'
!gsutil mb -p $GCP_PROJECT_ID $GCS_BUCKET
Buat akun layanan untuk pekerjaan HP Tuning.
Langkah ini diperlukan untuk menggunakan HP Tuning di Google Cloud menggunakan CloudTuner. Untuk membuat akun layanan dan memberikannya akses editor proyek, jalankan perintah berikut dan catat nama akun layanan Anda.
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
default AI Platform service account diidentifikasi dengan alamat email dengan format service-PROJECT_NUMBER@cloud-ml.google.com.iam.gserviceaccount.com . Menggunakan nomor Proyek Anda dari langkah pertama, kami membuat email akun layanan dan memberikan peran admin default AI Platform service account (roles/iam.serviceAccountAdmin) pada akun layanan baru Anda.
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
Selamat !
Anda sekarang siap menjalankan tensorflow-cloud. Perhatikan bahwa langkah-langkah ini hanya perlu dijalankan satu kali. Setelah proyek Anda disiapkan, Anda dapat menggunakan kembali konfigurasi proyek dan bucket yang sama untuk menjalankannya di masa mendatang. Untuk notebook baru apa pun, Anda perlu mengulangi langkah kedua untuk menambahkan kredensial otentikasi Google Cloud Anda.
Catat nilai-nilai berikut karena dibutuhkan untuk menjalankan 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
Lihat di TensorFlow.org
Jalankan di Google Colab
Lihat di GitHub
Unduh buku catatan
Jalankan di Kaggle