Ngân hàng đề — Google Cloud Professional Machine Learning Engineer

Tìm thấy 333 câu.

Câu 51
You work on a growing team of more than 50 data scientists who all use AI Platform. You are designing a strategy to organize your jobs, models, and versions in a clean and scalable way. Which strategy should you choose?
  1. A Set up restrictive IAM permissions on the AI Platform notebooks so that only a single user or group can access a given instance.
  2. B Separate each data scientist's work into a different project to ensure that the jobs, models, and versions created by each data scientist are accessible only to that user.
  3. C Use labels to organize resources into descriptive categories. Apply a label to each created resource so that users can filter the results by label when viewing or monitoring the resources.
  4. D Set up a BigQuery sink for Cloud Logging logs that is appropriately filtered to capture information about AI Platform resource usage. In BigQuery, create a SQL view that maps users to the resources they are using
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 Google Cloud AI Platform (nay được nâng cấp thành Vertex AI theo các cập nhật mới nhất đến năm 2026). Nó mô tả tình huống: Bạn làm việc trong một đội ngũ data scientists đang phát triển với hơn 50 thành viên, tất cả đều sử dụng AI Platform để chạy jobs, quản lý models và versions. Nhiệm vụ là thiết kế chiến lược tổ chức jobs, models và versions một cách sạch sẽ (clean) và có khả năng mở rộng (scalable).

📌 Mục tiêu chính: Cần một phương pháp linh hoạt, dễ quản lý, không làm phức tạp hóa quyền truy cập hoặc chi phí, phù hợp cho team lớn, giúp dễ dàng lọc, theo dõi và phân loại tài nguyên mà không cần chia nhỏ môi trường hoặc hạn chế nghiêm ngặt.

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Use labels to organize resources into descriptive categories. Apply a label to each created resource so that users can filter the results by label when viewing or monitoring the resources.

Lý do chọn đáp án này 🛠️:

  • Labels là tính năng cốt lõi của Google Cloud (bao gồm Vertex AI) để phân loại và tổ chức tài nguyên một cách mô tả (descriptive) và linh hoạt. Mỗi job, model, version có thể gắn label (key-value pairs) như owner:john_doe hoặc project:fraud_detection.
  • Scalable cho team lớn: Với >50 users, labels cho phép lọc nhanh qua Console, gcloud CLI hoặc API khi xem/monitor (ví dụ: gcloud ai-platform jobs list --filter="labels.owner=teamA").
  • Clean và không tốn kém: Không cần tạo project riêng hay setup phức tạp, dễ audit và cost allocation.
  • Cập nhật 2026: Vertex AI (thay thế AI Platform) vẫn hỗ trợ labels đầy đủ, tích hợp với Cloud Billing cho tracking chi phí theo label (theo docs Vertex AI v1.50+).

📘 Giải thích tất cả các phương án (đúng/sai)

Dưới đây là phân tích từng phương án một cách chi tiết, 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 tính scalable, clean và phù hợp với team lớn trên Vertex AI.

  • ❌ [SAI] Set up restrictive IAM permissions on the AI Platform notebooks so that only a single user or group can access a given instance.
    Giải thích sai: Phương án này hạn chế quyền truy cập nghiêm ngặt trên notebooks (qua IAM), chỉ cho phép 1 user/group dùng instance. Với team >50 người, nó không scalable vì tạo ra silos (cách ly), khó chia sẻ code/models, tăng overhead quản lý permissions. Không tổ chức jobs/models/versions mà chỉ giới hạn notebooks – không giải quyết vấn đề chính. Vertex AI khuyến nghị dùng shared notebooks với Custom Roles thay vì restrict.

  • ❌ [SAI] Separate each data scientist's work into a different project to ensure that the jobs, models, and versions created by each data scientist are accessible only to that user.
    Giải thích sai: Tạo project riêng cho từng data scientist (50+ projects) là không scalable và tốn kém (mỗi project có quota riêng, billing overhead). Google Cloud giới hạn số project/folder (~10k/org), khó quản lý centrally. Không "clean" vì phân mảnh tài nguyên, khó collaborate. Thay vào đó, dùng single project với labels/IAM groups (theo best practices Vertex AI).

  • ✅ [ĐÚNG] Use labels to organize resources into descriptive categories. Apply a label to each created resource so that users can filter the results by label when viewing or monitoring the resources.
    Giải thích đúng: Như đã phân tích ở trên – tối ưu nhất cho tổ chức descriptive, filterable. Hỗ trợ đầy đủ qua UI/CLI/API, tích hợp Monitoring/Logging. Scalable vô hạn labels/resource, dễ automate via Terraform/Deployment Manager.

  • ❌ [SAI] Set up a BigQuery sink for Cloud Logging logs that is appropriately filtered to capture information about AI Platform resource usage. In BigQuery, create a SQL view that maps users to the resources they are using.
    Giải thích sai: Setup Cloud Logging sink vào BigQuery để track usage qua logs/SQL view là phức tạp và gián tiếp, chỉ tốt cho auditing/post-analysis chứ không tổ chức trực tiếp jobs/models/versions. Không "clean/scalable" realtime (latency logs, query overhead), tốn chi phí BigQuery. Vertex AI dùng native labels + Resource Manager thay vì hack qua logs.

🔗 Tài liệu tham khảo (cập nhật 2026)

🧠 Kết luận: Labels là giải pháp chuẩn Google Cloud cho scenario này, giúp team >50 DS làm việc hiệu quả! Nếu cần ví dụ code gcloud, hãy hỏi thêm. 🚀

Câu 52
You are training a deep learning model for semantic image segmentation with reduced training time. While using a Deep Learning VM Image, you receive the following error: The resource 'projects/deeplearning-platforn/zones/europe-west4-c/acceleratorTypes/nvidia-tesla-k80' was not found. What should you do?
  1. A Ensure that you have GPU quota in the selected region.
  2. B Ensure that the required GPU is available in the selected region.
  3. C Ensure that you have preemptible GPU quota in the selected region.
  4. D Ensure that the selected GPU has enough GPU memory for the workload.
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 huấn luyện một mô hình deep learning cho nhiệm vụ semantic image segmentation (phân đoạn hình ảnh ngữ nghĩa) với mục tiêu giảm thời gian huấn luyện. Bạn sử dụng Deep Learning VM Image (một image được tối ưu hóa sẵn trên Google Cloud Platform - GCP cho các tác vụ ML/DL). Khi khởi tạo, bạn gặp lỗi:
"The resource 'projects/deeplearning-platforn/zones/europe-west4-c/acceleratorTypes/nvidia-tesla-k80' was not found."

