Lihat di TensorFlow.org | Lihat di GitHub | Unduh buku catatan | Jalankan di Kaggle |
Panduan ini ditujukan untuk membantu pengguna pertama kali menyiapkan akun Google Cloud Platform secara khusus dengan tujuan menggunakan tensorflow_cloud agar dapat dengan mudah menjalankan pelatihan dalam skala besar di Google Cloud AI Platform. TensorFlow Cloud menyediakan API yang memungkinkan pengguna dengan mudah beralih dari proses debug, pelatihan, penyetelan kode Keras dan TensorFlow di lingkungan lokal atau kaggle hingga pelatihan/penyetelan terdistribusi di Cloud.
1. Mendaftar ke Google Cloud Platform
Untuk memulai, buka https://cloud.google.com/ dan klik “Memulai Gratis". Ini adalah proses pendaftaran dua langkah di mana Anda harus memberikan nama, alamat, dan kartu kredit Anda. Akun awal gratis dan dilengkapi dengan kredit $300 yang dapat Anda gunakan. Untuk langkah ini Anda perlu menyediakan Akun Google (yaitu akun Gmail Anda) untuk masuk.
Setelah menyelesaikan proses pendaftaran, Anda akan diarahkan ke halaman selamat datang Google Cloud Platform . klik pada 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 Otentikasi buku catatan Anda
Sekarang setelah Anda menyiapkan proyek, kita dapat melanjutkan langkah konfigurasi selanjutnya langsung dari notebook ini. Ada Tiga jenis notebook, langkah ini (langkah #2) sedikit berbeda untuk setiap notebook, langkah selanjutnya (langkah #3 hingga #6) sama untuk semua notebook.
- 2.1. Otentikasi untuk buku catatan Kaggle
- 2.2. Otentikasi untuk buku catatan Colab
- 2.3. Autentikasi untuk Notebook Cloud AI - Tidak didukung.
2.1 Siapkan Auth untuk Notebook Kaggle
Jika Anda menggunakan buku catatan Kaggle, Anda perlu mengulangi langkah ini untuk setiap buku catatan baru yang Anda gunakan dengan proyek ini. Di buku catatan Anda, klik Add-on -> Google Cloud SDK dan ikuti petunjuk yang muncul. Kemudian jalankan perintah berikut untuk menambahkan kredensial autentikasi Anda ke buku catatan 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 Auth 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 autentikasi Anda ke buku catatan ini.
import sys
if "google.colab" in sys.modules:
from google.colab import auth
auth.authenticate_user()
3. Tautkan akun penagihan Anda ke proyek Anda
Langkah selanjutnya adalah menyiapkan akun penagihan untuk proyek ini. Google Cloud Membuat proyek untuk Anda secara default yang disebut "Proyek Pertama Saya". Kami akan menggunakan proyek default ini. Gunakan ID Proyek Anda (dari langkah 1) untuk menjalankan perintah berikut. Ini akan menunjukkan ID_Akun Penagihan Anda, catat ini untuk langkah selanjutnya.
gcloud beta billing accounts list
Gunakan Account_ID 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, menghubungi admin Anda atau membuat 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 spesifik: API Pekerjaan Pelatihan Platform AI dan API pembuat Cloud . Perhatikan bahwa ini adalah pengaturan satu kali untuk proyek ini, Anda tidak perlu menjalankan kembali perintah ini untuk setiap buku catatan.
gcloud services --project $GCP_PROJECT_ID enable ml.googleapis.com cloudbuild.googleapis.com
5. Buat keranjang Google Cloud Storage
Kami akan menggunakan keranjang penyimpanan ini untuk aset sementara serta untuk menyimpan pos pemeriksaan model. Catat nama ember untuk referensi di masa mendatang. Catatan, nama keranjang 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 memberinya 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 melalui alamat email dengan format service-PROJECT_NUMBER@cloud-ml.google.com.iam.gserviceaccount.com
. Dengan 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 Anda menyiapkan proyek, Anda dapat menggunakan kembali proyek dan konfigurasi bucket yang sama untuk proses selanjutnya. Untuk setiap notebook baru, Anda perlu mengulangi langkah kedua untuk menambahkan kredensial autentikasi Google Cloud Anda.
Catat nilai berikut karena diperlukan 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