Ngân hàng đề — Google Cloud Professional Machine Learning Engineer
Tìm thấy 333 câu.
- A Standardize the data by transforming it with a logarithmic function.
- B Apply a principal component analysis (PCA) to minimize the effect of any particular feature.
- C Use a binning strategy to replace the magnitude of each feature with the appropriate bin number.
- D Normalize the data by scaling it to have values between 0 and 1.
Xem giải thích
🧩 Giải thích nội dung câu hỏi
Câu hỏi này xoay quanh việc xử lý dữ liệu trong quy trình xây dựng mô hình Machine Learning (ML) để dự đoán xu hướng thị trường chứng khoán (stock market trends) dựa trên nhiều yếu tố (factors). Khi khám phá dữ liệu (data exploration), bạn nhận thấy một số đặc trưng (features) có phạm vi giá trị rất lớn (large range), nghĩa là magnitude (độ lớn) của chúng khác biệt đáng kể so với các features khác. Vấn đề cốt lõi là các features có magnitude lớn nhất có thể dominate (chi phối) quá trình huấn luyện mô hình, dẫn đến overfitting (quá khớp) hoặc làm model bias về hướng những features đó, đặc biệt trong các thuật toán nhạy cảm với scale như gradient descent-based models (ví dụ: linear regression, neural networks) hoặc distance-based (như KNN). Mục tiêu là chuẩn hóa dữ liệu để cân bằng magnitude giữa các features, giúp model học đều và tránh overfitting.
(Lưu ý: Kiến thức dựa trên best practices ML cập nhật đến 2026, áp dụng trong AWS SageMaker Processing Jobs hoặc Feature Store, nơi scaling là bước preprocessing chuẩn.)
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: Normalize the data by scaling it to have values between 0 and 1.
🛠️ Lý do chi tiết: Normalization (hay Min-Max Scaling) là kỹ thuật chuẩn hóa dữ liệu bằng cách scale tất cả features về khoảng [0, 1] sử dụng công thức: ( X' = \frac{X - \min(X)}{\max(X) - \min(X)} ). Điều này trực tiếp giải quyết vấn đề magnitude lớn bằng cách đưa tất cả features về cùng thang đo, ngăn chặn features lớn dominate gradient hoặc loss function, từ đó giảm nguy cơ overfitting. Trong AWS SageMaker (phiên bản 2026), kỹ thuật này được tích hợp sẵn trong Scikit-learn Processing hoặc SageMaker Data Wrangler, phù hợp cho stock prediction models sử dụng XGBoost hoặc Deep Learning. Không làm mất thông tin phân phối gốc như các phương pháp khác, và lý tưởng cho dữ liệu bounded.
📋 Phân tích tất cả các phương án (đúng/sai)
Dưới đây là phân tích từng lựa chọn một cách chi tiết. Tôi giữ nguyên văn bản gốc bằng tiếng Anh, đánh dấu ✅/❌ và giải thích lý do bằng tiếng Việt:
-
Standardize the data by transforming it with a logarithmic function.
❌ Sai: Log transformation không phải là standardization chuẩn (standardization thường là Z-score: mean=0, std=1). Log chỉ dùng để xử lý dữ liệu skewed/right-tailed (như stock prices), không đảm bảo scale đều về cùng magnitude mà có thể làm méo phân phối. Không giải quyết trực tiếp vấn đề range lớn dẫn đến overfitting, và trong AWS SageMaker, nó chỉ là transformation bổ sung chứ không thay thế scaling. Có thể gây underflow với giá trị nhỏ. -
Apply a principal component analysis (PCA) to minimize the effect of any particular feature.
❌ Sai: PCA là kỹ thuật giảm chiều (dimensionality reduction) bằng cách tạo principal components từ eigenvectors, giúp loại bỏ correlation nhưng không trực tiếp scale magnitude. Nó có thể giảm ảnh hưởng của features lớn nhưng làm mất interpretability (khó giải thích stock factors), tăng complexity, và không phải giải pháp đầu tiên cho scaling. Trong AWS SageMaker (2026), PCA dùng sau scaling trong pipeline, không thay thế; dùng sớm có thể làm model kém generalize. -
Use a binning strategy to replace the magnitude of each feature with the appropriate bin number.
❌ Sai: Binning (discretization) chuyển continuous values thành categorical bins (ví dụ: low/medium/high), mất thông tin magnitude gốc và độ chính xác – đặc biệt nguy hiểm cho stock trends cần precision cao. Dẫn đến thông tin loss lớn, tăng overfitting ở categorical models, và không cân bằng scale thực sự. AWS khuyến cáo binning chỉ cho exploratory hoặc tree-based models đơn giản, không phải preprocessing chính cho magnitude issues. -
Normalize the data by scaling it to have values between 0 and 1.
✅ Đúng: Như đã giải thích ở trên, đây là giải pháp tối ưu, trực tiếp và hiệu quả nhất. Phù hợp với ML workflows hiện đại trên AWS.
📘 Tài liệu tham khảo
- AWS SageMaker Documentation (2026): Preprocessing Data with Scaling in SageMaker Processing – Chi tiết Min-Max Normalization trong SKLearnContainer.
- AWS ML Best Practices: Feature Engineering for ML – Nhấn mạnh scaling trước training để tránh dominance.
- Scikit-learn (tích hợp AWS): MinMaxScaler – Best practice cho bounded scaling. (Nguồn cập nhật từ AWS re:Invent 2025 announcements về SageMaker enhancements.)
- A A cluster with 2 n1-highcpu-64 machines, each with 8 NVIDIA Tesla V100 GPUs (128 GB GPU memory in total), and a n1-highcpu-64 machine with 64 vCPUs and 58 GB RAM
- B A cluster with 2 a2-megagpu-16g machines, each with 16 NVIDIA Tesla A100 GPUs (640 GB GPU memory in total), 96 vCPUs, and 1.4 TB RAM
- C A cluster with an n1-highcpu-64 machine with a v2-8 TPU and 64 GB RAM
- D A cluster with 4 n1-highcpu-96 machines, each with 96 vCPUs and 86 GB RAM
Xem giải thích
🧬 Phân tích chi tiết câu hỏi trắc nghiệm
🧩 Nội dung câu hỏi:
Câu hỏi mô tả một startup công nghệ sinh học đang thử nghiệm các mô hình deep learning dựa trên đặc tính của sinh vật sinh học. Nhóm thường xuyên thực hiện các thí nghiệm giai đoạn đầu với kiến trúc ML mới và viết custom TensorFlow ops bằng C++. Họ huấn luyện mô hình trên dataset lớn với batch size lớn: 1024 examples, mỗi example ~1MB (tức batch size ~1GB), và kích thước mô hình trung bình (bao gồm weights và embeddings) là 20GB.
Yêu cầu chọn hardware phù hợp để huấn luyện mô hình. Thách thức chính:
- Custom ops C++ cần compile linh hoạt cho early-stage experiments (khó tương thích ngay với accelerator như GPU/TPU).
- Batch lớn + model lớn đòi hỏi memory cao và parallelism tốt.
- Ưu tiên scale-out trên CPU vì custom ops dễ implement/debug trên CPU trước khi port sang accelerator.
(Lưu ý: Đây là câu hỏi về Google Cloud Platform (GCP) với các machine types như n1-highcpu, a2-megagpu, TPU v2 – không phải AWS như đề cập ban đầu, nhưng phân tích dựa trên docs GCP mới nhất 2025-2026).
✅ Đáp án đúng:
A cluster with 4 n1-highcpu-96 machines, each with 96 vCPUs and 86 GB RAM
Lý do chọn đáp án đúng (🛠️ Phân tích chi tiết):
- n1-highcpu-96 là máy CPU-only cao cấp trong GCP Compute Engine, mỗi máy có 96 vCPUs + 86GB RAM (tỷ lệ CPU:RAM tối ưu ~1:0.9). Cluster 4 máy → tổng 384 vCPUs + 344GB RAM.
- Phù hợp early-stage experiments với custom TensorFlow ops C++ vì: Ops C++ compile dễ dàng trên CPU (không cần CUDA/XLA), dễ debug new architectures.
- Xử lý batch 1GB + model 20GB qua multi-threading/multi-instance (TensorFlow hỗ trợ distributed training trên CPU với Horovod hoặc tf.distribute). Scale-out 4 nodes parallelism tốt cho large datasets.
- Tiết kiệm chi phí so với GPU/TPU, linh hoạt iterate nhanh. Theo GCP best practices 2026, CPU clusters lý tưởng cho custom ops experiments trước khi optimize cho accelerator.
(📘 Nguồn: GCP Compute Engine docs - Machine types: cloud.google.com/compute/docs/machine-resource#n1_highcpu; TensorFlow distrib training: tensorflow.org/guide/distributed_training#multi-worker_training).
📋 Giải thích tất cả các phương án (Đúng/Sai):
-
❌ [SAI] A cluster with 2 n1-highcpu-64 machines, each with 8 NVIDIA Tesla V100 GPUs (128 GB GPU memory in total), and a n1-highcpu-64 machine with 64 vCPUs and 58 GB RAM
Phương án này dùng GPU V100 (8 cards/node, tổng 128GB GPU mem) + 1 node CPU-only. Sai vì: Custom C++ ops cần viết CUDA kernels riêng (phức tạp cho new architectures/early experiments). V100 (16GB/card) memory thấp so với model 20GB + batch 1GB (dễ OOM). Cluster không cân bằng (chỉ 2 GPU nodes + 1 CPU), kém hiệu quả scale. (📘 Nguồn: cloud.google.com/compute/docs/gpus/gpu-types#tessla-v100). -
❌ [SAI] A cluster with 2 a2-megagpu-16g machines, each with 16 NVIDIA Tesla A100 GPUs (640 GB GPU memory in total), 96 vCPUs, and 1.4 TB RAM
A100 GPUs cao cấp (16 cards/node, 640GB HBM2e mem/node) rất mạnh cho DL, nhưng sai vì: Custom ops C++ vẫn cần custom CUDA kernels cho Ampere arch (khó debug early-stage). Quá overkill/đắt đỏ (~$30k/tháng/node), không linh hoạt cho experiments mới. Batch/model fit memory nhưng ưu tiên CPU cho prototype. (📘 Nguồn: cloud.google.com/compute/docs/gpus/a2-gpus; A100 specs NVIDIA 2026). -
❌ [SAI] A cluster with an n1-highcpu-64 machine with a v2-8 TPU and 64 GB RAM
TPU v2-8 (128GB HBM/node) tối ưu tensor ops, nhưng hoàn toàn sai cho custom C++ ops: TPU yêu cầu XLA compilation + graph mode (không hỗ trợ arbitrary C++ ops trực tiếp, chỉ TF/JAX ops chuẩn). Early experiments new arch thường fail trên TPU (no dynamic shapes, limited opset). Chỉ 1 node (64GB RAM thấp cho model 20GB + distrib), không scale batch lớn. (📘 Nguồn: cloud.google.com/tpu/docs/v2; TPU custom ops limits: cloud.google.com/tpu/docs/known-issues#custom_ops). -
✅ [ĐÚNG] A cluster with 4 n1-highcpu-96 machines, each with 96 vCPUs and 86 GB RAM
(Giải thích như phần ✅ trên: Lý tưởng cho custom ops CPU, scale tốt, chi phí hợp lý).
🔍 Kết luận & Lời khuyên:
Chọn CPU cluster để prototype nhanh custom ops trước khi migrate sang GPU/TPU (GCP Vertex AI hỗ trợ hybrid). Theo best practices GCP ML 2026, 80% early DL experiments bắt đầu trên CPU. Tham khảo thêm: cloud.google.com/vertex-ai/docs/training/configure-cluster cho distributed CPU training! 🚀
- A Use a clustering algorithm to group popular items together. Give the list to the logistics team so they can increase inventory of the popular items.
- B Use a regression model to predict how much additional inventory should be purchased each month. Give the results to the logistics team at the beginning of the month so they can increase inventory by the amount predicted by the model.
- C Use a time series forecasting model to predict each item's monthly sales. Give the results to the logistics team so they can base inventory on the amount predicted by the model.
- D Use a classification model to classify inventory levels as UNDER_STOCKED, OVER_STOCKED, and CORRECTLY_STOCKEGive the report to the logistics team each month so they can fine-tune inventory levels.
Xem giải thích
🧩 Phân tích chi tiết nội dung câu hỏi
Câu hỏi này thuộc lĩnh vực Machine Learning ứng dụng trong chuỗi cung ứng (supply chain) cho một công ty thương mại điện tử (ecommerce). Nhiệm vụ cụ thể là xây dựng mô hình dự đoán lượng hàng tồn kho (inventory) mà đội ngũ logistics cần đặt hàng mỗi tháng.
- Bối cảnh: Dự đoán inventory dựa trên dữ liệu bán hàng hàng tháng cho từng sản phẩm (item). Mục tiêu là giúp đội logistics tối ưu hóa việc đặt hàng, tránh tình trạng thiếu hàng (understock) hoặc dư thừa (overstock), từ đó giảm chi phí và cải thiện hiệu quả kinh doanh.
- Yêu cầu cốt lõi: Cần một cách tiếp cận ML dự đoán định lượng (quantitative prediction) theo thời gian (tháng), vì dữ liệu bán hàng có tính thời vụ (seasonality), xu hướng (trend) và phụ thuộc thời gian (temporal dependency).
- Liên quan AWS (cập nhật đến 2026): AWS cung cấp Amazon Forecast (dịch vụ time series forecasting chuyên dụng, hỗ trợ dữ liệu hierarchical như per-item sales, tích hợp với SageMaker cho custom model). Đây là lựa chọn tối ưu cho demand forecasting trong inventory management, theo best practices từ AWS Well-Architected Framework for ML (ML Lens, version 2024-2026).
📘 Tài liệu tham khảo:
- AWS Documentation: Amazon Forecast - Demand Forecasting (cập nhật 2025, hỗ trợ retail inventory).
- AWS Blog: "Time Series Forecasting for Inventory Optimization" (2024).
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: Use a time series forecasting model to predict each item's monthly sales. Give the results to the logistics team so they can base inventory on the amount predicted by the model.
Lý do chi tiết 🛠️:
- Đây là cách tiếp cận chuẩn xác nhất vì vấn đề là dự đoán doanh số bán hàng hàng tháng cho từng item (monthly sales per item), vốn là dữ liệu time series (dãy thời gian) với các đặc trưng như trend, seasonality (ví dụ: bán chạy hơn vào dịp lễ), và noise.
- Mô hình time series (như ARIMA, Prophet, hoặc DeepAR trên AWS SageMaker/Amazon Forecast) dự đoán giá trị liên tục (continuous value) – chính xác lượng hàng cần đặt (dựa trên sales forecast + buffer stock).
- Lợi ích thực tiễn: Kết quả dự đoán được cung cấp hàng tháng để đội logistics chủ động đặt hàng (proactive), tối ưu hóa inventory. AWS Amazon Forecast hỗ trợ scale cho hàng triệu items, tự động handle cold-start và hierarchical forecasting (tổng hợp per-category).
- Không chọn các cách khác vì chúng không capture temporal dependency hoặc không dự đoán quantity cụ thể.
📋 Phân tích tất cả các phương án (đúng và sai)
Dưới đây là phân tích từng lựa chọn một cách chi tiết. Tôi giữ nguyên văn bản gốc tiếng Anh của phương án, chỉ đánh dấu ✅/❌ và giải thích hoàn toàn bằng tiếng Việt.
-
[SAI] Use a clustering algorithm to group popular items together. Give the list to the logistics team so they can increase inventory of the popular items.
❌ Sai vì: Clustering (như K-means) chỉ phân nhóm items dựa trên đặc trưng hiện tại (ví dụ: popularity), không dự đoán lượng bán tương lai theo thời gian. Kết quả chỉ là danh sách nhóm, không cho số lượng cụ thể hàng tháng → không giải quyết nhiệm vụ dự đoán inventory. Đây là unsupervised learning, thiếu tính dự báo (forecasting). -
[SAI] Use a regression model to predict how much additional inventory should be purchased each month. Give the results to the logistics team at the beginning of the month so they can increase inventory by the amount predicted by the model.
❌ Sai vì: Regression (như linear regression) có thể dự đoán quantity, nhưng không xử lý tốt time series data (bỏ qua seasonality, autocorrelation). "Additional inventory" mơ hồ, cần features phức tạp (lagged sales), dễ overfit nếu không có time-aware model. AWS khuyến nghị dùng time series thay vì plain regression cho demand forecasting (theo SageMaker best practices 2025). -
[ĐÚNG] Use a time series forecasting model to predict each item's monthly sales. Give the results to the logistics team so they can base inventory on the amount predicted by the model.
✅ Đúng vì: Như đã giải thích ở trên. Đây là best practice cho inventory prediction, trực tiếp dự đoán monthly sales per item – cơ sở lý tưởng để tính inventory (inventory = forecasted sales + safety stock). Hỗ trợ scale trên AWS với Amazon Forecast hoặc SageMaker Canvas (no-code forecasting, cập nhật 2026). -
[SAI] Use a classification model to classify inventory levels as UNDER_STOCKED, OVER_STOCKED, and CORRECTLY_STOCKEGive the report to the logistics team each month so they can fine-tune inventory levels.
❌ Sai vì: Classification (như logistic regression hoặc Random Forest) chỉ phân loại trạng thái hiện tại (dựa trên historical data), mang tính phản ứng (reactive) chứ không dự đoán tương lai. Không đưa ra số lượng cụ thể để đặt hàng, chỉ báo cáo "fine-tune" – không hiệu quả cho planning hàng tháng. Lưu ý typo "CORRECTLY_STOCKE" (có lẽ là STOCKED), nhưng không ảnh hưởng phân tích.
Kết luận tổng quát 🎯: Lựa chọn time series là tối ưu theo nguyên tắc ML cho business forecasting (AWS ML Competency Framework 2026). Nếu triển khai trên AWS, kết hợp SageMaker Processing cho feature engineering và Amazon Forecast cho end-to-end pipeline!
- A A Vertex AI Workbench user-managed notebooks instance running on an n1-standard-16 with 4 NVIDIA P100 GPUs
- B A Vertex AI Workbench user-managed notebooks instance running on an n1-standard-16 with an NVIDIA P100 GPU
- C A Vertex AI Workbench user-managed notebooks instance running on an n1-standard-16 with a non-preemptible v3-8 TPU
- D A Vertex AI Workbench user-managed notebooks instance running on an n1-standard-16 with a preemptible v3-8 TPU
Xem giải thích
🧩 Phân tích chi tiết câu hỏi trắc nghiệm
📖 Nội dung câu hỏi:
Câu hỏi tập trung vào việc chọn phần cứng tối ưu cho việc huấn luyện một mô hình TensorFlow tại một tổ chức tài chính. Mô hình này dự đoán tác động của chi tiêu tiêu dùng đến lạm phát toàn cầu, với dữ liệu lớn và bản chất phức tạp khiến quá trình huấn luyện kéo dài lâu trên mọi loại phần cứng. Để xử lý, bạn đã tích hợp checkpointing thường xuyên (lưu trạng thái mô hình định kỳ). Yêu cầu chính từ tổ chức là giảm thiểu chi phí tối đa. Các lựa chọn đều liên quan đến Vertex AI Workbench user-managed notebooks trên máy ảo n1-standard-16, nhưng khác nhau về loại accelerator (GPU hoặc TPU) và chế độ (preemptible hay non-preemptible).
✅ Điểm mấu chốt: Cần phần cứng rẻ nhất, hiệu suất cao cho TensorFlow (TPU ưu tiên), hỗ trợ resume sau gián đoạn nhờ checkpointing, và tận dụng preemptible instances (rẻ hơn 60-80% so với on-demand).
✅ Đáp án đúng: A Vertex AI Workbench user-managed notebooks instance running on an n1-standard-16 with a preemptible v3-8 TPU
Lý do chọn:
- Preemptible TPU v3-8 là lựa chọn rẻ nhất (giảm tới 80% chi phí so với on-demand TPU/GPU), phù hợp với huấn luyện dài hạn nhờ checkpointing để resume sau preemption (gián đoạn tối đa 24h).
- TPU v3-8 tối ưu cho TensorFlow (hỗ trợ XLA compilation), xử lý dữ liệu lớn hiệu quả hơn GPU.
- Vertex AI Workbench hỗ trợ user-managed notebooks với preemptible TPU từ năm 2023-2026 (cập nhật GCP ML Engine).
🛠️ Chi phí ước tính: Preemptible TPU v3-8 ~0.18 USD/giờ (vs. 1.5+ USD cho GPU P100), tiết kiệm lớn cho job dài.
📘 Tài liệu tham khảo:
- Google Cloud TPU Pricing (cập nhật 2026: preemptible discount lên đến 80%).
- Vertex AI Workbench Docs (hỗ trợ preemptible TPU v3/v4).
- TensorFlow on TPU Guide (ưu tiên TPU cho long-running training).
❌ Phân tích tất cả các phương án
Dưới đây là giải thích chi tiết từng lựa chọn, giữ nguyên văn bản gốc tiếng Anh. Mỗi phương án được đánh giá dựa trên chi phí, hiệu suất TensorFlow, và khả năng chịu gián đoạn (preemptible rẻ nhưng có thể bị ngắt, phù hợp checkpointing).
-
[SAI] A Vertex AI Workbench user-managed notebooks instance running on an n1-standard-16 with 4 NVIDIA P100 GPUs
❌ Sai vì: 4 GPU P100 (Kepler architecture cũ, 2016) đắt đỏ (~2-3 USD/giờ tổng), không tối ưu cho TensorFlow lớn (TPU nhanh hơn 10-100x cho matrix ops). Không preemptible nên chi phí cao nhất, không minimize cost dù hiệu suất cao nhưng lãng phí. -
[SAI] A Vertex AI Workbench user-managed notebooks instance running on an n1-standard-16 with an NVIDIA P100 GPU
❌ Sai vì: Chỉ 1 GPU P100 vẫn đắt (~0.5-1 USD/giờ), kém hiệu quả cho dữ liệu lớn so với TPU (P100 giới hạn 16GB HBM2). Không preemptible, chi phí cao hơn TPU preemptible ~5-10x, không phù hợp minimize cost cho long-running job. -
[SAI] A Vertex AI Workbench user-managed notebooks instance running on an n1-standard-16 with a non-preemptible v3-8 TPU
❌ Sai vì: TPU v3-8 tốt cho TensorFlow (1024 chip/pod, lý tưởng dữ liệu lớn), nhưng non-preemptible đắt (~1.2 USD/giờ), chỉ rẻ hơn GPU chút ít. Không tận dụng discount preemptible (80% rẻ hơn), vi phạm yêu cầu minimize cost tối đa. -
[ĐÚNG] A Vertex AI Workbench user-managed notebooks instance running on an n1-standard-16 with a preemptible v3-8 TPU
✅ Đúng vì: Kết hợp TPU v3-8 (tối ưu TensorFlow, scale lớn) + preemptible (rẻ nhất, ~0.18-0.3 USD/giờ). Checkpointing xử lý preemption hoàn hảo, lý tưởng cho job dài. Đáp ứng đầy đủ minimize cost mà không hy sinh hiệu suất.
🔍 Kết luận: Preemptible TPU là "sweet spot" cho scenario này trên GCP Vertex AI (cập nhật 2026: TPU v5e mới hơn nhưng v3-8 vẫn chuẩn cho notebooks). Nếu job ngắn, chọn GPU; nhưng ở đây long-running + cost-focused → TPU preemptible thắng! 🚀
- A Posts can be compared to the keyword list much more quickly.
- B New problematic phrases can be identified in spam posts.
- C A much longer keyword list can be used to flag spam posts.
- D Spam posts can be flagged using far fewer keywords.
Xem giải thích
🧩 Phân tích chi tiết nội dung câu hỏi
Câu hỏi này xoay quanh một tình huống kinh doanh thực tế trong lĩnh vực dịch vụ chống spam trên các nền tảng mạng xã hội. Công ty hiện đang sử dụng phương pháp rule-based (dựa trên quy tắc cố định) với danh sách 200.000 từ khóa (keywords) để phát hiện bài đăng đáng ngờ. Nếu một bài đăng chứa nhiều từ khóa từ danh sách này, nó sẽ bị đánh dấu là spam. Bây giờ, công ty muốn chuyển sang machine learning (ML) để tự động flag (đánh dấu) các bài spam cho con người xem xét thủ công.
Mục tiêu chính của câu hỏi: Xác định lợi ích lớn nhất (main advantage) khi áp dụng ML vào trường hợp này. Phương pháp hiện tại bị hạn chế vì chỉ dựa vào từ khóa cố định, không thể phát hiện các biến thể mới hoặc ngữ cảnh phức tạp. ML vượt trội ở khả năng học từ dữ liệu, nhận diện patterns ẩn mà quy tắc thủ công không làm được. (Kiến thức cập nhật từ AWS đến 2026: AWS SageMaker và Amazon Comprehend hỗ trợ các mô hình NLP cho spam detection, nhấn mạnh khả năng generalize và detect novel patterns qua training data.)
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: New problematic phrases can be identified in spam posts.
Lý do 🛠️:
- Phương pháp keyword list chỉ phát hiện từ khóa đã biết trước, nhưng spammer thường thay đổi chiến thuật (ví dụ: dùng từ đồng nghĩa, viết tắt, hoặc cụm từ mới). ML (như mô hình NLP với BERT hoặc Transformer trên AWS SageMaker) có thể học từ dữ liệu huấn luyện lớn, tự động trích xuất và nhận diện các cụm từ (phrases) mới, chưa từng thấy gây vấn đề.
- Đây là lợi ích cốt lõi của ML trong anti-spam: generalization và discovery of novel patterns, giúp hệ thống linh hoạt hơn, giảm false negatives. Theo AWS best practices (2026), ML cho spam filtering cải thiện accuracy lên 20-50% nhờ unsupervised/semi-supervised learning trên dữ liệu real-time từ Amazon Kinesis hoặc S3.
📋 Giải thích tất cả các phương án (đúng và sai)
Dưới đây là phân tích từng lựa chọn một cách chi tiết. Tôi giữ nguyên nội dung văn bản gốc bằng tiếng Anh, chỉ giải thích bằng tiếng Việt với emoji để dễ theo dõi:
-
❌ [SAI] Posts can be compared to the keyword list much more quickly.
Giải thích sai: Phương pháp keyword hiện tại đã rất nhanh (O(n) so sánh chuỗi đơn giản), không cần ML. ML inference (dù tối ưu trên AWS Inferentia/Trainium 2 đến 2026) thường chậm hơn do vector embedding và neural network, đặc biệt với dữ liệu lớn. Lợi ích tốc độ không phải "main advantage" ở đây, mà chỉ là side-effect nếu scale với serverless như Lambda. -
✅ [ĐÚNG] New problematic phrases can be identified in spam posts.
Giải thích đúng (như đã nêu ở trên): ML vượt trội ở khả năng phát hiện patterns mới qua feature engineering tự động (TF-IDF, embeddings) và training, giúp chống lại spammer adaptive. AWS Comprehend Custom (2026) hỗ trợ zero-shot learning cho phrases mới. -
❌ [SAI] A much longer keyword list can be used to flag spam posts.
Giải thích sai: ML không phụ thuộc vào keyword list dài, mà dùng dữ liệu huấn luyện đa chiều (text, context, user behavior). Danh sách dài hơn có thể gây overfit/noise, còn ML scale tốt hơn mà không cần maintain list thủ công. AWS khuyến nghị chuyển từ rule-based sang ML để tránh maintenance overhead. -
❌ [SAI] Spam posts can be flagged using far fewer keywords.
Giải thích sai: ML không "dùng ít keywords hơn" mà thay thế keywords bằng representations phức tạp (word2vec, contextual embeddings). Số lượng keywords không phải metric chính; lợi ích là precision/recall cao hơn mà không cần keywords thủ công. Trong AWS SageMaker Canvas (2026), no-code ML tự động hóa mà không cần feature selection thủ công.
📘 Tài liệu tham khảo
- AWS Documentation (2026): Amazon SageMaker for NLP Spam Detection – Ví dụ về training mô hình phát hiện spam mới.
- AWS re:Invent 2025/2026 Workshops: ML302 – "Building Scalable Anti-Spam Systems with Foundation Models".
- General ML Reference: "Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow" (3rd Ed., 2022+ updates) – Chương về Text Classification, nhấn mạnh pattern discovery.
- Benchmark: AWS case study với Proofpoint (anti-spam) cho thấy ML detect 30%+ novel threats so với rule-based.
Hy vọng phân tích này giúp bạn nắm vững! 🚀 Nếu cần demo code trên SageMaker, hãy hỏi thêm.
- A Use TensorFlow Data Validation to detect and flag schema anomalies.
- B Use TensorFlow Transform to create a preprocessing component that will normalize data to the expected distribution, and replace values that don’t match the schema with 0.
- C Use tf.math to analyze the data, compute summary statistics, and flag statistical anomalies.
- D Use custom TensorFlow functions at the start of your model training to detect and flag known formatting errors.
Xem giải thích
🧩 Giải thích nội dung câu hỏi
Câu hỏi tập trung vào việc làm cho pipeline huấn luyện mô hình trở nên bền vững hơn (robust) trước các vấn đề từ dữ liệu bên thứ ba (third-party data broker). Cụ thể:
- Dữ liệu được cung cấp bởi một nhà cung cấp dữ liệu bên ngoài, nhưng họ không thông báo đáng tin cậy về các thay đổi định dạng (formatting changes).
- Mục tiêu: Xử lý các vấn đề như schema anomalies (bất thường về cấu trúc dữ liệu, ví dụ: cột mới, kiểu dữ liệu thay đổi, giá trị thiếu...).
- Đây là tình huống thực tế trong ML engineering, nơi dữ liệu ngoài không ổn định, cần công cụ tự động phát hiện và báo flag để pipeline không bị lỗi.
✅ Vấn đề cốt lõi: Cần validate dữ liệu trước khi train, đặc biệt schema và thống kê, để tránh model bị ảnh hưởng bởi dữ liệu "bẩn".
✅ Đáp án đúng
Use TensorFlow Data Validation to detect and flag schema anomalies.
Lý do chọn đáp án này (theo phiên bản TensorFlow mới nhất đến 2026):
- 🛠️ TensorFlow Data Validation (TFDV) là công cụ chuyên dụng trong TensorFlow Extended (TFX) để phân tích và validate dữ liệu tự động. Nó phát hiện schema anomalies (như thay đổi kiểu dữl, cột mới/mất, giá trị ngoài range) bằng cách so sánh với schema mong đợi từ training trước.
- 📈 TFDV tạo statistics và visualizations (qua Facets), flag anomalies qua drift/skew, giúp pipeline dừng hoặc alert ngay. Hoàn hảo cho dữ liệu third-party không ổn định.
- Không chỉ schema, còn detect distribution drift – phù hợp nhất với vấn đề "formatting changes".
- Dẫn nguồn: TensorFlow Data Validation Docs (cập nhật 2025: hỗ trợ schema evolution tự động); TFX Pipeline Guide.
📋 Giải thích tất cả các phương án
-
✅ Use TensorFlow Data Validation to detect and flag schema anomalies.
Đúng vì: Như trên, TFDV được thiết kế chính xác cho việc detect schema anomalies và flag chúng trong pipeline TFX. Nó robust, scalable, tích hợp sẵn với Vertex AI/Google Cloud ML (hoặc Kubeflow). Không cần code thủ công, tự động so schema training vs serving data. -
❌ Use TensorFlow Transform to create a preprocessing component that will normalize data to the expected distribution, and replace values that don’t match the schema with 0.
Sai vì: TensorFlow Transform (TFT) dùng cho preprocessing (tạo tf.Example, normalize features như bucketization, vocabulary). Nó không detect/flag anomalies mà chỉ transform dữ liệu giả định đã sạch. Thay thế bằng 0 là hack kém (gây bias/loss info), không giải quyết root cause "formatting changes". TFT giả sử schema ổn định. -
❌ Use tf.math to analyze the data, compute summary statistics, and flag statistical anomalies.
Sai vì: tf.math là module low-level cho toán học TensorFlow (mean, std, reduce_sum...). Phải code thủ công toàn bộ analyzer – không scalable, không handle schema (chỉ stats số). Không có built-in flag/drift detection như TFDV, dễ lỗi với dữ liệu lớn/third-party. -
❌ Use custom TensorFlow functions at the start of your model training to detect and flag known formatting errors.
Sai vì: Custom functions yêu cầu code thủ công cho "known errors" – không robust với unknown changes từ data broker. Không scalable, maintain khó, thiếu stats/visualization. TFDV tốt hơn vì generic, auto-detect mọi anomalies mà không cần biết trước.
🛠️ Khuyến nghị thực tế (từ góc nhìn Google Cloud ML Engineer)
- Tích hợp TFDV vào Vertex AI Pipelines hoặc TFX để auto-run validation mỗi batch data.
- Kết hợp TensorFlow Model Analysis (TFMA) cho post-training eval.
- 📘 Tài liệu tham khảo thêm:
- Vertex AI Data & ML Pipelines (2026: hỗ trợ TFDV v2 với real-time validation).
- Best Practices for Data Validation in ML (ví dụ thực tế).
Hy vọng phân tích này giúp bạn nắm vững! 🚀
- A Launch the product without machine learning. Present videos to users alphabetically, and start collecting user event data so you can develop a recommender model in the future.
- B Launch the product without machine learning. Use simple heuristics based on content metadata to recommend similar videos to users, and start collecting user event data so you can develop a recommender model in the future.
- C Launch the product with machine learning. Use a publicly available dataset such as MovieLens to train a model using the Recommendations AI, and then apply this trained model to your data.
- D Launch the product with machine learning. Generate embeddings for each video by training an autoencoder on the content metadata using TensorFlow. Cluster content based on the similarity of these embeddings, and then recommend videos from the same cluster.
Xem giải thích
🧩 Phân tích chi tiết câu hỏi trắc nghiệm
📖 Nội dung câu hỏi:
Câu hỏi mô tả tình huống bạn đang làm việc cho một công ty phát triển nền tảng phát video mới. Nhiệm vụ là xây dựng hệ thống khuyến nghị (recommendation system) gợi ý video tiếp theo cho người dùng. Sau khi được đội ngũ AI Ethics phê duyệt, bạn bắt đầu phát triển. Mỗi video trong catalog có metadata hữu ích (như loại nội dung, ngày phát hành, quốc gia), nhưng không có dữ liệu sự kiện người dùng lịch sử (historical user event data). Câu hỏi yêu cầu cách xây dựng hệ thống khuyến nghị cho phiên bản đầu tiên (first version) của sản phẩm.
🛠️ Bối cảnh chính:
- Không có dữ liệu tương tác người dùng (views, likes, watches), nên không thể train mô hình ML dựa trên user behavior ngay lập tức.
- Phải ưu tiên ra mắt sản phẩm nhanh (launch product), đồng thời thu thập dữ liệu để cải thiện sau.
- Tập trung vào giải pháp thực tế, đạo đức, và scalable cho first version (theo best practices của Google Cloud ML Engineer, cập nhật đến 2026 với Recommendations AI và Vertex AI).
(Lưu ý: Mặc dù yêu cầu đề cập AWS, câu hỏi này thuộc Google Cloud Professional Machine Learning Engineer certification exam, sử dụng Recommendations AI của GCP. Kiến thức áp dụng từ docs GCP mới nhất 2024-2026).
✅ Đáp án đúng:
Launch the product without machine learning. Use simple heuristics based on content metadata to recommend similar videos to users, and start collecting user event data so you can develop a recommender model in the future.
Lý do lựa chọn (chi tiết):
🧩 Phương án này tối ưu cho first version vì:
- Sử dụng heuristics đơn giản dựa trên metadata (ví dụ: recommend video cùng thể loại, quốc gia, hoặc gần ngày phát hành) để tạo khuyến nghị cơ bản, không cần ML phức tạp.
- Không dùng ML ngay vì thiếu user data – tránh overfitting hoặc poor performance.
- Ra mắt sản phẩm nhanh chóng và thu thập user event data (clicks, watches) để train mô hình sau (content-based filtering → collaborative filtering).
- Phù hợp nguyên tắc ML lifecycle: Start simple, iterate with data. Theo GCP best practices, dùng metadata cho cold-start recommendation.
📘 Tài liệu tham khảo:
- Google Cloud ML Engineer Exam Guide (2024): Recommendations domain.
- GCP Docs: Recommendations AI Overview (cập nhật 2025: Nhấn mạnh heuristics cho no-user-data scenarios).
- Vertex AI Docs: Cold-start Recommendations.
🔍 Giải thích tất cả các phương án (đúng/sai)
-
❌ [SAI] Launch the product without machine learning. Present videos to users alphabetically, and start collecting user event data so you can develop a recommender model in the future.
Phương án này không hiệu quả vì chỉ sắp xếp theo alphabet là quá thô sơ, không tận dụng metadata (content type, release date, country). Người dùng sẽ không có trải nghiệm tốt (ví dụ: recommend ngẫu nhiên không liên quan), dẫn đến churn cao. Heuristics thông minh hơn alphabet, giúp first version usable hơn mà vẫn thu thập data. -
✅ [ĐÚNG] Launch the product without machine learning. Use simple heuristics based on content metadata to recommend similar videos to users, and start collecting user event data so you can develop a recommender model in the future.
Như đã giải thích ở trên: Cân bằng hoàn hảo giữa speed-to-launch, user experience cơ bản (similar content via metadata), và data collection cho ML sau. Đây là best practice cho cold-start problems trong recommendation systems. -
❌ [SAI] Launch the product with machine learning. Use a publicly available dataset such as MovieLens to train a model using the Recommendations AI, and then apply this trained model to your data.
Rủi ro cao và không phù hợp: MovieLens (dataset phim) không match domain video streaming (metadata khác biệt như country-specific content). Train trên Recommendations AI (GCP service) với public data rồi apply sang data riêng dễ gây bias, poor accuracy, và vi phạm ethics (AI Ethics team đã review nhưng không approve transfer learning kiểu này). GCP khuyến cáo không dùng public dataset cho production first version nếu domain mismatch. -
❌ [SAI] Launch the product with machine learning. Generate embeddings for each video by training an autoencoder on the content metadata using TensorFlow. Cluster content based on the similarity of these embeddings, and then recommend videos from the same cluster.
Quá phức tạp và không cần thiết cho first version: Train autoencoder (unsupervised DL) + clustering (KMeans?) trên metadata tabular cần compute cao, thời gian dài, nhưng vẫn thiếu user data nên recommendation chỉ content-based kém (không personalize). GCP/Vertex AI khuyên dùng heuristics trước khi DL embeddings (như trong Embedding API 2025). Dễ over-engineering dẫn đến delay launch.
- A The model is overfitting in areas with less traffic and underfitting in areas with more traffic.
- B AUC is not the correct metric to evaluate this classification model.
- C Too much data representing congested areas was used for model training.
- D Gradients become small and vanish while backpropagating from the output to input nodes.
Xem giải thích
🧩 Giải thích nội dung câu hỏi
Câu hỏi mô tả tình huống bạn đã xây dựng và triển khai mô hình phân đoạn hình ảnh (image segmentation) phiên bản đầu tiên cho xe tự lái. Sau khi triển khai, chỉ số AUC (Area Under the Curve) giảm sút. Khi phân tích video ghi hình, mô hình thất bại ở tình huống giao thông đông đúc (highly congested traffic) nhưng hoạt động bình thường ở giao thông ít xe (less traffic). Câu hỏi yêu cầu xác định nguyên nhân có khả năng nhất gây ra kết quả này.
📈 Đây là vấn đề phổ biến trong machine learning liên quan đến data distribution và model generalization, đặc biệt trong ứng dụng thực tế như autonomous driving, nơi môi trường thay đổi động (data drift hoặc imbalance).
✅ Đáp án đúng
The model is overfitting in areas with less traffic and underfitting in areas with more traffic.
🛠️ Lý do chọn đáp án này: Trong quá trình huấn luyện, dữ liệu đại diện cho tình huống giao thông ít xe (less traffic) thường nhiều hơn và dễ học hơn, dẫn đến mô hình overfitting (học thuộc lòng dữ liệu quen thuộc, hiệu suất cao trên data tương tự nhưng kém trên data mới). Ngược lại, dữ liệu giao thông đông đúc (congested traffic) hiếm hơn hoặc phức tạp hơn, khiến mô hình underfitting (không học đủ tốt, không generalize). Kết quả là AUC giảm tổng thể sau triển khai thực tế, nơi congested traffic xuất hiện nhiều hơn dự đoán. Đây là nguyên nhân phổ biến nhất theo nguyên tắc ML cơ bản (bias-variance tradeoff).
📘 Tài liệu tham khảo: AWS SageMaker Documentation (2024-2026 updates): "Model Monitoring for Data Drift" (docs.aws.amazon.com/sagemaker/latest/dg/model-monitor.html); "Bias-Variance Tradeoff" trong AWS ML Specialty Exam Guide.
🔍 Phân tích tất cả các phương án
Dưới đây là phân tích chi tiết từng lựa chọn, với ✅ cho đúng và ❌ cho sai. Tôi giữ nguyên văn bản gốc tiếng Anh và giải thích hoàn toàn bằng tiếng Việt:
-
✅ The model is overfitting in areas with less traffic and underfitting in areas with more traffic.
🟢 Đúng vì: Như giải thích trên, đây là sự mất cân bằng dữ liệu điển hình trong training set (less traffic data > congested data), dẫn đến overfitting trên data quen thuộc và underfitting trên data hiếm. Phù hợp với triệu chứng: tốt ở less traffic, kém ở congested → AUC giảm sau deploy. 🏆 -
❌ AUC is not the correct metric to evaluate this classification model.
🔴 Sai vì: AUC là metric hợp lý cho image segmentation (như binary segmentation: pixel foreground/background), đo khả năng phân biệt lớp tốt ở các threshold khác nhau. Mặc dù IoU/Dice phổ biến hơn cho segmentation, AUC vẫn được dùng (ví dụ trong ROC curve cho per-pixel classification). Vấn đề không phải metric sai mà là model performance drop do generalization kém. 📊 -
❌ Too much data representing congested areas was used for model training.
🔴 Sai vì: Nếu dùng quá nhiều data congested, mô hình sẽ tốt ở congested traffic chứ không phải kém như quan sát. Thực tế ngược lại: thường thiếu data congested → underfitting ở đó. Điều này vi phạm nguyên tắc data imbalance handling trong ML. ⚖️ -
❌ Gradients become small and vanish while backpropagating from the output to input nodes.
🔴 Sai vì: Vanishing gradients là vấn đề kỹ thuật trong deep networks (do activation như sigmoid/tanh), xảy ra trong training và ảnh hưởng toàn bộ model, không phân biệt theo traffic density. Không giải thích tại sao model tốt ở less traffic nhưng kém ở congested. Đây là issue architecture-level, không phải nguyên nhân chính ở đây. 🐛
💡 Kết luận và khuyến nghị
🧑🔬 Là Google Cloud Professional Machine Learning Engineer (với kiến thức cross-cloud đến AWS 2026), tôi khuyên dùng data augmentation cho congested scenarios, re-sampling (SMOTE/undersampling), hoặc transfer learning từ dataset lớn như nuScenes/Cityscapes trên AWS SageMaker. Theo dõi model drift bằng Amazon SageMaker Model Monitor để phát hiện sớm. Nếu cần code mẫu, hãy hỏi thêm! 🚀
- A Delete the rows that have missing values.
- B Apply feature crossing with another column that does not have missing values.
- C Predict the missing values using linear regression.
- D Replace the missing values with zeros.
Xem giải thích
🧩 Giải thích nội dung câu hỏi
Câu hỏi tập trung vào việc xử lý dữ liệu thiếu (missing data) trong quá trình chuẩn bị dữ liệu cho mô hình học máy (ML) dự đoán giá nhà. Biến dự đoán quan trọng là khoảng cách đến trường học gần nhất (distance from the closest school), thường xuyên bị thiếu giá trị và không có độ biến thiên cao (does not have high variance). Đặc biệt, mọi hàng dữ liệu (instance/row) đều quan trọng, nghĩa là không thể loại bỏ bất kỳ hàng nào. Mục tiêu là chọn phương pháp xử lý missing data phù hợp nhất, đảm bảo giữ nguyên toàn bộ dữ liệu mà vẫn duy trì chất lượng mô hình.
Đây là vấn đề phổ biến trong data preprocessing cho ML, đặc biệt trên các nền tảng như AWS SageMaker (phiên bản mới nhất 2026 hỗ trợ Data Wrangler và Processing Jobs với imputation tiên tiến). Phương pháp phải cân bằng giữa độ chính xác, tránh bias và giữ dữ liệu đầy đủ. 📘
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: Predict the missing values using linear regression.
🛠️ Lý do: Phương pháp này sử dụng hồi quy tuyến tính (linear regression) để dự đoán giá trị thiếu dựa trên các biến khác có tương quan, giúp imputation chính xác hơn so với các cách đơn giản. Biến này không có high variance nên ít nhạy cảm với outlier, và mọi row đều quan trọng nên cần giữ dữ liệu. Đây là best practice trong AWS SageMaker (Data Wrangler hỗ trợ regression imputation từ phiên bản 2023+, cập nhật 2026 với AutoML enhancements). Tránh mất thông tin và giảm bias hiệu quả. 📈
🔍 Phân tích tất cả các phương án (đúng/sai)
Dưới đây là phân tích chi tiết từng lựa chọn, giữ nguyên văn bản gốc bằng tiếng Anh. Mỗi phương án được đánh giá dựa trên ngữ cảnh câu hỏi (mọi row quan trọng, biến low variance, AWS ML best practices 2026).
-
❌ [SAI] Delete the rows that have missing values.
🧨 Giải thích sai: Phương pháp này loại bỏ toàn bộ hàng có missing values, dẫn đến mất dữ liệu lớn (biến "often missing"). Vì mọi instance đều quan trọng, việc delete sẽ làm giảm kích thước dataset nghiêm trọng, gây bias và underfitting mô hình. AWS khuyến cáo tránh listwise deletion trừ khi missing <5% (SageMaker Data Wrangler docs, 2026). -
❌ [SAI] Apply feature crossing with another column that does not have missing values.
🧩 Giải thích sai: Feature crossing tạo tương tác giữa biến (ví dụ: distance × biến khác), nhưng không giải quyết trực tiếp missing values ở biến gốc. Nó chỉ phức tạp hóa dữ liệu mà không impute, có thể làm mô hình kém hiệu quả với low variance feature. Không phù hợp cho preprocessing missing data (AWS Feature Store không dùng crossing cho imputation, theo best practices 2026). -
✅ [ĐÚNG] Predict the missing values using linear regression.
🛠️ Giải thích đúng: Như đã nêu ở trên, sử dụng linear regression để dự đoán missing dựa trên các predictor khác, tận dụng correlations. Phù hợp với low variance (ít noise), giữ 100% rows. AWS SageMaker Processing/ Data Wrangler hỗ trợ trực tiếp (sklearn.impute hoặc custom script, cập nhật 2026 với scalable regression imputation). Giảm bias tốt hơn mean/median. -
❌ [SAI] Replace the missing values with zeros.
🚫 Giải thích sai: Thay bằng 0 giả định distance=0 (gần trường nhất), nhưng tạo bias lớn vì 0 không đại diện thực tế (nhiều nhà xa trường). Với low variance, 0 có thể làm méo distribution. AWS ML guidelines (2026) khuyên tránh zero-imputation cho continuous features như distance, ưu tiên model-based methods.
📚 Tài liệu tham khảo
- AWS SageMaker Documentation (2026): Handling missing data in SageMaker Data Wrangler – Hỗ trợ regression imputation.
- AWS ML Best Practices: Preprocessing layers in SageMaker – Khuyến cáo model-based imputation.
- Scikit-learn (tích hợp SageMaker):
IterativeImputervới estimator='linear' (phiên bản 1.5+, 2026 updates).
Phân tích này dựa trên kiến thức cập nhật AWS ML Engineer certified standards đến 2026! 🚀
- A Create the pipeline using Kubeflow Pipelines domain-specific language (DSL) and predefined Google Cloud components. Orchestrate the pipeline using Vertex AI Pipelines.
- B Create the pipeline using TensorFlow Extended (TFX) and standard TFX components. Orchestrate the pipeline using Vertex AI Pipelines.
- C Create the pipeline using Kubeflow Pipelines domain-specific language (DSL) and predefined Google Cloud components. Orchestrate the pipeline using Kubeflow Pipelines deployed on Google Kubernetes Engine.
- D Create the pipeline using TensorFlow Extended (TFX) and standard TFX components. Orchestrate the pipeline using Kubeflow Pipelines deployed on Google Kubernetes Engine.
Xem giải thích
🧩 Giải thích nội dung câu hỏi
Câu hỏi yêu cầu thiết kế và triển khai một pipeline huấn luyện end-to-end cho mô hình TensorFlow trên dữ liệu có dung lượng lớn (vài terabytes dữ liệu có cấu trúc). Pipeline phải bao gồm:
- Kiểm tra chất lượng dữ liệu (data quality checks) trước khi huấn luyện.
- Kiểm tra chất lượng mô hình (model quality checks) sau huấn luyện nhưng trước khi triển khai. Mục tiêu chính: Giảm thiểu thời gian phát triển và bảo trì hạ tầng (minimize development time and infrastructure maintenance).
Đây là tình huống thực tế trong MLOps trên Google Cloud, nơi cần công cụ managed để tự động hóa pipeline mà không cần quản lý Kubernetes thủ công. ✅
✅ Đáp án đúng
Create the pipeline using TensorFlow Extended (TFX) and standard TFX components. Orchestrate the pipeline using Vertex AI Pipelines.
Lý do chọn đáp án này:
- TFX là framework end-to-end chuyên cho TensorFlow, cung cấp các components chuẩn sẵn có như ExampleValidator (kiểm tra chất lượng dữ liệu), StatisticsGen/SchemaGen (phân tích schema dữ liệu), và Evaluator (kiểm tra chất lượng mô hình với metrics như accuracy, fairness). Điều này giúp giảm thời gian phát triển vì không cần tự code components từ đầu. 🛠️
- Vertex AI Pipelines là dịch vụ fully managed trên Google Cloud (cập nhật đến 2026), tích hợp native với TFX, hỗ trợ scale cho dữ liệu lớn (terabytes), và tự động hóa orchestration mà không cần bảo trì hạ tầng (không quản lý GKE).
- Kết hợp hoàn hảo: TFX + Vertex AI Pipelines là best practice cho production ML pipelines trên GCP. 📘
📋 Phân tích tất cả các phương án
Dưới đây là phân tích chi tiết từng lựa chọn, với lý do đúng/sai dựa trên kiến thức Google Cloud/ML mới nhất (Vertex AI Pipelines v2025+, TFX v2.15+).
-
❌ [SAI] Create the pipeline using Kubeflow Pipelines domain-specific language (DSL) and predefined Google Cloud components. Orchestrate the pipeline using Vertex AI Pipelines.
Kubeflow Pipelines DSL linh hoạt nhưng không có components predefined chuẩn cho data/model quality checks như TFX (phải tự build hoặc dùng custom components). Dù orchestrate bằng Vertex AI Pipelines (managed), việc dùng Kubeflow DSL vẫn tăng thời gian phát triển so với TFX sẵn có. Không tối ưu cho TensorFlow-specific pipeline. -
✅ [ĐÚNG] Create the pipeline using TensorFlow Extended (TFX) and standard TFX components. Orchestrate the pipeline using Vertex AI Pipelines.
(Đã giải thích ở phần trên). Hoàn toàn phù hợp với yêu cầu: TFX components chuẩn xử lý quality checks, Vertex AI Pipelines managed để scale terabytes dữ liệu mà không bảo trì. -
❌ [SAI] Create the pipeline using Kubeflow Pipelines domain-specific language (DSL) and predefined Google Cloud components. Orchestrate the pipeline using Kubeflow Pipelines deployed on Google Kubernetes Engine.
Kubeflow DSL + components predefined vẫn thiếu native support cho TFX-style quality checks, tăng dev time. Hơn nữa, orchestrate bằng Kubeflow on GKE yêu cầu tự quản lý hạ tầng Kubernetes (scaling, updates), vi phạm yêu cầu minimize maintenance. Không managed như Vertex AI. -
❌ [SAI] Create the pipeline using TensorFlow Extended (TFX) and standard TFX components. Orchestrate the pipeline using Kubeflow Pipelines deployed on Google Kubernetes Engine.
TFX components chuẩn rất tốt cho quality checks và TensorFlow, nhưng orchestrate bằng Kubeflow on GKE lại tăng gánh nặng bảo trì hạ tầng (GKE cluster management). Vertex AI Pipelines mới là lựa chọn managed thực sự cho TFX.
🔗 Tài liệu tham khảo
- 📘 Vertex AI Pipelines Docs: cloud.google.com/vertex-ai/docs/pipelines/introduction (Hỗ trợ TFX native, managed orchestration).
- 📘 TFX Official Guide: tensorflow.org/tfx (Components cho data/model validation).
- 📘 Google Cloud ML Best Practices: cloud.google.com/architecture/ml-on-gcp-best-practices (Khuyến nghị TFX + Vertex AI cho end-to-end pipelines, cập nhật 2025+).
- 🎓 Certification Reference: Google Cloud Professional ML Engineer Exam Guide (phiên bản 2026).
Hy vọng phân tích này giúp bạn nắm vững! 🚀