🛠️ Ý nghĩa lỗi: Lỗi này chỉ ra rằng tài nguyên acceleratorType nvidia-tesla-k80 (một loại GPU cũ của NVIDIA) không tồn tại hoặc không khả dụng tại zone europe-west4-c (thuộc region europe-west4). Đây không phải lỗi quota (hạn mức sử dụng) hay vấn đề bộ nhớ, mà là GPU cụ thể này không được hỗ trợ ở zone/region đó. Deep Learning VM Images trên GCP yêu cầu kiểm tra tính khả dụng của GPU trước khi attach vào VM.

✅ Đáp án đúng:
Ensure that the required GPU is available in the selected region.

Lý do chọn đáp án đúng (bằng tiếng Việt):
Lỗi "resource ... was not found" trực tiếp chỉ ra rằng loại GPU nvidia-tesla-k80 không có sẵn tại zone europe-west4-c. Theo tài liệu GCP mới nhất (cập nhật đến 2026), không phải tất cả GPU types đều available ở mọi region/zone. Tesla K80 là GPU legacy (hết hỗ trợ dần từ 2023), và europe-west4 (Netherlands) không hỗ trợ nó. Giải pháp là kiểm tra GPU availability qua Google Cloud Console hoặc CLI (gcloud compute accelerator-types list --zones=europe-west4-c), sau đó chọn zone/region hỗ trợ (ví dụ: us-central1 hỗ trợ K80 ở một số zone) hoặc chuyển sang GPU mới hơn như A100/T4/V100. Điều này giúp giảm thời gian huấn luyện mà không gặp lỗi resource.

🔍 Giải thích tất cả các phương án (đúng/sai)

  • ❌ [SAI] Ensure that you have GPU quota in the selected region.
    Phương án này sai vì lỗi không phải do hết quota (hạn mức sử dụng GPU). Nếu hết quota, lỗi sẽ là "Quota exceeded" hoặc "RESOURCE_QUOTA_EXCEEDED". Ở đây là "not found", nghĩa là GPU loại này đơn giản không tồn tại ở zone đó. Quota chỉ kiểm tra sau khi resource available.

  • ✅ [ĐÚNG] Ensure that the required GPU is available in the selected region.
    Đúng như giải thích trên: Lỗi chỉ rõ resource GPU cụ thể không available ở region/zone. GCP yêu cầu kiểm tra Compute Engine GPU machine types và availability qua Console (Machine types page) hoặc API. Tesla K80 chỉ available ở một số region cũ như us-central1, không phải europe-west4.

  • ❌ [SAI] Ensure that you have preemptible GPU quota in the selected region.
    Sai hoàn toàn vì preemptible GPU (VM có thể bị gián đoạn để tiết kiệm chi phí) không liên quan đến lỗi "not found". Preemptible chỉ là tùy chọn pricing, và quota preemptible riêng biệt. Lỗi gốc là resource không tồn tại, không phải quota preemptible.

  • ❌ [SAI] Ensure that the selected GPU has enough GPU memory for the workload.
    Sai vì lỗi xảy ra trước khi VM khởi chạy, nên không liên quan đến GPU memory (K80 có 12GB GDDR5). Vấn đề memory sẽ báo lỗi OOM (Out of Memory) khi training, không phải "resource not found" lúc tạo VM.

📘 Tài liệu tham khảo (cập nhật GCP 2026)

Hy vọng phân tích này giúp bạn nắm vững! 🚀 Nếu cần thực hành lab GCP, hãy thử trên Qwiklabs.

Câu 53
Your team is working on an NLP research project to predict political affiliation of authors based on articles they have written. You have a large training dataset that is structured like this:

You followed the standard 80%-10%-10% data distribution across the training, testing, and evaluation subsets. How should you distribute the training examples across the train-test-eval subsets while maintaining the 80-10-10 proportion?
  1. A Distribute texts randomly across the train-test-eval subsets: Train set: [TextA1, TextB2, ...] Test set: [TextA2, TextC1, TextD2, ...] Eval set: [TextB1, TextC2, TextD1, ...]
  2. B Distribute authors randomly across the train-test-eval subsets: (*) Train set: [TextA1, TextA2, TextD1, TextD2, ...] Test set: [TextB1, TextB2, ...] Eval set: [TexC1,TextC2 ...]
  3. C Distribute sentences randomly across the train-test-eval subsets: Train set: [SentenceA11, SentenceA21, SentenceB11, SentenceB21, SentenceC11, SentenceD21 ...] Test set: [SentenceA12, SentenceA22, SentenceB12, SentenceC22, SentenceC12, SentenceD22 ...] Eval set: [SentenceA13, SentenceA23, SentenceB13, SentenceC23, SentenceC13, SentenceD31 ...]
  4. D Distribute paragraphs of texts (i.e., chunks of consecutive sentences) across the train-test-eval subsets: Train set: [SentenceA11, SentenceA12, SentenceD11, SentenceD12 ...] Test set: [SentenceA13, SentenceB13, SentenceB21, SentenceD23, SentenceC12, SentenceD13 ...] Eval set: [SentenceA11, SentenceA22, SentenceB13, SentenceD22, SentenceC23, SentenceD11 ...]
Xem giải thích

🧩 Phân tích nội dung câu hỏi

Câu hỏi này thuộc lĩnh vực Machine Learning cho NLP (Natural Language Processing), cụ thể là dự án nghiên cứu dự đoán hướng chính trị (political affiliation) của các tác giả dựa trên các bài viết (articles) họ đã viết. Dataset lớn được cấu trúc hierarchical (phân cấp) như sau (dựa trên hình ảnh đính kèm):

  • Cấp cao nhất: Authors (Tác giả), mỗi tác giả thuộc một Political Party (Đảng phái chính trị) cụ thể (ví dụ: Party A hoặc Party B).
  • Cấp giữa: Texts (Bài viết), mỗi tác giả có nhiều bài viết (ví dụ: Author A có TextA1, TextA2; Author B có TextB1, TextB2; Author C có TextC1, TextC2; Author D có TextD1, TextD2).
  • Cấp thấp nhất: Sentences (Câu văn), mỗi bài viết chứa nhiều câu (ví dụ: TextA1 chứa SentenceA11, A12, A13...).

📊 Dataset tuân theo phân phối chuẩn 80% train - 10% test - 10% eval. Vấn đề cốt lõi: Làm thế nào phân bổ examples (dữ liệu huấn luyện) vào các subset mà vẫn giữ tỷ lệ 80-10-10, tránh data leakage (rò rỉ dữ liệu)?

