Khóa học
Dù phần lớn mọi người gắn Google với công cụ tìm kiếm, công ty này cũng có nền tảng sâu rộng trong lĩnh vực khoa học dữ liệu. Google liên tục cung cấp các sản phẩm và giải pháp tiên tiến nhằm khai thác dữ liệu hiệu quả nhất. Một trong những sản phẩm đó, Vertex AI, ra mắt năm 2021 để đơn giản hóa quy trình học máy ở quy mô doanh nghiệp.
Trong hướng dẫn này, chúng ta sẽ học cách bắt đầu với nền tảng Vertex AI của Google và sử dụng nó để bao phủ nhiều tác vụ trong vòng đời ML. Kết thúc, chúng ta sẽ có một mô hình đã triển khai để gửi yêu cầu và tạo dự đoán cho một bài toán phân loại.
Vertex AI là gì?
Một vòng đời học máy điển hình gồm nhiều giai đoạn:
- Chuẩn bị, nạp và khám phá dữ liệu
- Trích chọn và lựa chọn đặc trưng
- Huấn luyện và tinh chỉnh mô hình
- Triển khai và giám sát mô hình
Tất cả các giai đoạn và tiểu giai đoạn này đòi hỏi các bộ công cụ khác nhau và một đội ngũ đa dạng chuyên gia để phối hợp thực hiện.
Vertex AI của Google Cloud hợp lý hóa và hợp nhất toàn bộ quy trình này vào một nền tảng duy nhất.
Mặc dù các ứng dụng ML quy mô lớn cần những chuyên gia dày dạn, Vertex AI trao quyền cho người dùng ở mọi cấp độ kỹ năng:
- AutoML cho người mới bắt đầu: Không cần kinh nghiệm lập trình. Chỉ cần nạp dữ liệu của bạn và với vài cú nhấp chuột, AutoML sẽ tạo ra một mô hình chất lượng cao. Toàn bộ công việc nặng nhọc như chuẩn bị dữ liệu, xây dựng mô hình bao gồm chọn thuật toán và tinh chỉnh siêu tham số đều được thực hiện ngầm.
- Huấn luyện mô hình tùy chỉnh cho chuyên gia: Kinh nghiệm của bạn là giới hạn. Với các nhà khoa học dữ liệu và kỹ sư ML giàu kinh nghiệm, Vertex AI cung cấp sự linh hoạt để huấn luyện mô hình bằng các framework ưa thích như PyTorch, TensorFlow hoặc XGBoost.
- Triển khai cho mọi người: Khi bạn đã có mô hình do AutoML hoặc tự huấn luyện, Vertex AI giúp triển khai dễ dàng. Bạn có thể công bố mô hình dưới dạng API thời gian thực để tích hợp vào sản phẩm, hoặc dùng dự đoán theo lô cho các tác vụ quy mô lớn.
Có nhiều nội dung chúng tôi không đề cập ở phần này, vì bạn sẽ tự tay làm hầu hết trong hướng dẫn này.
Google Cloud Services là gì?

Trước khi khám phá nền tảng, chúng ta cần nhắc đến hệ sinh thái mẹ — Google Cloud services. Google Cloud Services bao gồm một loạt giải pháp điện toán đám mây cung cấp lưu trữ, mạng, cơ sở dữ liệu, phân tích và khả năng học máy.
Các dịch vụ này phối hợp nhịp nhàng với Vertex AI để hợp nhất quy trình học máy của bạn. Dưới đây là phân tách các dịch vụ thường dùng với Vertex AI:
Lưu trữ và quản lý dữ liệu
- Cloud Storage: Đóng vai trò là kho trung tâm cho dữ liệu thô của bạn, được Vertex AI truy cập để huấn luyện và phân tích.
- BigQuery: Kho dữ liệu mạnh mẽ để lưu trữ và truy vấn tập dữ liệu lớn, cho phép Vertex AI dùng BigQuery ML để huấn luyện ngay trong hệ sinh thái.
Tài nguyên tính toán
- Compute Engine: Cung cấp máy ảo với nhiều cấu hình cho nhu cầu huấn luyện mô hình tùy chỉnh. Vertex AI có thể kết nối với các máy này cho các tác vụ huấn luyện đòi hỏi tài nguyên.
- Vertex AI Pipelines: Điều phối các quy trình ML phức tạp trên nhiều tài nguyên tính toán một cách hiệu quả.
Google Cloud services luôn sẵn có từ tài khoản Google của bạn tại cloud.google.com. Nếu bạn chưa từng dùng, hãy nhấp “Get started for free” để nhận bản dùng thử miễn phí.
Nếu đã dùng, bạn có thể truy cập trực tiếp console.cloud.google.com để bắt đầu.
Thiết lập Google Cloud Console cho Vertex AI
Lưu ý: Nếu bạn muốn làm theo hướng dẫn, hãy chuẩn bị chi khoảng 25–30 USD cho Vertex AI. Chúng ta sẽ dùng cấu hình rẻ nhất.
Khi truy cập Google Cloud Console, nhiều khả năng bạn sẽ thấy trang chào mừng sau:

