Xem trên TensorFlow.org | Chạy trên Google Colab | Xem trên GitHub | Tải xuống sổ tay | Chạy trên Kaggle |
Hướng dẫn này nhằm giúp người dùng lần đầu thiết lập tài khoản Google Cloud Platform, đặc biệt là với mục đích sử dụng tensorflow_cloud để dễ dàng chạy huấn luyện quy mô lớn trên Google Cloud AI Platform. TensorFlow Cloud cung cấp các API cho phép người dùng dễ dàng chuyển từ việc gỡ lỗi, huấn luyện, tinh chỉnh mã Keras và TensorFlow trong môi trường cục bộ hoặc Kaggle sang huấn luyện/tinh chỉnh phân tán trên đám mây.
1. Đăng ký tài khoản Google Cloud Platform
Để bắt đầu, hãy truy cập https://cloud.google.com/ và nhấp vào “Bắt đầu miễn phí”. Đây là quy trình đăng ký hai bước, trong đó bạn cần cung cấp tên, địa chỉ và thẻ tín dụng. Tài khoản khởi đầu là miễn phí và đi kèm với 300 đô la tín dụng mà bạn có thể sử dụng. Ở bước này, bạn cần cung cấp tài khoản Google (ví dụ: tài khoản Gmail của bạn) để đăng nhập.
Sau khi hoàn tất quá trình đăng ký, bạn sẽ được chuyển hướng đến trang chào mừng của Google Cloud Platform . Nhấp vào tab "Trang chủ" và ghi lại ID dự án và số dự án của bạn. (xem phần Xác định dự án )
GCP_PROJECT_ID = 'YOUR_PROJECT_ID'
PROJECT_NUMBER = 'YOUR_PROJECT_NUMBER'
2. Kích hoạt Google Cloud SDK và xác thực sổ tay của bạn
Giờ bạn đã thiết lập xong dự án, chúng ta có thể tiếp tục với các bước cấu hình còn lại trực tiếp từ sổ tay này. Có ba loại sổ tay, bước này (bước #2) hơi khác nhau đối với mỗi loại, các bước còn lại (bước #3 đến #6) đều giống nhau đối với tất cả các loại sổ tay.
- 2.1. Xác thực cho sổ tay Kaggle
- 2.2. Xác thực cho sổ tay Colab
- 2.3. Xác thực cho Sổ tay AI trên đám mây - Không được hỗ trợ.
2.1 Thiết lập xác thực cho Notebook Kaggle
Nếu bạn đang sử dụng notebook Kaggle, bạn cần lặp lại bước này cho bất kỳ notebook mới nào bạn sử dụng với dự án này. Trong notebook của bạn, hãy nhấp vào Add-ons -> Google Cloud SDK và làm theo hướng dẫn trên màn hình. Sau đó, chạy lệnh sau để thêm thông tin xác thực của bạn vào notebook này.
import sys
if "kaggle_secrets" in sys.modules:
from kaggle_secrets import UserSecretsClient
UserSecretsClient().set_gcloud_credentials(project=GCP_PROJECT_ID)
2.2 Thiết lập xác thực cho sổ tay Colab
Nếu bạn đang sử dụng sổ tay Colab, bạn cần lặp lại bước này cho bất kỳ sổ tay mới nào bạn sử dụng với dự án này. Chạy lệnh sau để thêm thông tin xác thực của bạn vào sổ tay này.
import sys
if "google.colab" in sys.modules:
from google.colab import auth
auth.authenticate_user()
3. Liên kết tài khoản thanh toán của bạn với dự án
Bước tiếp theo là thiết lập tài khoản thanh toán cho dự án này. Google Cloud sẽ tạo một dự án mặc định cho bạn, có tên là “My First Project”. Chúng ta sẽ sử dụng dự án mặc định này. Sử dụng ID dự án của bạn (từ bước 1) để chạy các lệnh sau. Thao tác này sẽ hiển thị ID tài khoản thanh toán của bạn, hãy ghi lại ID này cho bước tiếp theo.
gcloud beta billing accounts listSử dụng ID tài khoản thanh toán của bạn từ phía trên và chạy lệnh sau để liên kết tài khoản thanh toán với dự án của bạn.
Lưu ý rằng nếu bạn sử dụng một dự án hiện có, bạn có thể không thấy Account_ID, điều này có nghĩa là bạn không có quyền phù hợp để chạy các lệnh sau, hãy liên hệ với quản trị viên của bạn hoặc tạo một dự án mới.
BILLING_ACCOUNT_ID = 'YOUR_BILLING_ACCOUNT_ID'
!gcloud beta billing projects link $GCP_PROJECT_ID --billing-account $BILLING_ACCOUNT_ID
4. Kích hoạt các API cần thiết cho tensorflow-cloud trong dự án của bạn
Đối với tensorflow_cloud, chúng tôi sử dụng hai API cụ thể: API AI Platform Training Jobs và API Cloud builder . Lưu ý rằng đây chỉ là thiết lập một lần cho dự án này, bạn không cần chạy lại lệnh này cho mỗi notebook.
gcloud services --project $GCP_PROJECT_ID enable ml.googleapis.com cloudbuild.googleapis.com5. Tạo một bucket trên Google Cloud Storage
Chúng ta sẽ sử dụng thùng lưu trữ này cho các tài sản tạm thời cũng như để lưu các điểm kiểm tra mô hình. Hãy ghi nhớ tên của thùng lưu trữ để tham khảo trong tương lai. Lưu ý rằng tên thùng lưu trữ là duy nhất trên toàn cầu.
BUCKET_NAME = 'YOUR_BUCKET_NAME'
GCS_BUCKET = f'gs://{BUCKET_NAME}'
!gsutil mb -p $GCP_PROJECT_ID $GCS_BUCKET
Tạo tài khoản dịch vụ cho các tác vụ tinh chỉnh HP.
Bước này là cần thiết để sử dụng HP Tuning trên Google Cloud thông qua CloudTuner. Để tạo tài khoản dịch vụ và cấp quyền truy cập trình chỉnh sửa dự án, hãy chạy lệnh sau và ghi lại tên tài khoản dịch vụ của bạn.
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 được xác định bằng địa chỉ email có định dạng service-PROJECT_NUMBER@cloud-ml.google.com.iam.gserviceaccount.com . Sử dụng số dự án của bạn từ bước một, chúng tôi tạo email tài khoản dịch vụ và cấp vai trò quản trị viên cho default AI Platform service account (roles/iam.serviceAccountAdmin) trên tài khoản dịch vụ mới của bạn.
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
Chúc mừng !
Giờ bạn đã sẵn sàng chạy tensorflow-cloud. Lưu ý rằng các bước này chỉ cần thực hiện một lần. Sau khi thiết lập dự án, bạn có thể sử dụng lại cấu hình dự án và bucket tương tự cho các lần chạy sau. Đối với bất kỳ notebook mới nào, bạn cần lặp lại bước thứ hai để thêm thông tin xác thực Google Cloud của mình.
Hãy ghi lại các giá trị sau vì chúng cần thiết để chạy 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
Xem trên TensorFlow.org
Chạy trên Google Colab
Xem trên GitHub
Tải xuống sổ tay
Chạy trên Kaggle