Tại sao cần cẩn thận? Model học kiểu viết đặc trưng của từng tác giả (author-specific features như từ vựng, cấu trúc câu) để dự đoán đảng phái. Nếu texts/câu từ cùng tác giả bị chia vào train và test/eval, model sẽ "nhớ" và cheat, dẫn đến đánh giá sai lệch (overfitting đến author thay vì generalize party).

🛠️ Best practice (cập nhật đến 2026): Trong Google Cloud Vertex AI hoặc các framework ML như TensorFlow, phải split tại cấp cao nhất (author-level) để tất cả texts của một author chỉ nằm hoàn toàn ở một subset. Điều này đảm bảo tính độc lập giữa train/test/eval, phù hợp với nguyên tắc ML engineering (theo Google Cloud Professional ML Engineer certification guide).

✅ Đáp án đúng

Distribute authors randomly across the train-test-eval subsets: (*) Train set: [TextA1, TextA2, TextD1, TextD2, ...] Test set: [TextB1, TextB2, ...] Eval set: [TexC1,TextC2 ...]

Lý do chọn:
✅ Phân bổ ngẫu nhiên theo tác giả (author-level split) đảm bảo tất cả bài viết của một tác giả chỉ thuộc một subset duy nhất (ví dụ: Author A và D vào train với đầy đủ texts; Author B vào test; Author C vào eval).
✅ Giữ tỷ lệ 80-10-10 bằng cách chọn số lượng authors tương ứng (giả sử tổng authors lớn).
✅ Tránh data leakage hoàn toàn vì model không thấy bất kỳ dữ liệu nào từ cùng author ở các subset khác → đánh giá chính xác khả năng generalize từ party features.
✅ Tuân thủ best practices ML 2026: Vertex AI AutoML/ Custom Training khuyến nghị hierarchical split cho grouped data (group-aware splitting).

📋 Giải thích tất cả các phương án

  • Distribute texts randomly across the train-test-eval subsets: Train set: [TextA1, TextB2, ...] Test set: [TextA2, TextC1, TextD2, ...] Eval set: [TextB1, TextC2, TextD1, ...]
    ❌ Sai: Phân bổ ngẫu nhiên theo texts dẫn đến texts từ cùng author bị chia rải rác (ví dụ TextA1 vào train, TextA2 vào test). Model học style của Author A từ train rồi "nhận ra" ở test → data leakage nghiêm trọng, đánh giá giả tạo cao.

  • Distribute authors randomly across the train-test-eval subsets: (*) Train set: [TextA1, TextA2, TextD1, TextD2, ...] Test set: [TextB1, TextB2, ...] Eval set: [TexC1,TextC2 ...]
    ✅ Đúng: Như đã giải thích ở trên. Split tại author-level đảm bảo tính độc lập, phù hợp hierarchical data trong NLP tasks dự đoán entity-level labels (party của author).

  • Distribute sentences randomly across the train-test-eval subsets: Train set: [SentenceA11, SentenceA21, SentenceB11, SentenceB21, SentenceC11, SentenceD21 ...] Test set: [SentenceA12, SentenceA22, SentenceB12, SentenceC22, SentenceC12, SentenceD22 ...] Eval set: [SentenceA13, SentenceA23, SentenceB13, SentenceC23, SentenceC13, SentenceD31 ...]
    ❌ Sai: Phân bổ ngẫu nhiên theo sentences tệ nhất, vì sentences từ cùng text/author bị lẫn lộn (ví dụ SentenceA11 vào train, A12/A13 vào test). Leakage cực cao do sentences liên quan ngữ cảnh → model cheat dễ dàng, không đánh giá được khả năng predict party.

  • Distribute paragraphs of texts (i.e., chunks of consecutive sentences) across the train-test-eval subsets: Train set: [SentenceA11, SentenceA12, SentenceD11, SentenceD12 ...] Test set: [SentenceA13, SentenceB13, SentenceB21, SentenceD23, SentenceC12, SentenceD13 ...] Eval set: [SentenceA11, SentenceA22, SentenceB13, SentenceD22, SentenceC23, SentenceD11 ...]
    ❌ Sai: Phân bổ theo paragraphs (chunks sentences) vẫn lẫn lộn data từ cùng text/author (ví dụ paragraphs từ TextA vào cả train/test/eval). Vẫn gây leakage vì style author lan tỏa qua chunks → không độc lập, đánh giá không đáng tin cậy.

📘 Tài liệu tham khảo

  • Google Cloud Vertex AI Documentation (2026 update): Preparing tabular data for training – Nhấn mạnh group-aware splitting cho hierarchical data.
  • Google Cloud Professional ML Engineer Exam Guide: Practice question về NLP data splitting (ExamTopics ID: 3841).
  • Best Practices: "Hands-On Machine Learning with Scikit-Learn, Keras & TensorFlow" (Aurélien Géron, 3rd Ed. 2022+ updates) – Chương về avoiding leakage in grouped data.
  • AWS tương đương (nếu liên quan): SageMaker Data Wrangler hỗ trợ group-split từ 2023, nhưng câu hỏi gốc từ Google Cloud.

Hy vọng phân tích này giúp bạn nắm vững! 🚀 Nếu cần code Vertex AI pipeline, hỏi thêm nhé!

Câu 54
Your team has been tasked with creating an ML solution in Google Cloud to classify support requests for one of your platforms. You analyzed the requirements and decided to use TensorFlow to build the classifier so that you have full control of the model's code, serving, and deployment. You will use Kubeflow pipelines for the ML platform. To save time, you want to build on existing resources and use managed services instead of building a completely new model. How should you build the classifier?
  1. A Use the Natural Language API to classify support requests.
  2. B Use AutoML Natural Language to build the support requests classifier.
  3. C Use an established text classification model on AI Platform to perform transfer learning.
  4. D Use an established text classification model on AI Platform as-is to classify support requests.
Xem giải thích

🧩 Phân tích chi tiết câu hỏi

Câu hỏi tập trung vào việc xây dựng một giải pháp Machine Learning (ML) trên Google Cloud để phân loại các yêu cầu hỗ trợ (support requests) cho một nền tảng. Nhóm phát triển đã phân tích yêu cầu và quyết định sử dụng TensorFlow để xây dựng bộ phân loại (classifier), nhằm có toàn quyền kiểm soát mã nguồn mô hình, serving và deployment. Họ sẽ sử dụng Kubeflow pipelines làm nền tảng ML. Để tiết kiệm thời gian, cần xây dựng dựa trên tài nguyên sẵn có và ưu tiên dịch vụ managed thay vì xây dựng mô hình hoàn toàn mới từ đầu.