Trang hiển thị tên không gian làm việc của bạn; của tôi là ibexprogramming.com.
Việc đầu tiên là tạo một dự án. Các dự án Google Cloud là đơn vị tổ chức cấp cao để quản lý tài nguyên cho một tác vụ cụ thể. Dưới đây là GIF hướng dẫn cách tạo:

Khi dự án đã được tạo, hãy chọn nó để thanh trên cùng của trang hiển thị như sau:
![]()
Bây giờ, bạn cần tạo tài khoản thanh toán vì Vertex AI yêu cầu thông tin thanh toán để kích hoạt dịch vụ. Đừng lo — bạn sẽ không bị tính phí cho đến khi dùng tài nguyên trả phí. Hãy truy cập https://console.cloud.google.com/billing:

Nếu bạn chưa có tài khoản như tôi, nhấp “Create account” và làm theo hướng dẫn. Ở phần tiếp theo, chúng ta sẽ liên kết tài khoản thanh toán này với dự án.
Sau đó, quay lại https://console.cloud.google.com/ và nhấp nút “View all products” ở cuối trang:

Trang tiếp theo sẽ liệt kê toàn bộ dịch vụ Google Cloud cung cấp cho dự án của bạn. Tìm “Vertex AI” (Ctrl + F) và ghim nó vào menu để truy cập nhanh. Sau đó, nhấp vào dịch vụ đó:

Bạn sẽ được chuyển đến bảng điều khiển Vertex AI. Có thể xuất hiện cửa sổ yêu cầu bật Vertex AI API — hãy chọn “Enable.” Nếu không hiện, bạn có thể nhấp nút “Enable all API permissions” để làm điều tương tự.
Giờ thì chúng ta đã sẵn sàng tải lên một tập dữ liệu vào Vertex AI.
Tải lên tập dữ liệu trong Vertex AI
Có nhiều cách để thêm tập dữ liệu vào Vertex AI. Trong phần này, để đơn giản, chúng ta sẽ dùng tệp CSV cục bộ.
Tải một tập dữ liệu mẫu
Trong bài viết, chúng ta sẽ dùng tập dữ liệu Dry Bean từ kho UCI Machine Learning. Nó chứa 13 nghìn mẫu đậu và 15 phép đo số của chúng.
Nhiệm vụ là phân loại chúng thành bảy loại đậu: Seker, Barbunya, Bombay, Cali, Dermosan, Horoz và Sira.
Sau khi tải, lưu tệp Excel trong ZIP đã tải về vào thư mục cục bộ của bạn:
from pathlib import Path
cwd = Path.cwd()
data_path = cwd / "data" / "Dry_Bean_Dataset.xlsx"
Tiếp theo, ta có thể đọc tệp này với pandas và lưu lại thành CSV:
import pandas as pd
beans = pd.read_excel(data_path)
beans.shape
(13611, 17)
Lưu ý rằng hàm read_excel yêu cầu bạn cài thư viện openpyxl bằng PIP.
Tuyệt, chúng ta đã có tập dữ liệu dưới dạng DataFrame. Hãy lưu lại thành CSV:
beans.to_csv(cwd / "data" / "dry_bean.csv", index=False)
Tạo một Cloud Storage Bucket
Như đã đề cập, chúng ta cần một Google Storage Bucket để lưu trữ dữ liệu thô. Làm theo GIF dưới đây để điều hướng đến bảng điều khiển của sản phẩm:

GIF cho thấy để bắt đầu dùng dịch vụ lưu trữ, ta cần liên kết tài khoản thanh toán, sử dụng tài khoản đã tạo trước đó. Sau đó, bạn có thể tạo một bucket với tên duy nhất trên toàn cầu:

Khi tìm được tên duy nhất, nhấp “Continue” cho đến khi bucket được tạo — bạn có thể chọn các tùy chọn mặc định cho mọi trường.
Giờ chúng ta sẵn sàng nạp tệp CSV đã lưu ở phần trước.
Nạp CSV cục bộ vào Vertex AI
Bây giờ, hãy quay lại bảng điều khiển Vertex AI và mở thẻ Datasets:

Bạn sẽ thấy nó trống, hãy nhấp nút “+Create”:

Đặt tên duy nhất cho tập dữ liệu và chọn loại tabular:

Tiếp đó, nền tảng hiển thị các tùy chọn nguồn. Chọn tải lên tệp CSV cục bộ, và với đường dẫn Cloud Storage, hãy chọn bucket bạn vừa tạo:

Khi tập dữ liệu tải lên thành công, bạn sẽ thấy thẻ “Analyze”, hiển thị siêu dữ liệu cơ bản về tệp CSV. Bạn cũng sẽ thấy nút “TRAIN NEW MODEL” để khởi chạy một tác vụ huấn luyện AutoML.
Tuy nhiên, chúng ta sẽ không dùng nút đó vì nó dành cho người mới ML hoàn toàn. Thay vào đó, chúng ta sẽ dùng Vertex AI Workbench để cấu hình môi trường JupyterLab và tài nguyên tính toán nhằm chạy cả AutoML lẫn thư viện tùy chỉnh.
Cấu hình JupyterLab và tài nguyên tính toán trong Vertex AI Workbench
Vì Vertex AI là nền tảng hợp nhất, nó cũng cung cấp môi trường phát triển gọi là workbench. Để tạo workbench, vào thẻ tương ứng và làm theo hướng dẫn trong GIF dưới đây:

Mỗi workbench có sẵn JupyterLab 3. Vì vậy, bạn chỉ cần cấu hình phần cứng theo ngân sách và nhu cầu. Vì tập dữ liệu khá nhỏ, tôi chọn máy yếu nhất để minh họa, chỉ ~0,12 USD/giờ (tôi khuyên chọn máy có nhiều lõi CPU hơn để tính toán nhanh hơn).
Tôi cũng đổi thời gian tự động tắt khi không hoạt động thành 10 phút để môi trường tự dừng nếu quên tắt.
Workbench sẽ mất chút thời gian để khởi tạo. Khi xong, nút “OPEN JUPYTERLAB” xuất hiện và chúng ta có thể nhấp vào:

Chúng ta sẽ được đưa tới giao diện JupyterLab quen thuộc. Tại đây, tạo notebook Python 3 mới và đổi tên tùy ý. Ở ô đầu tiên, cài/ nâng cấp SDK Google Cloud services google-cloud-aiplatform:
!pip3 install --upgrade --quiet google-cloud-aiplatform
Sau đó, bạn có thể liệt kê các dự án dưới tài khoản của mình với gcloud config list:
!gcloud config list
[compute]
region = us-central1
[core]
account = # HIDDEN #
disable_usage_reporting = True
project = vertexai-tutorial-423010
[dataproc]
region = us-central1
Your active configuration is: [default]
gcloud và gsutil đều là tiện ích dòng lệnh có sẵn trong mọi workbench. Chúng giúp bạn quản lý dịch vụ Google Cloud hiệu quả.
Từ kết quả in ra, lưu các thông tin sau dưới dạng biến Python:
PROJECT_ID = 'vertexai-tutorial-423010'
BUCKET_URI = 'gs://vetex-tutorial-bucket-bex'
REGION = 'us-central1'
Đừng quên đổi BUCKET_URI thành tên bucket của bạn. Sau đó, nhập tiểu mô-đun aiplatform và khởi tạo:
from google.cloud import aiplatform as ai
ai.init(project=PROJECT_ID, location=REGION, staging_bucket=BUCKET_URI)
aiplatform sẽ đóng vai trò SDK để tương tác với các tính năng của Vertex AI.