Mục tiêu chính:

  • Phân loại văn bản (text classification) cho support requests.
  • Giữ quyền kiểm soát cao với TensorFlow và Kubeflow.
  • Tận dụng mô hình có sẵn (pre-trained/established model) để tránh huấn luyện từ zero.
  • Không muốn các giải pháp "black-box" hoàn toàn (như API managed thuần túy).

📘 Lưu ý kiến thức cập nhật (đến 2026): AI Platform đã được tích hợp/mở rộng thành Vertex AI (ra mắt 2021, cập nhật liên tục). Kubeflow hỗ trợ tốt transfer learning trên Vertex AI Pipelines. TensorFlow Extended (TFX) và Kubeflow cho phép tùy chỉnh full-stack ML.

✅ Đáp án đúng

Use an established text classification model on AI Platform to perform transfer learning.

Lý do lựa chọn:

  • Phương án này hoàn hảo phù hợp với yêu cầu: Sử dụng mô hình text classification có sẵn (established model) trên AI Platform (nay là Vertex AI) để transfer learning (fine-tune trên dữ liệu support requests cụ thể).
  • Đảm bảo full control với TensorFlow (chỉnh sửa code mô hình, huấn luyện tùy chỉnh), tích hợp Kubeflow pipelines cho orchestration.
  • Tiết kiệm thời gian bằng cách build on existing resources (pre-trained models như BERT từ TensorFlow Hub), không cần train from scratch.
  • Managed service: Vertex AI cung cấp training jobs, serving, deployment tự động nhưng vẫn cho phép export code TensorFlow.

🛠️ Quy trình thực hiện: Load pre-trained model → Fine-tune với dữ liệu support → Deploy qua Kubeflow → Serving trên Vertex AI Prediction.

📋 Giải thích tất cả các phương án

  • ❌ [SAI] Use the Natural Language API to classify support requests.
    Phương án này không phù hợp vì Natural Language API là dịch vụ fully managed, black-box (không cho phép chỉnh sửa code TensorFlow hoặc tùy chỉnh mô hình). Nó chỉ hỗ trợ classification có sẵn (như sentiment, entity), không linh hoạt cho custom support requests. Không tích hợp Kubeflow và mất full control serving/deployment.

  • ❌ [SAI] Use AutoML Natural Language to build the support requests classifier.
    AutoML Natural Language là low-code/no-code managed service, tự động train mô hình từ dữ liệu upload mà không cần code TensorFlow. Nó không cho full control code/serving (chỉ deploy qua Google console), không dùng Kubeflow pipelines, và không tận dụng "established model" sẵn có một cách tùy chỉnh.

  • ✅ [ĐÚNG] Use an established text classification model on AI Platform to perform transfer learning.
    Như đã giải thích ở trên: Hoàn toàn khớp yêu cầu – transfer learning trên pre-trained model (ví dụ: Universal Sentence Encoder hoặc BERT trên TensorFlow Hub/AI Platform), full TensorFlow control, Kubeflow orchestration, managed Vertex AI cho training/serving.

  • ❌ [SAI] Use an established text classification model on AI Platform as-is to classify support requests.
    Phương án này gần đúng nhưng thiếu sót vì chỉ dùng mô hình "as-is" (không fine-tune), dẫn đến hiệu suất kém trên dữ liệu support requests cụ thể (domain khác pre-trained data). Yêu cầu nhấn mạnh "build on existing resources" nhưng cần tùy chỉnh (transfer learning) để có control và accuracy cao, không phải dùng nguyên xi.

📘 Tài liệu tham khảo

Hy vọng phân tích này giúp bạn nắm vững! 🚀 Nếu cần code sample Kubeflow, hãy hỏi thêm.

Câu 55
You recently joined a machine learning team that will soon release a new project. As a lead on the project, you are asked to determine the production readiness of the ML components. The team has already tested features and data, model development, and infrastructure. Which additional readiness check should you recommend to the team?
  1. A Ensure that training is reproducible.
  2. B Ensure that all hyperparameters are tuned.
  3. C Ensure that model performance is monitored.
  4. D Ensure that feature expectations are captured in the schema.
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 tập trung vào việc đánh giá sẵn sàng sản xuất (production readiness) cho các thành phần Machine Learning (ML) trong một dự án sắp ra mắt. Bạn là lead dự án, và đội ngũ đã hoàn tất kiểm tra các phần: features và dữ liệu (features and data), phát triển mô hình (model development), và hạ tầng (infrastructure).

📌 Mục tiêu chính: Xác định kiểm tra bổ sung cần thiết để đảm bảo hệ thống ML hoạt động ổn định trong môi trường production thực tế. Trong ML Ops (MLOps), production readiness không chỉ dừng ở phát triển mà còn bao gồm khả năng duy trì hiệu suất lâu dài, xử lý drift (suy giảm hiệu suất do dữ liệu thay đổi), và giám sát liên tục – đặc biệt theo các best practices của AWS SageMaker (phiên bản mới nhất 2025-2026, với SageMaker Model Monitor và Canvas hỗ trợ monitoring end-to-end).

🛠️ Bối cảnh AWS: Câu hỏi liên quan đến quy trình MLOps trên AWS, nơi production hóa ML yêu cầu monitoring model performance để phát hiện model drift, data drift, và bias ngay sau deploy (theo AWS Well-Architected Framework for ML, pillar "Operational Excellence").

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Ensure that model performance is monitored.

Lý do:

  • Trong production, mô hình ML không "tĩnh" mà có thể suy giảm hiệu suất do dữ liệu mới (data drift), thay đổi môi trường, hoặc bias tích tụ. Đội ngũ đã kiểm tra dev/infra, nên bước bổ sung thiết yếu là giám sát hiệu suất mô hình liên tục (model monitoring) để đảm bảo chất lượng inference thời gian thực.
  • Theo AWS SageMaker (cập nhật 2026), Model Monitor tự động thu thập metrics (accuracy, MSE, etc.), phát hiện anomaly, và alert – đây là readiness check bắt buộc cho production để tránh downtime hoặc quyết định sai lầm.
  • Không có các bước kia vì chúng thuộc giai đoạn dev/test đã hoàn tất.

📋 Giải thích tất cả các phương án (đúng/sai)

  • ❌ Ensure that training is reproducible.
    Sai vì: Reproducibility của training (đảm bảo kết quả giống nhau khi chạy lại) là kiểm tra giai đoạn model development, đã được đội ngũ hoàn tất. Trong production AWS SageMaker, điều này dùng SageMaker Experiments/ Pipelines, nhưng không phải readiness check bổ sung cho deploy (chỉ cần seed/random state fixed).

  • ❌ Ensure that all hyperparameters are tuned.
    Sai vì: Tuning hyperparameters (tối ưu siêu tham số như learning rate) thuộc model development phase, đã test xong. AWS dùng Hyperparameter Tuning Jobs (Automated Tuning với Bayesian Optimization, cập nhật 2026), nhưng production readiness tập trung monitoring post-deploy, không phải retuning.

  • ✅ Ensure that model performance is monitored.
    Đúng vì: Như giải thích trên, đây là kiểm tra bổ sung thiết yếu cho production. AWS SageMaker Model Monitor (với JSON Schema baselines và CloudWatch integration) giám sát real-time metrics, drift detection – đảm bảo mô hình "sống khỏe" sau release.

  • ❌ Ensure that feature expectations are captured in the schema.
    Sai vì: Capture feature expectations (kiểu dữ liệu, range, nullability) là data/features validation, đã test. AWS dùng SageMaker Data Wrangler/ Clarify hoặc Great Expectations cho schema enforcement, nhưng đây là pre-production, không phải post-deploy monitoring.

📘 Tài liệu tham khảo (cập nhật AWS 2025-2026)

Hy vọng phân tích này giúp bạn nắm vững! 🚀 Nếu cần deep dive thêm về AWS SageMaker so với Vertex AI (Google Cloud), hãy hỏi nhé! 😊

Câu 56
You work for a credit card company and have been asked to create a custom fraud detection model based on historical data using AutoML Tables. You need to prioritize detection of fraudulent transactions while minimizing false positives. Which optimization objective should you use when training the model?
  1. A An optimization objective that minimizes Log loss
  2. B An optimization objective that maximizes the Precision at a Recall value of 0.50
  3. C An optimization objective that maximizes the area under the precision-recall curve (AUC PR) value
  4. D An optimization objective that maximizes the area under the receiver operating characteristic curve (AUC ROC) value
Xem giải thích

🧩 Phân tích chi tiết nội dung câu hỏi

Câu hỏi tập trung vào việc xây dựng mô hình phát hiện gian lận thẻ tín dụng (fraud detection) sử dụng AutoML Tables của Google Cloud (không phải AWS, mặc dù yêu cầu đề cập liên quan AWS nhưng nội dung rõ ràng là GCP). Bạn làm việc cho công ty thẻ tín dụng, sử dụng dữ liệu lịch sử để huấn luyện mô hình phân loại nhị phân (binary classification: gian lận hay không). Mục tiêu chính là ưu tiên phát hiện giao dịch gian lận (tăng recall để bắt được nhiều trường hợp gian lận nhất có thể) đồng thời giảm thiểu false positives (giảm cảnh báo sai, tránh làm phiền khách hàng hợp pháp).

Câu hỏi yêu cầu chọn optimization objective (mục tiêu tối ưu hóa) phù hợp nhất khi huấn luyện mô hình trên AutoML Tables. Đây là tính năng của Vertex AI (trước đây là AutoML Tables), hỗ trợ các metric như Log Loss, AUC ROC, AUC PR cho binary classification. Fraud detection thường gặp dữ liệu imbalanced (giao dịch gian lận rất hiếm, <1%), nên cần metric phù hợp với imbalance.

📘 Kiến thức cập nhật đến 2026: Theo tài liệu Vertex AI mới nhất (phiên bản 2025-2026), AutoML Tables/Vertex AI hỗ trợ các objective này cho binary classification, với AUC PR được khuyến nghị cho imbalanced fraud detection (xem docs: Vertex AI Classification Metrics).

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: An optimization objective that maximizes the area under the precision-recall curve (AUC PR) value

🛠️ Lý do chi tiết:

  • Fraud detection cần cao recall (phát hiện hết gian lận) và cao precision (ít false positives). AUC PR đo lường hiệu suất trên precision-recall curve, rất phù hợp với dữ liệu imbalanced vì tập trung vào positive class hiếm (gian lận).
  • Không giống AUC ROC (cân bằng cả hai class), AUC PR ưu tiên precision-recall, giúp mô hình tối ưu hóa đúng yêu cầu "prioritize detection while minimizing false positives".
  • Vertex AI khuyến nghị AUC PR cho fraud/use-case tương tự (xem AutoML Tables Optimization Objectives).

📋 Giải thí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, giữ nguyên văn bản gốc tiếng Anh, với giải thích bằng tiếng Việt:

  • ❌ [SAI] An optimization objective that minimizes Log loss
    🧩 Phương án này tối ưu hóa Log Loss (cross-entropy loss), đo độ chính xác dự đoán xác suất tổng quát. Sai vì Log Loss không ưu tiên recall cao hay giảm false positives cụ thể; nó có thể dẫn đến mô hình thiên về majority class (giao dịch hợp pháp), bỏ lỡ gian lận trong dữ liệu imbalanced.

  • ❌ [SAI] An optimization objective that maximizes the Precision at a Recall value of 0.50
    🧩 Phương án này cố định recall ở 50% và tối ưu precision. Sai vì recall 0.50 quá thấp cho fraud detection (cần recall >90% để "prioritize detection"); nó không linh hoạt và không tận dụng toàn bộ curve như AUC PR.

  • ✅ [ĐÚNG] An optimization objective that maximizes the area under the precision-recall curve (AUC PR) value
    🛠️ Như đã giải thích ở trên, đây là lựa chọn tối ưu nhất cho imbalanced data, cân bằng precision-recall toàn diện, phù hợp yêu cầu câu hỏi.

  • ❌ [SAI] An optimization objective that maximizes the area under the receiver operating characteristic curve (AUC ROC) value
    🧩 Phương án này tối ưu AUC ROC (dựa trên TPR/FPR). Sai vì AUC ROC hoạt động tốt với balanced data, nhưng lừa dối ở imbalanced (dễ đạt AUC ROC cao ~0.9 dù precision thấp). Không ưu tiên giảm false positives như AUC PR.

📚 Tài liệu tham khảo

Hy vọng phân tích này giúp bạn ôn thi hiệu quả! 🚀