Khi hoàn thành hướng dẫn hoặc tạm nghỉ, đừng quên STOP phiên bản máy để tránh phát sinh chi phí ngoài ý muốn.
Huấn luyện và triển khai mô hình AutoML trong Vertex AI
Giờ hãy huấn luyện một mô hình với AutoML, như đã nói, nó đảm nhiệm hầu hết công việc nặng và trả về mô hình tốt nhất có thể với tập dữ liệu đã cho. Điều này có nghĩa để tận dụng tối đa AutoML, bạn cần đảm bảo tập dữ liệu đầu vào có chất lượng cao nhất. Vì vậy, đáng để dành thời gian tạo đặc trưng mới và thực hiện tiền xử lý trước đó.
AutoML sẽ tiền xử lý nội bộ tập dữ liệu, nhưng không thể sửa mọi vấn đề trong dữ liệu của bạn.
Tuy nhiên, trong phần này, để đơn giản, chúng ta chỉ huấn luyện một mô hình AutoML cơ bản, không tiền xử lý hay trích chọn đặc trưng.
Tải dữ liệu từ Google Storage bucket
Đầu tiên, ta muốn tải tập dữ liệu CSV từ bucket và dành chút thời gian khám phá nó. Hãy nhớ, EDA là bước quan trọng, bạn có thể học thêm trong khóa Exploratory Data Analysis in Python của chúng tôi!
import pandas as pd
# Path to your CSV file in GCS bucket
gcs_path = "gs://vertex-tutorial-bucket-bex/dry_bean.csv"
beans = pd.read_csv(gcs_path)
beans.head()