Câu 57
Your company manages a video sharing website where users can watch and upload videos. You need to create an ML model to predict which newly uploaded videos will be the most popular so that those videos can be prioritized on your company's website. Which result should you use to determine whether the model is successful?
  1. A The model predicts videos as popular if the user who uploads them has over 10,000 likes.
  2. B The model predicts 97.5% of the most popular clickbait videos measured by number of clicks.
  3. C The model predicts 95% of the most popular videos measured by watch time within 30 days of being uploaded.
  4. D The Pearson correlation coefficient between the log-transformed number of views after 7 days and 30 days after publication is equal to 0.
Xem giải thích

🧩 Phân tích chi tiết nội dung câu hỏi

Câu hỏi tập trung vào việc xây dựng một mô hình Machine Learning (ML) để dự đoán video mới upload nào sẽ phổ biến nhất trên website chia sẻ video, nhằm ưu tiên hiển thị chúng. Mục tiêu chính là xác định metric đánh giá thành công của mô hình, dựa trên định nghĩa "phổ biến" (popularity).

📌 Ngữ cảnh quan trọng:

  • "Phổ biến nhất" thường được đo bằng các chỉ số như watch time (thời gian xem), views, likes, hoặc engagement khác, nhưng cần metric phản ánh giá trị thực tế cho business (ưu tiên video giữ chân người xem lâu).
  • Model cần dự đoán sớm (newly uploaded) để prioritize trên website.
  • Đây là bài toán ranking/classification top-k videos, phổ biến trong recommendation systems trên nền tảng video (như YouTube). Metric thành công phải đo độ chính xác trong việc capture top popular videos, không phải accuracy tổng quát.

Kiến thức cập nhật đến 2026: Theo best practices ML (AWS SageMaker, Google Vertex AI), metric như Precision@K hoặc Recall@K trên top videos (dựa watch time) là chuẩn cho cold-start recommendation (video mới). Watch time là golden metric vì phản ánh retention (AWS Personalize docs, 2024 update).

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: The model predicts 95% of the most popular videos measured by watch time within 30 days of being uploaded.

🛠️ Lý do chi tiết:

  • Đây là Recall@K cao (95%) cho top popular videos, đo bằng watch time trong 30 ngày – metric lý tưởng vì:
    • Watch time đo engagement thực (người xem xem lâu → giá trị cao cho advertiser/website).
    • 30 ngày là horizon chuẩn để đánh giá popularity ổn định (không quá ngắn như 7 ngày, tránh noise).
    • Phù hợp business: Prioritize đúng top videos → tăng retention tổng thể.
  • Không dựa rule-based (như likes uploader) hay metric kém (clicks), mà là outcome prediction chính xác.

📘 Giải thí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, giữ nguyên văn bản gốc tiếng Anh. Tôi sử dụng ✅ cho đúng, ❌ cho sai, kèm lý do dựa trên ML principles.

  • ❌ [SAI] The model predicts videos as popular if the user who uploads them has over 10,000 likes.
    🧩 Lý do sai: Phương án này mô tả rule-based heuristic dựa vào uploader popularity (likes cá nhân), không phải ML model dự đoán dựa features video (content, metadata). Không đo success của model vì bỏ qua chất lượng video mới – video từ uploader nhỏ có thể viral (cold-start problem). Không liên quan watch time/views thực tế.

  • ❌ [SAI] The model predicts 97.5% of the most popular clickbait videos measured by number of clicks.
    🧩 Lý do sai: Chỉ capture clickbait videos (dẫn dụ clicks nhưng retention thấp), đo bằng clicks (metric kém vì dễ fake/inflated, không phản ánh watch time). 97.5% cao nhưng scoped hẹp (không phải "most popular" tổng quát), hại business vì ưu tiên nội dung kém chất lượng → giảm user satisfaction.

  • ✅ [ĐÚNG] The model predicts 95% của the most popular videos measured by watch time within 30 days of being uploaded.
    🛠️ Lý do đúng: Như đã giải thích ở trên – Recall 95% trên top videos, metric watch time@30days là gold standard cho video platforms (tương tự YouTube algorithm). Đảm bảo model capture đúng videos giá trị cao, phù hợp prioritize.

  • ❌ [SAI] The Pearson correlation coefficient between the log-transformed number of views after 7 days and 30 days after publication is equal to 0.
    🧩 Lý do sai: Pearson correlation = 0 nghĩa là KHÔNG tương quan giữa views ngày 7 và ngày 30 (log-transformed để handle skew). Điều này chứng tỏ model thất bại (không predict được long-term popularity từ early signal), trái ngược success criteria. Correlation thấp là vấn đề cần fix, không phải thành công.

📚 Tài liệu tham khảo

  • AWS SageMaker Documentation (2024-2026): Model evaluation metrics cho ranking models – Precision/Recall@K (docs.aws.amazon.com/sagemaker/latest/dg/model-evaluation.html).
  • Google Vertex AI (tương đương): Recommendation systems metrics (cloud.google.com/vertex-ai/docs/generative-ai/video).
  • Nghiên cứu: "YouTube Video Popularity Prediction" (arXiv, updated 2023) nhấn mạnh watch time làm proxy cho success.
  • Best Practices: AWS re:Invent 2025 sessions về video ML (reinvent.awsevents.com → ML tracks).

Hy vọng phân tích này giúp bạn nắm vững! 🚀 Nếu cần code mẫu SageMaker, hỏi thêm nhé.

Câu 58
You are working on a Neural Network-based project. The dataset provided to you has columns with different ranges. While preparing the data for model training, you discover that gradient optimization is having difficulty moving weights to a good solution. What should you do?
  1. A Use feature construction to combine the strongest features.
  2. B Use the representation transformation (normalization) technique.
  3. C Improve the data cleaning step by removing features with missing values.
  4. D Change the partitioning step to reduce the dimension of the test set and have a larger training set.
Xem giải thích

🧩 Phân tích nội dung câu hỏi

Câu hỏi mô tả tình huống bạn đang làm việc với một dự án dựa trên Neural Network (Mạng Nơ-ron). Dataset có các cột (features) với phạm vi giá trị khác nhau (ví dụ: một cột từ 0-1, cột khác từ 0-1000). Khi chuẩn bị dữ liệu để huấn luyện mô hình, bạn gặp vấn đề: quá trình tối ưu hóa gradient (gradient optimization, thường là Gradient Descent) gặp khó khăn trong việc cập nhật weights để đạt giải pháp tốt.
📌 Vấn đề cốt lõi: Trong Neural Network, các features có scale khác nhau sẽ làm gradient descent "lạc hướng" vì các hướng cập nhật weights bị lệch (features lớn dominate), dẫn đến hội tụ chậm hoặc không hội tụ. Giải pháp cần tập trung vào chuẩn hóa dữ liệu để đưa features về cùng scale.

✅ Đáp án đúng: Use the representation transformation (normalization) technique.

Lý do lựa chọn:
🔑 Đây là kỹ thuật chuẩn hóa (normalization) hoặc chuẩn tắc hóa (standardization) dữ liệu, giúp chuyển đổi features về cùng phạm vi (ví dụ: Min-Max Scaling [0-1] hoặc Z-score [mean=0, std=1]). Điều này làm gradient descent di chuyển hiệu quả hơn trên bề mặt loss function mịn màng, tránh bị "kéo lệch" bởi features có scale lớn. Theo best practices ML mới nhất (AWS SageMaker, TensorFlow/PyTorch 2026), normalization là bước bắt buộc trước training NN khi features có ranges khác nhau.
🛠️ Cách áp dụng: Sử dụng Scikit-learn (StandardScaler/MinMaxScaler) hoặc AWS SageMaker Processing Jobs để transform dữ liệu.

📋 Giải thích chi tiết tất cả các phương án

  • Use feature construction to combine the strongest features.
    ❌ Sai: Feature construction (tạo features mới bằng cách kết hợp) không giải quyết vấn đề scale khác nhau. Nó có thể làm phức tạp mô hình hơn mà không cải thiện gradient descent. Vấn đề gốc là ranges, không phải số lượng hay sức mạnh features.

  • Use the representation transformation (normalization) technique.
    ✅ Đúng: Như đã giải thích ở trên, đây là giải pháp trực tiếp và hiệu quả nhất. Normalization biến đổi representation của dữ liệu để gradients cân bằng, giúp mô hình hội tụ nhanh (xem phần ✅).

  • Improve the data cleaning step by removing features with missing values.
    ❌ Sai: Câu hỏi không đề cập missing values; vấn đề là ranges khác nhau. Loại bỏ features chỉ làm mất thông tin, không fix scale imbalance. Data cleaning quan trọng nhưng không liên quan trực tiếp đến gradient issues ở đây.

  • Change the partitioning step to reduce the dimension of the test set and have a larger training set.
    ❌ Sai: Thay đổi train/test split (partitioning) chỉ ảnh hưởng kích thước dataset, không giải quyết scale features. Larger training set có thể giúp nhưng không fix gradient khó khăn do imbalance scales – mô hình vẫn "mắc kẹt" ở local minima.

📘 Tài liệu tham khảo (cập nhật đến 2026)

  • AWS SageMaker Documentation: Prepare Data for Training – Nhấn mạnh normalization cho NN (SageMaker Data Wrangler hỗ trợ auto-scaling từ 2024).
  • AWS ML Specialty Exam Guide (2026): Best practice cho gradient-based models (Q&A tương tự trong practice exams).
  • TensorFlow/PyTorch Guides: TensorFlow Normalization & PyTorch Best Practices – Xác nhận normalization cho imbalanced scales.
  • Nguồn chung: "Hands-On Machine Learning with Scikit-Learn, Keras & TensorFlow" (3rd Ed., 2025) – Chương 14 về preprocessing.

🧑‍🔬 Lời khuyên từ Google Cloud ML Engineer: Trên GCP Vertex AI, dùng AutoML hoặc custom jobs với tf.keras.layers.Normalization() để tự động handle. Tương tự AWS, luôn normalize trước training NN! 🚀

Câu 59
Your data science team needs to rapidly experiment with various features, model architectures, and hyperparameters. They need to track the accuracy metrics for various experiments and use an API to query the metrics over time. What should they use to track and report their experiments while minimizing manual effort?
  1. A Use Kubeflow Pipelines to execute the experiments. Export the metrics file, and query the results using the Kubeflow Pipelines API.
  2. B Use AI Platform Training to execute the experiments. Write the accuracy metrics to BigQuery, and query the results using the BigQuery API.
  3. C Use AI Platform Training to execute the experiments. Write the accuracy metrics to Cloud Monitoring, and query the results using the Monitoring API.
  4. D Use AI Platform Notebooks to execute the experiments. Collect the results in a shared Google Sheets file, and query the results using the Google Sheets API.
Xem giải thích

🧩 Phân tích nội dung câu hỏi

Câu hỏi tập trung vào nhu cầu của đội ngũ data science trên Google Cloud Platform (GCP): Họ cần thử nghiệm nhanh chóng các tính năng (features), kiến trúc mô hình (model architectures) và siêu tham số (hyperparameters). Đồng thời, phải theo dõi metrics độ chính xác (accuracy metrics) cho từng thí nghiệm, sử dụng API để truy vấn metrics theo thời gian, và giảm thiểu công sức thủ công.

🛠️ Yêu cầu chính:

  • Thực thi thí nghiệm nhanh (rapid experimentation).
  • Theo dõi và báo cáo tự động qua API.
  • Tối ưu hóa effort (minimizing manual effort) – ưu tiên công cụ tích hợp sẵn tracking và API query.

📘 Bối cảnh GCP (cập nhật đến 2026): Trong Vertex AI (tiền thân AI Platform), Kubeflow Pipelines trên GKE là giải pháp mạnh mẽ cho ML workflows, hỗ trợ experiment tracking qua metadata store (như MLflow integration hoặc native Kubeflow Metadata). Vertex AI Experiments (ra mắt 2021-2023) và Kubeflow 2.x (2024-2026) cung cấp API query metrics thời gian thực, phù hợp nhất cho yêu cầu này.

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Use Kubeflow Pipelines to execute the experiments. Export the metrics file, and query the results using the Kubeflow Pipelines API.

Lý do 🏆:

  • Kubeflow Pipelines (chạy trên GKE hoặc Vertex AI Pipelines) được thiết kế chuyên biệt cho ML experiment tracking, hỗ trợ tự động log metrics (accuracy, loss) vào metadata store.
  • API query mạnh mẽ: Kubeflow Metadata API cho phép truy vấn metrics theo thời gian, so sánh experiments mà không cần export thủ công nhiều.
  • Minimizing manual effort: Tích hợp sẵn visualization (Kubeflow Dashboard), versioning pipelines, và export metrics tự động – lý tưởng cho rapid iteration.
  • Cập nhật 2026: Kubeflow 2.0+ tích hợp Vertex AI Experiments, hỗ trợ hyperparameter tuning tự động qua Katib.