Tin vui là pandas có thể tải tệp từ đường dẫn GCS. Điểm cần lưu ý là đoạn mã trên chỉ hoạt động trong workbench Vertex AI vì chúng đã được xác thực với thông tin xác thực Google Cloud của bạn.
Khám phá dữ liệu với pandas trong Vertex AI
Chúng ta sẽ không phân tích sâu tập dữ liệu vì sẽ làm xa rời trọng tâm bài viết. Vậy nên, chúng ta chỉ in vài thống kê tóm tắt và biểu đồ:
beans.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 13611 entries, 0 to 13610
Data columns (total 17 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 Area 13611 non-null int64
1 Perimeter 13611 non-null float64
2 MajorAxisLength 13611 non-null float64
3 MinorAxisLength 13611 non-null float64
4 AspectRation 13611 non-null float64
5 Eccentricity 13611 non-null float64
6 ConvexArea 13611 non-null int64
7 EquivDiameter 13611 non-null float64
8 Extent 13611 non-null float64
9 Solidity 13611 non-null float64
10 roundness 13611 non-null float64
11 Compactness 13611 non-null float64
12 ShapeFactor1 13611 non-null float64
13 ShapeFactor2 13611 non-null float64
14 ShapeFactor3 13611 non-null float64
15 ShapeFactor4 13611 non-null float64
16 Class 13611 non-null object
dtypes: float64(14), int64(2), object(1)
memory usage: 1.8+ MB
Như vậy, có 15 đặc trưng số và một cột đích — Class. Chỉ khoảng ~13 nghìn bản ghi và không có giá trị thiếu. Điều này sẽ đơn giản hóa việc huấn luyện rất nhiều.
Hãy lưu tên các đặc trưng vào một danh sách riêng vì có thể cần về sau:
feature_names = beans.columns.tolist()
Bây giờ, hãy tạo biểu đồ cặp cho vài đặc trưng có vẻ quan trọng:
import seaborn as sns
sns.pairplot(
beans,
vars=["Area", "MajorAxisLength", "MinorAxisLength", "Eccentricity", "roundness"],
hue="Class",
);

Ta thấy một vài xu hướng thú vị — đáng chú ý là đậu Bombay (màu xanh lá) tách biệt rõ rệt với các loại khác theo các phép đo hình học.
Hãy vẽ thêm ma trận tương quan:
import matplotlib.pyplot as plt
correlation = beans.corr(numeric_only=True)
# Create a square heatmap with center at 0
sns.heatmap(correlation, center=0, square=True, cmap="coolwarm", vmin=-1, vmax=1)
plt.show()

Có vài đặc trưng tương quan gần như hoàn hảo và điều này hợp lý vì chúng liên quan tới các phép đo hình học. Tuy nhiên, cũng có vài cặp đặc trưng hầu như không tương quan.
Tại thời điểm này, tôi sẽ để bạn tiếp tục khám phá và tự đặt ra vài câu hỏi để trả lời về tập dữ liệu.
Chạy một tác vụ huấn luyện AutoML
Để bắt đầu tác vụ huấn luyện AutoML, trước tiên ta cần một đối tượng tập dữ liệu tương thích:
ds = ai.TabularDataset.create(
display_name="dry_bean_dataset", gcs_source=gcs_path
)
TabularDataset created.
type(ds)
google.cloud.aiplatform.datasets.tabular_dataset.TabularDataset
ds.resource_name
'projects/10783853768/locations/us-central1/datasets/4978116960081412096'
Chúng ta dùng phương thức TabularDataset.create để khởi tạo đối tượng ds. Vertex AI gán cho nó một tên riêng, có thể truy cập qua thuộc tính resource_name.
Bây giờ, ta khởi tạo tác vụ với lớp ai.AutoMLTabularTrainingJob. Nó cần hai đối số:
- Tên hiển thị cho tác vụ
- Mục tiêu của bài toán — ở đây là phân loại.
job = ai.AutoMLTabularTrainingJob(
display_name="dry-bean-classification",
optimization_prediction_type="classification",
)
Tiếp theo, chạy phương thức run của tác vụ:
model = job.run(
dataset=ds,
target_column="Class",
training_fraction_split=0.8,
validation_fraction_split=0.1,
test_fraction_split=0.1,
model_display_name="baseline-classification-model",
disable_early_stopping=False,
)
Các tham số của phương thức khá dễ hiểu. Mã sẽ mất một thời gian để chạy xong (tùy vào sức mạnh tính toán).
Nếu bạn vào thẻ “MODEL DEVELOPMENT > TRAINING” của bảng điều khiển và nhấp vào tên tác vụ, bạn sẽ thấy tiến độ huấn luyện trực tiếp. Hình ảnh dưới cho thấy quá trình đang ở giai đoạn tiền xử lý:

Xem kết quả
Khi huấn luyện xong, quay lại thẻ training và nhấp vào tên mô hình. Lần này, các chỉ số hiệu năng sẽ được liệt kê kèm mô hình:

Như bạn thấy, ngay cả với mô hình cơ bản, các chỉ số rất tốt, đều trên 0,90.
Triển khai mô hình AutoML và tạo dự đoán
Giờ chúng ta có thể triển khai model này chỉ với một dòng mã:
endpoint = model.deploy(machine_type="n1-standard-4")
Phương thức deploy chỉ cần một đối số — loại máy để chạy suy luận. Tôi sẽ không thực thi dòng trên vì việc triển khai sẽ phát sinh thêm chi phí trong suốt thời gian mô hình trực tuyến.
Tuy nhiên, nếu bạn chạy, phương thức deploy sẽ trả về một đối tượng Endpoint để chúng ta gửi yêu cầu:
prediction = endpoint.predict(
[
{
"Area": "30099",
"Perimeter": "638.8209999999999",
"MajorAxisLength": "237.14191130827916",
"MinorAxisLength": "162.3034300714102",
"AspectRation": "1.4611022774068396",
"Eccentricity": "0.7290928631259719",
"ConvexArea": "30477",
"EquivDiameter": "195.76321681302556",
"Extent": "0.8036043251902283",
"Solidity": "0.9875972044492568",
"roundness": "0.9268374259664279",
"Compactness": "0.8255108332939839",
"ShapeFactor1": "0.007878730566074592",
"ShapeFactor2": "0.002256976927384019",
"ShapeFactor3": "0.6814681358857279",
"ShapeFactor4": "0.9956946453228307",
}
]
)
print(prediction)
Nó có phương thức predict nhận một danh sách các mẫu cần dự đoán. Các mẫu phải được cung cấp ở định dạng JSON.
Bạn cũng có thể dùng bảng điều khiển để triển khai mô hình. Nếu vào thẻ “MODEL REGISTRY”, bạn sẽ thấy mô hình được liệt kê ở đó. Nhấp vào tên và chọn thẻ “DEPLOY & TEST”:

Nhấp nút ‘DEPLOY TO ENDPOINT’ sẽ đưa bạn tới trang riêng để cấu hình máy triển khai mô hình. Nhưng trước khi làm điều đó, bạn có thể thử nghiệm ngay ở khu vực bên dưới nút triển khai:

Huấn luyện và triển khai mô hình tùy chỉnh trong Vertex AI
Triển khai mô hình tùy chỉnh trong Vertex AI thách thức hơn so với AutoML và cũng tốn kém hơn vì sẽ có thêm container Docker bên cạnh chi phí Workbench và triển khai. Nếu bạn sẵn sàng, bắt đầu nhé!
Tổng quan cấp cao về huấn luyện tùy chỉnh trong Vertex AI
Huấn luyện tùy chỉnh bắt đầu với một script huấn luyện mô hình riêng. Trong script này, ta có thể làm mọi thứ miễn là:
- Tải dữ liệu từ GCS bucket
- Huấn luyện mô hình bằng một framework ML (TF, PyTorch, Scikit-learn, XGBoost)
- Tùy chọn, tinh chỉnh siêu tham số của mô hình
- Lưu mô hình vào GCS bucket để ghi nhận mô hình đã huấn luyện hoặc đã tinh chỉnh.
Sau đó, script huấn luyện này phải được đóng gói thành container Docker rồi đẩy lên Google Container Registry. Từ đó, ta có thể dùng SDK Python của Vertex AI hoặc bảng điều khiển để huấn luyện mô hình tùy chỉnh.
Tạo cấu trúc thư mục cho mã huấn luyện
Đầu tiên, hãy tạo cấu trúc thư mục như khuyến nghị trong codelab này của Google. Trong workbench, chuyển sang terminal bằng cách mở một launcher mới:

Sau đó, tạo thư mục mới tên “dry-beans” và chuyển vào đó:
$ mkdir dry-beans
$ cd dry-beans/
Bên trong dry-beans, tạo thư mục trainer và bên trong nó, tệp Python train.py:
$ mkdir trainer
$ touch trainer/train.py
Tạo Dockerfile
Tiếp theo, tạo Dockerfile mới:
$ touch Dockerfile
Mở tệp và dán nội dung sau:
FROM gcr.io/deeplearning-platform-release/tf2-cpu.2-6
WORKDIR /
# Copies the trainer code to the docker image.
COPY trainer /trainer
# Install XGBoost
RUN pip install xgboost==1.6.2
# Sets up the entry point to invoke the trainer.
ENTRYPOINT ["python", "-m", "trainer.train"]
Dockerfile này dùng ảnh deep learning chính thức do Google Container Registry cung cấp có cài sẵn TensorFlow. Tệp sao chép thư mục trainer của chúng ta và cài XGBoost. Cuối cùng, nó sẽ chạy script Python.
Viết script huấn luyện
Script cần tải tập dữ liệu Dry Beans từ bucket GCP của chúng ta, huấn luyện một bộ phân loại XGBoost và lưu mô hình trở lại bucket. Tôi đã viết một script đơn giản thực hiện các tác vụ đó trong GitHub gist này (tôi không đưa vào đây để tiết kiệm dung lượng).
Sao chép/dán mã trong gist vào train.py. Sau đó, quay lại terminal, cài XGBoost vì nó không có sẵn trong Workbench bạn chọn, và chạy script:
$ pip install xgboost==1.6.2
$ python trainer/train.py
Xây dựng ảnh Docker
Nếu script chạy không lỗi, tiếp tục nhập hai biến sau trong terminal:
$ PROJECT_ID='vertexai-tutorial-423010' # Replace with your PROJECT_ID from earlier
$ IMAGE_URI="gcr.io/$PROJECT_ID/dry-beans:v1" # This stays the same
Các biến này sẽ được dùng khi chúng ta xây dựng container, vì vậy hãy chạy:
$ docker build ./ -t $IMAGE_URI
Quá trình build sẽ mất chút thời gian. Sau khi xong, chạy container để đảm bảo mọi thứ hoạt động trơn tru:
$ docker run $IMAGE_URI
Model trained successfully!
Model uploaded successfully!
Nếu bạn nhận được các thông báo thành công như trên, container đã sẵn sàng để đẩy lên:
$ docker push $IMAGE_URI
Tạo tác vụ huấn luyện tùy chỉnh
Tới thời điểm này, phần lớn công việc đã hoàn thành. Chúng ta có thể chuyển sang bảng điều khiển và tạo tác vụ huấn luyện tùy chỉnh bằng container vừa đẩy. Hãy vào thẻ “MODEL REGISTRY” và nhấp “CREATE”:

Với phương thức huấn luyện, chọn “No managed dataset” và “Custom training”. Ở khung tiếp theo (Model details), đặt tên mô hình — dry-beans-classifier.
Trong khung training container:

Chọn container tùy chỉnh chúng ta đã đẩy và bucket cloud-ai-platform để lưu đầu ra mô hình. Sau đó, nhấp tiếp tục cho đến khi tới phần "Compute and pricing":

Chọn máy chuẩn n1 với 4 CPU và cuối cùng, nhấp "START TRAINING". Sau đó, chuyển sang thẻ "TRAINING" của bảng điều khiển.

Lúc này, bạn sẽ thấy một trong hai trạng thái:
- Huấn luyện thất bại
- Huấn luyện đang diễn ra
Tôi gặp trường hợp đầu tiên, vậy hãy điều tra lý do bằng cách nhấp vào tên mô hình:
![]()
Lỗi cho biết tôi đã vượt quá số CPU được phép cho huấn luyện tùy chỉnh. Tôi đã tìm hiểu sâu hơn và điều phát hiện được khá thất vọng.
Thông thường, GCP cấp hạn ngạch ít nhất 20 CPU cho bất kỳ vùng tính toán nào, nhưng sau khi kiểm tra hồ sơ của mình, tôi phát hiện hạn ngạch chỉ là 1. Điều này có nghĩa tôi không thể chạy bất kỳ tác vụ huấn luyện tùy chỉnh nào, vì tất cả máy do Google cung cấp tối thiểu có hai CPU.
Tôi đã cố tăng hạn ngạch theo các câu trả lời trong chuỗi thảo luận trên StackOverflow này, nhưng không hiệu quả. Thông báo tôi nhận được là người dùng Vertex AI mới chỉ được phép một đơn vị CPU. Nếu muốn tăng hạn ngạch, tôi cần gửi phiếu hỗ trợ, và hóa ra điều này không miễn phí (bạn cần hợp đồng hỗ trợ trả phí).
Vì vậy, nếu bạn không may như tôi, hãy thử các câu trả lời trong chủ đề SO. Chúng hiệu quả với một số người, nhưng nếu không hiệu quả với bạn, phương án duy nhất là liên hệ hỗ trợ.
Còn nếu bạn may mắn và việc huấn luyện hoàn tất, bạn có thể triển khai mô hình theo các bước tương tự như đã trình bày cho mô hình AutoML.
Kết luận
Vertex AI là một nền tảng đồ sộ với nhiều tính năng. Trong hướng dẫn này, chúng ta mới chỉ chạm đến bề mặt nhưng đã bao quát các khối xây dựng quan trọng nhất của nền tảng. Bằng cách thành thạo việc tạo bucket lưu trữ, workbench và tác vụ huấn luyện, bạn sẽ sẵn sàng để khám phá phần còn lại của nền tảng.
Nếu bạn muốn tìm hiểu thêm về các dịch vụ Google Cloud, hãy xem các tài nguyên liên quan được đề xuất sau:
Tôi là người sáng tạo nội dung về khoa học dữ liệu với hơn 2 năm kinh nghiệm và là một trong những tài khoản có lượng người theo dõi lớn nhất trên Medium. Tôi thích viết các bài chuyên sâu về AI và ML với chút giọng điệu mỉa mai, vì bạn cũng phải làm gì đó để chúng bớt khô khan. Tôi đã xuất bản hơn 130 bài viết và một khóa học trên DataCamp, cùng với một khóa nữa đang được thực hiện. Nội dung của tôi đã được hơn 5 triệu lượt xem, trong đó 20 nghìn người đã trở thành người theo dõi trên cả Medium và LinkedIn.