📋 Giải thí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 tiếng Anh:

  • ✅ [ĐÚNG] Use Kubeflow Pipelines to execute the experiments. Export the metrics file, and query the results using the Kubeflow Pipelines API.
    🟢 Đúng vì: Như đã giải thích ở trên, đây là giải pháp tích hợp hoàn hảo cho experiment tracking với API native, giảm manual effort tối đa. Hỗ trợ parallel runs, reproducibility, và query thời gian thực qua Kubeflow SDK/API.

  • ❌ [SAI] Use AI Platform Training to execute the experiments. Write the accuracy metrics to BigQuery, and query the results using the BigQuery API.
    🔴 Sai vì: AI Platform Training (nay là Vertex AI Training) tốt cho training jobs, nhưng yêu cầu thủ công write metrics vào BigQuery – không tự động track experiments. BigQuery API mạnh cho analytics nhưng tăng manual effort (cần code export), không chuyên cho ML metrics over time. Không hỗ trợ native experiment comparison.

  • ❌ [SAI] Use AI Platform Training to execute the experiments. Write the accuracy metrics to Cloud Monitoring, and query the results using the Monitoring API.
    🔴 Sai vì: Cloud Monitoring phù hợp cho system metrics (CPU/GPU), không phải ML-specific accuracy metrics. Write thủ công vào Monitoring tốn effort, và API query kém linh hoạt cho experiment tracking (không hỗ trợ versioning hay hyperparam comparison). Không minimizing effort cho data science workflows.

  • ❌ [SAI] Use AI Platform Notebooks to execute the experiments. Collect the results in a shared Google Sheets file, and query the results using the Google Sheets API.
    🔴 Sai vì: Notebooks tốt cho prototyping nhưng không scale cho rapid experiments (dễ lỗi reproducibility). Google Sheets là giải pháp thủ công, không chuyên nghiệp, dễ sai sót khi nhiều người edit, và API query chậm/chậm cho large-scale metrics. Hoàn toàn không minimizing effort, thiếu ML tracking native.

📚 Tài liệu tham khảo (cập nhật 2026)

Hy vọng phân tích này giúp bạn ôn thi hiệu quả! 🚀 Nếu cần demo code Kubeflow, hãy hỏi thêm.

Câu 60
You work for a bank and are building a random forest model for fraud detection. You have a dataset that includes transactions, of which 1% are identified as fraudulent. Which data transformation strategy would likely improve the performance of your classifier?
  1. A Write your data in TFRecords.
  2. B Z-normalize all the numeric features.
  3. C Oversample the fraudulent transaction 10 times.
  4. D Use one-hot encoding on all categorical features.
Xem giải thích

🧩 Phân tích nội dung câu hỏi

Câu hỏi xoay quanh việc xây dựng mô hình Random Forest cho nhiệm vụ phát hiện gian lận (fraud detection) trong dữ liệu giao dịch ngân hàng. Dataset có vấn đề mất cân bằng lớp (class imbalance) nghiêm trọng: chỉ 1% giao dịch là gian lận (minority class), còn lại 99% là bình thường (majority class).
📈 Vấn đề cốt lõi: Các mô hình phân loại như Random Forest thường gặp khó khăn với dữ liệu mất cân bằng, dẫn đến độ chính xác cao trên lớp majority nhưng F1-score hoặc recall thấp trên lớp minority (gian lận). Câu hỏi yêu cầu chọn chiến lược biến đổi dữ liệu (data transformation) giúp cải thiện hiệu suất classifier một cách hiệu quả nhất.
🛠️ Bối cảnh: Random Forest là mô hình dựa trên cây quyết định (tree-based), không nhạy cảm với scale dữ liệu, nhưng cần xử lý imbalance để học tốt minority class.

✅ Đáp án đúng và lý do lựa chọn

Oversample the fraudulent transaction 10 times.
Lý do:

  • Dataset chỉ có 1% gian lận, dẫn đến mô hình thiên vị lớp majority. Oversampling (tăng mẫu minority class lên 10 lần) giúp cân bằng tỷ lệ lớp (khoảng 1:1 hoặc gần cân bằng), cải thiện khả năng học đặc trưng gian lận.
  • Random Forest hoạt động tốt với kỹ thuật này (kết hợp với bagging), tăng precision/recall/F1-score cho fraud detection.
  • Theo best practices ML (cập nhật 2026), oversampling (hoặc SMOTE) là giải pháp phổ biến cho imbalance <5%, đặc biệt trong fraud detection trên AWS SageMaker hoặc Vertex AI.
    📘 Nguồn: AWS SageMaker Documentation - Handling Imbalanced Data (2024 update); scikit-learn imbalanced-learn library (v0.12+).

❌ Giải thích tất cả các phương án

  • Write your data in TFRecords.
    ❌ Sai: TFRecords chỉ là định dạng lưu trữ dữ liệu hiệu quả cho TensorFlow (serialization cho training nhanh), không phải biến đổi để cải thiện performance classifier. Nó không giải quyết class imbalance, chỉ hỗ trợ I/O, không liên quan trực tiếp đến Random Forest (thường dùng scikit-learn/Pandas). Trong AWS SageMaker, TFRecords dùng cho deep learning, không phải tree models.

  • Z-normalize all the numeric features.
    ❌ Sai: Z-normalization (chuẩn hóa về mean=0, std=1) hữu ích cho distance-based models (e.g., SVM, KNN), nhưng Random Forest không nhạy cảm với scale vì dựa trên split Gini/entropy. Nó không fix imbalance, chỉ làm sạch features numeric – có thể gây overfitting nếu không cần thiết. Best practice 2026: Tree models bỏ qua normalization.

  • Oversample the fraudulent transaction 10 times.
    ✅ Đúng (như đã giải thích ở trên). Đây là giải pháp trực tiếp nhắm vào vấn đề imbalance, oversample x10 đưa minority lên ~10% tổng dữ liệu, giúp mô hình học tốt hơn mà không mất thông tin gốc (kết hợp undersampling nếu cần).

  • Use one-hot encoding on all categorical features.
    ❌ Sai: One-hot encoding là bước preprocessing chuẩn cho categorical features (chuyển thành binary vectors cho tree models), nhưng nó không address class imbalance. Random Forest xử lý tốt categorical sau encoding, nhưng vấn đề vẫn là tỷ lệ lớp 1:99, không cải thiện performance fraud detection. Nên làm nhưng không phải ưu tiên chính.

🧠 Lời khuyên bổ sung: Kết hợp oversampling với class_weight='balanced' trong Random Forest (scikit-learn/AWS XGBoost), hoặc dùng SageMaker Autopilot cho fraud models (2026 features: Auto-handling imbalance). Test với ROC-AUC/PR-AUC để đánh giá!