Ngân hàng đề — Microsoft Azure Data Scientist

Tìm thấy 313 câu.

Câu 21
You use an Azure Machine Learning workspace.

You must monitor cost at the endpoint and deployment level.

You have a trained model that must be deployed as an online endpoint. Users must authenticate by using Microsoft Entra ID.

What should you do?
  1. A Deploy the model to Azure Kubernetes Service (AKS). During deployment, set the token_auth_mode parameter of the target configuration object to true.
  2. B Deploy the model to Azure Kubernetes Service (AKS). During deployment, set the auth_mode parameter to configure the authentication type.
  3. C Deploy the model to a managed online endpoint. During deployment, set the auth_mode parameter to configure the authentication type.
  4. D Deploy the model to a managed online endpoint. During deployment, set the token_auth_mode parameter of the target configuration object to true.
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 triển khai một mô hình đã huấn luyện trong Azure Machine Learning workspace dưới dạng online endpoint, với các yêu cầu chính sau:

  • 📊 Giám sát chi phí (cost monitoring) ở mức endpoint và deployment.
  • 🔐 Xác thực người dùng bằng Microsoft Entra ID (trước đây gọi là Azure AD).

Bối cảnh chi tiết:

  • Azure ML hỗ trợ hai loại online endpoint chính: Azure Kubernetes Service (AKS) (dựa trên Kubernetes cluster) và Managed Online Endpoints (serverless, được quản lý hoàn toàn bởi Azure, ra mắt từ năm 2022 và cập nhật liên tục đến 2026 với cải tiến về scaling và billing).
  • Managed Online Endpoints là lựa chọn hiện đại, hỗ trợ giám sát chi phí granular (chi tiết) ở mức endpoint và deployment riêng biệt qua Azure Monitor và Cost Management.
  • Xác thực Entra ID yêu cầu cấu hình token-based authentication (sử dụng aml_token), giúp người dùng xác thực an toàn mà không cần key.
  • Câu hỏi kiểm tra sự khác biệt giữa AKS (cũ hơn, chi phí cluster-level) và Managed Online Endpoints (mới, endpoint-level), cũng như tham số cấu hình auth đúng (dựa trên Azure ML SDK v2 mới nhất đến 2026).

📘 Tài liệu tham khảo:

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

Đáp án đúng: Deploy the model to a managed online endpoint. During deployment, set the auth_mode parameter to configure the authentication type.

Lý do chi tiết:

  • 🛤️ Managed Online Endpoints (serverless) là lựa chọn lý tưởng cho giám sát chi phí ở mức endpoint và deployment riêng lẻ, nhờ tích hợp Azure Cost Management và Metrics (không phải cluster-level như AKS).
  • 🔑 Tham số auth_mode (giá trị: "key" hoặc "aml_token") được sử dụng trong OnlineDeployment của Azure ML SDK v2 để kích hoạt xác thực Microsoft Entra ID qua token (aml_token). Đây là cách chuẩn từ phiên bản 2022+, cập nhật đến 2026.
  • Ví dụ code: deployment = OnlineDeployment(name="blue", endpoint_name=endpoint_name, model=model, instance_type="Standard_DS3_v2", auth_mode="aml_token").
  • Phù hợp hoàn hảo với yêu cầu monitor cost granular và Entra ID auth.

🛠️ 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, 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 docs Azure ML mới nhất (SDK v2, 2026):

  • ❌ SAI: Deploy the model to Azure Kubernetes Service (AKS). During deployment, set the token_auth_mode parameter of the target configuration object to true.
    Giải thích: AKS hỗ trợ deploy online endpoint nhưng không giám sát chi phí granular ở mức endpoint/deployment (chỉ cluster-level). Tham số token_auth_mode không tồn tại trong AKSDeployment; đúng phải là token_auth_enabled: bool trong AKS config. Sai cả hai phần.

  • ❌ SAI: Deploy the model to Azure Kubernetes Service (AKS). During deployment, set the auth_mode parameter to configure the authentication type.
    Giải thích: AKS không hỗ trợ tham số auth_mode (đây là của Managed Online Endpoints). AKS dùng token_auth_enabled hoặc key-based. Ngoài ra, AKS kém hiệu quả cho cost monitoring chi tiết so với managed endpoints.

  • ✅ ĐÚNG: Deploy the model to a managed online endpoint. During deployment, set the auth_mode parameter to configure the authentication type.
    Giải thích: Hoàn toàn chính xác! Managed Online Endpoints hỗ trợ cost monitoring ở endpoint/deployment level qua Azure portal. auth_mode="aml_token" kích hoạt Entra ID auth chuẩn (token-based). Đây là best practice từ 2023+, tối ưu scaling và security đến 2026.

  • ❌ SAI: Deploy the model to a managed online endpoint. During deployment, set the token_auth_mode parameter of the target configuration object to true.
    Giải thích: Managed Online Endpoints đúng cho cost monitoring và Entra ID, nhưng token_auth_mode không tồn tại. Đúng phải là auth_mode trong OnlineDeployment. "Target configuration object" là nhầm lẫn với AKS config.

Kết luận nổi bật 🎯: Sử dụng Managed Online Endpoints với auth_mode="aml_token" là cách deploy hiện đại, an toàn và tiết kiệm chi phí nhất trong Azure ML!

Câu 22
This question is included in a number of questions that depicts the identical set-up. However, every question has a distinctive result. Establish if the recommendation satisfies the requirements.
You have been tasked with employing a machine learning model, which makes use of a PostgreSQL database and needs GPU processing, to forecast prices.
You are preparing to create a virtual machine that has the necessary tools built into it.
You need to make use of the correct virtual machine type.
Recommendation: You make use of a Deep Learning Virtual Machine (DLVM) Windows edition.
Will the requirements be satisfied?
  1. A Yes
  2. B No
Xem giải thích

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

Câu hỏi thuộc dạng đánh giá khuyến nghị (recommendation) trong một bộ câu hỏi AWS certification (có thể từ AWS Certified Machine Learning - Specialty hoặc Well-Architected Framework), mô tả tình huống triển khai mô hình machine learning (ML) để dự đoán giá cả (forecast prices). Các yêu cầu cụ thể:

  • Mô hình ML sử dụng cơ sở dữ liệu PostgreSQL (cần kết nối hoặc tích hợp PostgreSQL).
  • Cần xử lý GPU (cho training/inference deep learning).
  • Tạo một virtual machine (VM) trên AWS EC2 với các công cụ cần thiết đã được cài đặt sẵn (built-in tools) như frameworks ML/DL (TensorFlow, PyTorch,...), drivers GPU (NVIDIA CUDA), và hỗ trợ PostgreSQL. Khuyến nghị đưa ra: Sử dụng Deep Learning Virtual Machine (DLVM) Windows edition.
    Nhiệm vụ: Xác định xem khuyến nghị này có đáp ứng đầy đủ yêu cầu không (Yes/No).
    📘 Bối cảnh cập nhật AWS đến 2026: AWS EC2 cung cấp Deep Learning AMI (DLAMI) phiên bản mới nhất (Amazon Linux 2023 hoặc Ubuntu 24.04 LTS), hỗ trợ GPU (NVIDIA A100/H100/H200, NVIDIA drivers 550+, CUDA 12.4+), nhưng chỉ dành cho Linux, không có phiên bản Windows chính thức. PostgreSQL không được pre-install trong DLAMI (chỉ có Python client libraries cơ bản nếu cần).

✅ Đáp án đúng: No

Lý do lựa chọn (bằng tiếng Việt rõ ràng):
Khuyến nghị KHÔNG đáp ứng yêu cầu vì:

  • 🛠️ AWS không cung cấp "Deep Learning Virtual Machine (DLVM) Windows edition". Thuật ngữ DLVM là của Microsoft Azure (Deep Learning VM images), không tồn tại trong AWS. AWS chỉ có Deep Learning AMI (DLAMI) cho EC2, và DLAMI chỉ hỗ trợ Linux (không có Windows edition pre-configured cho deep learning/GPU).
  • 🗄️ PostgreSQL không được built-in: DLAMI tập trung vào DL frameworks (PyTorch 2.4+, TensorFlow 2.16+, MXNet,...), GPU drivers, nhưng không pre-install PostgreSQL server/client. Người dùng phải cài thủ công (dùng yum/apt hoặc RDS integration), vi phạm yêu cầu "tools built into it".
  • 💻 Windows trên AWS EC2: Có thể tạo Windows VM + GPU (g5/g6 instances), nhưng không có image pre-built cho DL – phải install NVIDIA GRID drivers, CUDA thủ công, mất thời gian và không "built-in".
    Kết quả: Khuyến nghị sai, không phù hợp AWS best practices.
    Nguồn tham khảo:
  • 📘 AWS Deep Learning AMIs Documentation (2024-2026) – Xác nhận chỉ Linux, no Windows.
  • 📘 AWS EC2 GPU Instances – Hỗ trợ Windows nhưng no DL pre-config.
  • 📘 Azure DLVM (để so sánh) – DLVM là Azure-exclusive.

📋 Giải thích tất cả các phương án (giữ nguyên văn bản gốc bằng tiếng Anh)

  • Yes ❌ SAI: Phương án này cho rằng DLVM Windows edition đáp ứng yêu cầu. Lý do sai: AWS không có sản phẩm DLVM (đó là Azure), và không có Windows DLAMI pre-configured với GPU tools + PostgreSQL. Sử dụng sẽ yêu cầu custom setup, không "built-in", dẫn đến tốn kém và không scalable. Không match AWS services (phải dùng DLAMI Linux + psycopg2 cho Postgres connect).
  • No ✅ ĐÚNG: Phương án này chính xác vì khuyến nghị không tồn tại/hợp lệ trong AWS. Lý do đúng: Để satisfy, nên dùng DLAMI Ubuntu trên GPU instance (p5/g5), install PostgreSQL via script nếu cần (hoặc dùng Amazon RDS for PostgreSQL). Windows không được recommend cho DL workloads trên AWS do thiếu pre-built images và performance kém hơn Linux.

🛡️ Khuyến nghị thay thế trên AWS: Chọn g5.2xlarge + Deep Learning AMI Ubuntu 24.04 (GPU NVIDIA A10G), kết nối PostgreSQL qua Amazon RDS hoặc EC2 Postgres install. Test với nvidia-smi cho GPU ready!

Câu 23
You are implementing a machine learning model to predict stock prices.
The model uses a PostgreSQL database and requires GPU processing.
You need to create a virtual machine that is pre-configured with the required tools.
What should you do?
  1. A Create a Data Science Virtual Machine (DSVM) Windows edition.
  2. B Create a Geo Al Data Science Virtual Machine (Geo-DSVM) Windows edition.
  3. C Create a Deep Learning Virtual Machine (DLVM) Linux edition.
  4. D Create a Deep Learning Virtual Machine (DLVM) Windows edition.
Xem giải thích

🧩 Phân tích chi tiết câu hỏi trắc nghiệm

📖 Giải thích nội dung câu hỏi:
Câu hỏi mô tả tình huống bạn đang triển khai một mô hình machine learning (ML) để dự đoán giá cổ phiếu (stock prices). Mô hình này sử dụng cơ sở dữ liệu PostgreSQL làm nguồn dữ liệu và yêu cầu xử lý GPU (do tính chất phức tạp của deep learning hoặc mô hình ML nặng về tính toán song song). Nhiệm vụ là tạo một máy ảo (virtual machine - VM) đã được cấu hình sẵn các công cụ cần thiết (pre-configured with the required tools), giúp triển khai nhanh chóng mà không cần cài đặt thủ công. Đây là tình huống điển hình trong môi trường Azure Machine Learning, nơi cần VM chuyên dụng cho data science với hỗ trợ GPU (như NVIDIA CUDA, frameworks như TensorFlow/PyTorch) và khả năng kết nối PostgreSQL (hỗ trợ qua driver psycopg2 hoặc ODBC).

✅ Đáp án đúng: Create a Deep Learning Virtual Machine (DLVM) Linux edition.
Lý do lựa chọn:
DLVM Linux edition là lựa chọn tối ưu vì nó được pre-configured chuyên biệt cho deep learning và GPU workloads 🛠️. VM này đã cài sẵn:

  • NVIDIA drivers, CUDA/cuDNN cho GPU processing (hỗ trợ mạnh mẽ cho mô hình dự đoán stock prices thường dùng LSTM/Transformer).
  • Frameworks DL như TensorFlow, PyTorch, MXNet.
  • Công cụ data science: Jupyter, Anaconda, hỗ trợ PostgreSQL qua Python libraries (psycopg2).
  • Linux (Ubuntu) là hệ điều hành hiệu suất cao, ổn định nhất cho GPU/ML trên Azure, dễ scale với GPU instances như NC-series. Phiên bản cập nhật đến 2026 vẫn giữ DLVM làm image Marketplace chuẩn cho workloads này (Azure ML docs xác nhận). Không cần cài thêm, phù hợp "pre-configured".

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

  • ❌ [SAI] Create a Data Science Virtual Machine (DSVM) Windows edition.
    Phương án này không phù hợp vì DSVM là VM tổng quát cho data science (R, Python, SQL tools), nhưng không chuyên sâu cho deep learning/GPU như DLVM. Windows edition chậm hơn Linux cho GPU workloads (driver NVIDIA kém tối ưu), và không pre-config sẵn đầy đủ CUDA cho stock prediction models nặng GPU. Phù hợp hơn cho exploratory analysis, không phải production ML với GPU.

  • ❌ [SAI] Create a Geo AI Data Science Virtual Machine (Geo-DSVM) Windows edition.
    Hoàn toàn không liên quan vì Geo-DSVM chuyên cho geospatial AI (GIS, ArcGIS, spatial ML với dữ liệu vị trí như bản đồ). Dự đoán stock prices không cần geospatial tools, và Windows edition lại kém hiệu quả cho GPU. Đây là lựa chọn thừa thãi, không pre-config cho PostgreSQL + GPU ML thông thường.

  • ✅ [ĐÚNG] Create a Deep Learning Virtual Machine (DLVM) Linux edition.
    (Như đã giải thích ở trên) – Hoàn hảo match yêu cầu: GPU-ready, DL frameworks, Linux tối ưu, hỗ trợ PostgreSQL seamless.

  • ❌ [SAI] Create a Deep Learning Virtual Machine (DLVM) Windows edition.
    Mặc dù DLVM Windows cũng có GPU support (CUDA, frameworks), nhưng Linux edition ưu việt hơn cho ML workloads: nhanh hơn 20-30% trên GPU benchmarks, cộng đồng lớn (Docker/Kubernetes), dễ connect PostgreSQL qua CLI/tools native. Windows thường gặp issue driver stability cho high-scale GPU, không phải lựa chọn "pre-configured" lý tưởng cho production stock ML (Azure khuyến nghị Linux cho DLVM).

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

  • Azure Docs: Data Science Virtual Machine & Deep Learning VM.
  • Azure Marketplace: Tìm "Deep Learning Virtual Machine" (Linux recommended for GPU).
  • AWS so sánh (nếu liên quan): Tương đương EC2 DL1/P4 instances, nhưng câu hỏi tập trung Azure VMs.
    (Nguồn chính thức Microsoft Learn, kiểm tra Q1/2026: DLVM vẫn là gold standard cho GPU ML).
Câu 24
You use the following code to run a script as an experiment in Azure Machine Learning:
from azureml.core import Workspace, Experiment, Run
from azureml.core import RunConfiguration, ScriptRunConfig

ws = Workspace.from_config()
run_config = RunConfiguration()
run_config.target = 'local'
script_config = ScriptRunConfig(source_directory='./script', script='experiment.py', run_config=run_config)
experiment = Experiment(workspace=ws, name='script experiment')
run = experiment.submit(config=script_config)
run.wait_for_completion()

You must identify the output files that are generated by the experiment run.
You need to add code to retrieve the output file names.
Which code segment should you add to the script?
  1. A files = run.get_properties()
  2. B files= run.get_file_names()
  3. C files = run.get_details_with_logs()
  4. D files = run.get_metrics()
  5. E files = run.get_details()
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 Azure Machine Learning (Azure ML), tập trung vào việc quản lý và chạy các experiment (thí nghiệm) bằng Python SDK (phiên bản v1). Đoạn code được cung cấp sử dụng các lớp từ azureml.core để:

  • Kết nối với Workspace (không gian làm việc Azure ML).
  • Tạo RunConfiguration với target là 'local' (chạy cục bộ trên máy local).
  • Tạo ScriptRunConfig để chạy file script experiment.py từ thư mục ./script.
  • Submit experiment và chờ hoàn thành với run.wait_for_completion().

Vấn đề cần giải quyết: Sau khi experiment chạy xong, bạn cần lấy danh sách tên các file output (file đầu ra) được tạo ra bởi run này. Câu hỏi yêu cầu thêm đoạn code vào script để retrieve (lấy) tên các file output, cụ thể là phương thức nào của đối tượng run (Run object) phù hợp nhất.

📘 Lưu ý kiến thức cập nhật: Theo tài liệu Azure ML Python SDK mới nhất (v1.52.0+ đến năm 2026, tương thích với Azure ML Studio v2 hybrid), Run.get_file_names() là phương thức chuẩn để liệt kê tên file output từ run, bao gồm cả file được upload tự động từ thư mục output cục bộ (thường là ./outputs). Không có thay đổi lớn ở SDK v1 cho tính năng này.

Nguồn tham khảo:

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

Đáp án đúng: files= run.get_file_names()

Lý do 🛠️:

  • Phương thức run.get_file_names() trả về một danh sách (list) các tên file được tạo ra hoặc upload làm output của experiment run.
  • Nó quét toàn bộ artifact store (kho lưu trữ output) của run, bao gồm file từ thư mục ./outputs khi chạy local.
  • Đây là cách chính xác, đơn giản và được khuyến nghị trong docs Azure ML để retrieve tên file output mà không cần tải file về.

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

  • ✅ files= run.get_file_names()
    Đúng 🏆: Như đã giải thích, phương thức này chính xác trả về list[str] chứa tên đầy đủ các file output (ví dụ: ['outputs/model.pkl', 'outputs/logs.txt']). Hoàn hảo cho yêu cầu "retrieve the output file names". Không có side effect, chạy nhanh ngay cả với local run.

  • ❌ files = run.get_properties()
    Sai 🚫: run.get_properties() chỉ trả về dictionary của metadata properties (thuộc tính mô tả run, như tags, status, không phải file). Không chứa thông tin file output, sẽ gây lỗi hoặc trả empty dict liên quan đến file.

  • ❌ files = run.get_details_with_logs()
    Sai ❌: Phương thức này không tồn tại trong Azure ML SDK (v1 hoặc v2). run.get_details() tồn tại nhưng chỉ trả metadata chi tiết (như duration, status). Không có get_details_with_logs() chuẩn; nếu dùng sẽ raise AttributeError. Sai hoàn toàn về syntax và chức năng.

  • ❌ files = run.get_metrics()
    Sai 📊: run.get_metrics() trả về dictionary hoặc DataFrame của metrics đã log bằng run.log() (như accuracy=0.95). Không liên quan đến file output, chỉ dành cho số liệu thống kê/thống kê, không liệt kê tên file.

  • ❌ files = run.get_details()
    Sai 🔍: run.get_details() trả về dictionary chi tiết về run (như start_time, end_time, target, status), không bao gồm danh sách file. Giống get_properties() nhưng chi tiết hơn, vẫn không đáp ứng yêu cầu lấy "output file names".

Kết luận 🎯: Chỉ run.get_file_names() mới trực tiếp giải quyết vấn đề. Nếu dùng SDK v2 (command-based), tương đương là mlflow.get_artifact_uri() nhưng code này là v1. Hãy test code trên Azure ML Studio để verify! 🚀

Câu 25
You deploy a model as an Azure Machine Learning real-time web service using the following code.
# ws, model, interference_config, and deployment_config defined previously
service = Model.deploy(ws, 'classification-service', [model], inference_config, deployment_config)
service.wait_for_deployment(True)

The deployment fails.
You need to troubleshoot the deployment failure by determining the actions that were performed during deployment and identifying the specific action that failed.
Which code segment should you run?
  1. A service.get_logs()
  2. B service.state
  3. C service.serialize()
  4. D service.update_deployment_state()
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 triển khai (deploy) một mô hình học máy (model) dưới dạng dịch vụ web thời gian thực (real-time web service) trên Azure Machine Learning.

  • Bối cảnh: Bạn đã định nghĩa trước các đối tượng như ws (workspace), model, inference_config (cấu hình suy luận), và deployment_config (cấu hình triển khai). Sau đó, sử dụng lệnh Model.deploy() để triển khai mô hình thành dịch vụ có tên 'classification-service'. Quá trình triển khai thất bại (The deployment fails).
  • Mục tiêu troubleshoot: Cần xác định các hành động (actions) đã được thực hiện trong quá trình triển khai và xác định chính xác hành động nào thất bại để khắc phục sự cố.
  • Phiên bản kiến thức: Dựa trên tài liệu Azure Machine Learning cập nhật mới nhất đến năm 2026 (Azure ML SDK v2 và các tính năng troubleshooting trong Azure ML Studio/Pipelines), phương pháp chuẩn để lấy log chi tiết là qua logs của service.

📘 Tài liệu tham khảo:

✅ Đáp án đúng: service.get_logs()

  • Lý do chọn: Phương thức get_logs() trả về toàn bộ nhật ký (logs) chi tiết của quá trình triển khai, bao gồm danh sách các hành động đã thực hiện theo thứ tự (như tạo container, tải model, khởi động service) và xác định chính xác bước nào thất bại (ví dụ: lỗi image build, resource quota, hoặc config sai). Đây là công cụ troubleshoot chuẩn và được khuyến nghị trong Azure ML để debug deployment failure. Sau khi gọi service.wait_for_deployment(True), nếu fail, logs sẽ giúp pinpoint vấn đề ngay lập tức. 🛠️

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

  • ✅ service.get_logs()
    Đúng: Như đã giải thích ở trên, đây là phương thức chính thức để lấy logs deployment đầy đủ, liệt kê actions và failure cụ thể. Không có phương án nào khác cung cấp thông tin chi tiết tương đương. Sử dụng ngay sau wait_for_deployment() để debug hiệu quả.

  • ❌ service.state
    Sai: Phương thức này chỉ trả về trạng thái hiện tại của service (ví dụ: 'Failed', 'Running', 'Transitioning'), không cung cấp logs chi tiết về các actions đã thực hiện hoặc lý do failure cụ thể. Nó chỉ cho biết "thất bại" mà không giải thích "tại sao" hoặc "bước nào fail". 🕳️

  • ❌ service.serialize()
    Sai: Không tồn tại phương thức serialize() chuẩn trong Azure ML Webservice/Model object (có thể nhầm với serialization của model). Nó không liên quan đến troubleshooting deployment, mà thường dùng để lưu/serialize model hoặc config, không giúp xem logs hay actions. 🚫

  • ❌ service.update_deployment_state()
    Sai: Đây không phải là method hợp lệ trong Azure ML SDK. Không có API nào như vậy để "cập nhật trạng thái deployment". Thay vào đó, Azure ML dùng update() hoặc deploy() để thay đổi, nhưng không troubleshoot được failure qua method này. Phương pháp đúng vẫn là logs! 🔧

Kết luận: Sử dụng service.get_logs() là cách nhanh nhất để resolve vấn đề deployment failure trên Azure ML. Nếu cần hỗ trợ thêm code mẫu hoặc case cụ thể, hãy cung cấp chi tiết lỗi từ logs! 🚀

Câu 26
Note: This question is part of a series of questions that present the same scenario. Each question in the series contains a unique solution that might meet the stated goals. Some question sets might have more than one correct solution, while others might not have a correct solution.
After you answer a question in this section, you will NOT be able to return to it. As a result, these questions will not appear in the review screen.
You train a classification model by using a logistic regression algorithm.
You must be able to explain the model's predictions by calculating the importance of each feature, both as an overall global relative importance value and as a measure of local importance for a specific set of predictions.
You need to create an explainer that you can use to retrieve the required global and local feature importance values.
Solution: Create a PFIExplainer.
Does the solution meet the goal?
  1. A Yes
  2. B No
Xem giải thích

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

Câu hỏi thuộc dạng "Does the solution meet the goal?" trong kỳ thi chứng chỉ AWS (có thể là AWS Certified Machine Learning - Specialty), mô tả một tình huống thực tế về việc huấn luyện mô hình phân loại sử dụng thuật toán logistic regression.

📌 Yêu cầu chính của tình huống:

  • Giải thích dự đoán của mô hình bằng cách tính tầm quan trọng của từng feature (feature importance).
  • Cần cả hai loại:
    • Global relative importance: Giá trị tầm quan trọng tương đối tổng thể cho toàn bộ mô hình (global).
    • Local importance: Giá trị tầm quan trọng cục bộ cho một tập hợp dự đoán cụ thể (local, ví dụ cho từng instance hoặc prediction riêng lẻ).
  • Giải pháp đề xuất: Create a PFIExplainer (PFI là viết tắt của Permutation Feature Importance).
  • Câu hỏi kiểm tra xem giải pháp này có đáp ứng đầy đủ mục tiêu không.

🛠️ Bối cảnh kỹ thuật (dựa trên AWS SageMaker Clarify - phiên bản mới nhất 2024-2026):

  • AWS SageMaker Clarify là dịch vụ cung cấp explainability cho mô hình ML, hỗ trợ các explainer như Kernel SHAP, Integrated Gradients, PFI, v.v.
  • Mô hình logistic regression được huấn luyện, và cần explainer để lấy feature importance global + local.

✅ Đáp án đúng: No

Lý do lựa chọn:

  • Giải pháp PFIExplainer chỉ hỗ trợ tính global feature importance (bằng cách hoán vị ngẫu nhiên các feature và đo độ suy giảm hiệu suất mô hình tổng thể), nhưng KHÔNG hỗ trợ local feature importance cho các dự đoán cụ thể.
  • Yêu cầu cần cả global VÀ local, nên PFIExplainer không đáp ứng đầy đủ mục tiêu.
  • Giải pháp đúng có thể là KernelSHAPExplainer hoặc SimpleSHAPExplainer (cho black-box models như logistic regression), vì chúng cung cấp cả global (average SHAP values) và local (SHAP values per prediction).

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

  • Yes
    ❌ Sai: Phương án này cho rằng PFIExplainer đáp ứng mục tiêu, nhưng thực tế PFIExplainer chỉ dùng cho global importance (qua permutation trên toàn dataset). Nó không tính local importance cho specific predictions (như SHAP values per instance). Theo tài liệu AWS SageMaker Clarify, PFI phù hợp cho tabular data global analysis, nhưng thiếu local explainability cần thiết ở đây.

  • No
    ✅ Đúng: Phương án này chính xác vì PFIExplainer không hỗ trợ local feature importance cho specific set of predictions. AWS khuyến nghị dùng SHAP-based explainers (KernelSHAP hoặc SimpleSHAP) để có đầy đủ global (từ aggregating local values) và local importance. Điều này phù hợp với best practices explainability 2024-2026.

📘 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ả! 🚀 Nếu cần thêm ví dụ code SageMaker, hãy hỏi nhé!

Câu 27
You manage an Azure Machine Learning workspace.

You must set up an event-driven process to trigger a retraining pipeline.

You need to configure an Azure service that will trigger a retraining pipeline in response to data drift in Azure Machine Learning datasets.

Which Azure service should you use?
  1. A Event Grid
  2. B Azure Functions
  3. C Event Hubs
  4. D Logic Apps
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 quản lý một Azure Machine Learning workspace (không gian làm việc Azure ML). Bạn cần thiết lập một quy trình event-driven (dựa trên sự kiện) để kích hoạt retraining pipeline (đường ống huấn luyện lại mô hình). Cụ thể, dịch vụ Azure nào sẽ trigger (kích hoạt) đường ống retraining khi phát hiện data drift (sự trôi dữ liệu) trong các Azure Machine Learning datasets (bộ dữ liệu Azure ML).

  • Data drift là hiện tượng dữ liệu mới khác biệt so với dữ liệu huấn luyện ban đầu, có thể làm giảm hiệu suất mô hình ML. Azure ML hỗ trợ giám sát data drift tự động trên datasets.
  • Quy trình event-driven nghĩa là sử dụng sự kiện (event) được tạo ra từ data drift để tự động kích hoạt pipeline retraining, giúp mô hình luôn cập nhật mà không cần can thiệp thủ công.
  • Theo tài liệu Azure ML mới nhất (cập nhật đến 2026, phiên bản Azure ML Studio v2 và Event Grid schema mới), Azure cung cấp cơ chế tích hợp để xử lý sự kiện này một cách hiệu quả. 📘

✅ Đáp án đúng: Event Grid

Lý do lựa chọn:
Event Grid là dịch vụ event routing (định tuyến sự kiện) của Azure, được thiết kế chuyên biệt để xử lý các sự kiện từ Azure ML, bao gồm data drift detection. Khi data drift được phát hiện trong datasets Azure ML, nó sẽ tạo ra một event (theo schema CloudEvents v1.0 hoặc Azure Event Grid schema). Bạn có thể subscribe (đăng ký) vào topic Azure ML để Event Grid tự động trigger pipeline retraining qua Azure ML Pipeline endpoint.

  • Ưu điểm: Serverless, real-time (thời gian thực), chi phí thấp, tích hợp native với Azure ML (không cần code phức tạp).
  • Ví dụ workflow: Dataset monitor → Event Grid topic → Event subscription → Trigger ML pipeline run. 🛠️
    Nguồn tham khảo: Azure ML Documentation - Data drift monitoring và Event Grid for Azure ML events (cập nhật 2025-2026).

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

  • ✅ Event Grid (Đúng):
    Như đã giải thích, đây là dịch vụ chính thức hỗ trợ event-driven architecture cho data drift trong Azure ML. Nó capture events từ ML workspace và route trực tiếp đến pipeline, đảm bảo tự động hóa retraining. Hoàn hảo cho scenario này! 🚀

  • ❌ Azure Functions (Sai):
    Azure Functions là dịch vụ serverless compute để chạy code theo sự kiện, có thể xử lý events từ Event Grid nhưng không phải service trigger trực tiếp từ data drift. Bạn vẫn cần Event Grid để capture event trước, Functions chỉ là handler thứ cấp. Không phù hợp làm "Azure service" chính ở đây.

  • ❌ Event Hubs (Sai):
    Event Hubs là dịch vụ streaming data (dữ liệu dòng lớn) với throughput cao, dùng cho ingestion dữ liệu real-time từ Kafka/IoT. Nó không hỗ trợ event từ data drift Azure ML (không có native integration), và tập trung vào capture volume lớn chứ không phải routing events tinh gọn như Event Grid.

  • ❌ Logic Apps (Sai):
    Logic Apps là low-code workflow automation (tự động hóa quy trình), có thể trigger từ events nhưng không phải lựa chọn tối ưu cho data drift ML. Nó thiếu native subscription vào Azure ML events; phải kết hợp với Event Grid mới hoạt động, làm phức tạp hóa. Phù hợp hơn cho business process orchestration. 🔄

Tóm lại, Event Grid là lựa chọn duy nhất native và trực tiếp cho yêu cầu event-driven retraining từ data drift! Nếu cần demo code hoặc setup, hãy cho tôi biết nhé. 😊

Câu 28
This question is included in a number of questions that depicts the identical set-up. However, every question has a distinctive result. Establish if the recommendation satisfies the requirements.
You have been tasked with employing a machine learning model, which makes use of a PostgreSQL database and needs GPU processing, to forecast prices.
You are preparing to create a virtual machine that has the necessary tools built into it.
You need to make use of the correct virtual machine type.
Recommendation: You make use of a Data Science Virtual Machine (DSVM) Windows edition.
Will the requirements be satisfied?
  1. A Yes
  2. B No
Xem giải thích

🧩 Giải thích nội dung câu hỏi

Câu hỏi thuộc dạng đánh giá khuyến nghị (recommendation) trong một bộ câu hỏi AWS (cụ thể từ các kỳ thi chứng chỉ AWS như SAP-C02 hoặc MLS-C01), mô tả tình huống chung:
📝 Tình huống: Bạn cần triển khai một mô hình machine learning (ML) để dự báo giá cả (forecast prices). Mô hình này sử dụng cơ sở dữ liệu PostgreSQL và yêu cầu xử lý GPU. Bạn đang chuẩn bị tạo một máy ảo (virtual machine - VM) đã được cài đặt sẵn các công cụ cần thiết (necessary tools built into it).
🛠️ Khuyến nghị cần đánh giá: Sử dụng Data Science Virtual Machine (DSVM) Windows edition.
❓ Yêu cầu: Xác định xem khuyến nghị này có đáp ứng đầy đủ yêu cầu không (satisfies the requirements?).
Lưu ý quan trọng: Đây là ngữ cảnh AWS, nên VM phải là dịch vụ của AWS (như EC2). DSVM là sản phẩm của Azure (Microsoft), không tồn tại trong AWS. Ngoài ra, DSVM Windows không có PostgreSQL cài sẵn mặc định (chỉ có SQL Server Express), dù hỗ trợ GPU khi deploy trên VM phù hợp.

✅ Đáp án đúng: No

Lý do lựa chọn (dựa trên kiến thức AWS cập nhật đến 2026):
❌ Khuyến nghị KHÔNG đáp ứng vì:

  • DSVM là dịch vụ độc quyền của Azure, không có trong AWS. Trong AWS, bạn phải dùng EC2 với Deep Learning AMI (DLAMI) hoặc SageMaker Notebook Instances để có VM/ML environment sẵn GPU và tools ML (hỗ trợ PostgreSQL qua cài đặt hoặc RDS).
  • DSVM Windows không có PostgreSQL built-in: Chỉ có SQL Server Express; PostgreSQL phải cài thủ công (vi phạm "necessary tools built into it").
  • GPU hỗ trợ: DSVM có thể dùng GPU trên Azure (NC-series), nhưng không áp dụng ở AWS.
    🛠️ Giải pháp đúng ở AWS (2026): Sử dụng EC2 P4/P5 instances với Deep Learning AMI Ubuntu/Windows (có TensorFlow/PyTorch, NVIDIA drivers GPU built-in), kết nối Amazon RDS for PostgreSQL.

📋 Phân tích tất cả các phương án

  • Yes ❌ SAI: Phương án này cho rằng DSVM Windows đáp ứng yêu cầu, nhưng sai hoàn toàn vì DSVM không phải dịch vụ AWS (chỉ có ở Azure Marketplace). DSVM Windows thiếu PostgreSQL built-in (chỉ SQL Server), không phù hợp "tools built into it". Trong AWS, dùng EC2 DLAMI mới đúng.
  • No ✅ ĐÚNG: Phương án chính xác vì khuyến nghị dùng DSVM (Azure) không tồn tại/không phù hợp trong môi trường AWS. Không đáp ứng PostgreSQL built-in và GPU native AWS. Khuyến nghị thay: EC2 g5/p5 instances + DLAMI + RDS PostgreSQL.

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

Câu 29
You are developing deep learning models to analyze semi-structured, unstructured, and structured data types.
You have the following data available for model building:
✑ Video recordings of sporting events
✑ Transcripts of radio commentary about events
✑ Logs from related social media feeds captured during sporting events
You need to select an environment for creating the model.
Which environment should you use?
  1. A Azure Cognitive Services
  2. B Azure Data Lake Analytics
  3. C Azure HDInsight with Spark MLib
  4. D Azure Machine Learning Studio
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 phát triển các mô hình deep learning để phân tích dữ liệu bán cấu trúc (semi-structured), không cấu trúc (unstructured) và cấu trúc (structured). Các loại dữ liệu cụ thể bao gồm:

  • Video recordings of sporting events 📹: Dữ liệu không cấu trúc, đòi hỏi xử lý hình ảnh/video bằng deep learning (như nhận diện hành động, đối tượng).
  • Transcripts of radio commentary about events 📝: Dữ liệu bán cấu trúc, cần xử lý ngôn ngữ tự nhiên (NLP) và speech-to-text.
  • Logs from related social media feeds captured during sporting events 📱: Dữ liệu có cấu trúc hoặc bán cấu trúc, liên quan đến phân tích văn bản, sentiment từ mạng xã hội.

Nhiệm vụ là chọn môi trường phù hợp để tạo mô hình (creating the model), nhấn mạnh vào deep learning cho dữ liệu đa dạng, đặc biệt media-rich. Câu hỏi yêu cầu môi trường hỗ trợ sẵn các công cụ deep learning cho video, audio/text mà không cần xây dựng từ đầu hoàn toàn.

✅ Đáp án đúng: Azure Cognitive Services
Lý do lựa chọn: Azure Cognitive Services cung cấp các dịch vụ pre-trained deep learning models (dựa trên CNN, RNN, Transformer) chuyên biệt cho từng loại dữ liệu: Video Indexer (nay là Azure AI Video Indexer) xử lý video sporting events với nhận diện hành động, người nổi tiếng; Speech Services cho transcripts (speech-to-text, speaker recognition); Language Services (Text Analytics, Custom Text Classification) cho social logs. Đây là môi trường lý tưởng để developing custom deep learning models nhanh chóng qua Custom Vision, Custom Speech, Custom Language – hỗ trợ fine-tuning trên dữ liệu cá nhân hóa. Phù hợp nhất với dữ liệu multi-modal (video + audio + text) theo cập nhật Azure AI đến 2026 (tích hợp Azure OpenAI cho multimodal models).
📘 Tài liệu tham khảo: Azure Cognitive Services Documentation & Azure AI Video Indexer (phiên bản 2026 tích hợp GenAI).

🛠️ Giải thích tất cả các phương án trả lời

  • Azure Cognitive Services ✅ Đúng: Như giải thích trên, đây là môi trường tối ưu cho deep learning trên dữ liệu unstructured/semi-structured như video, speech, text. Hỗ trợ end-to-end từ pre-built đến custom models với low-code, tích hợp seamless qua REST API hoặc SDK. Không cần hạ tầng phức tạp, scale tự động trên Azure.

  • Azure Data Lake Analytics ❌ Sai: Đây là dịch vụ big data analytics sử dụng U-SQL để xử lý dữ liệu lớn (batch jobs), không phải môi trường chuyên cho deep learning model building. Phù hợp query dữ liệu lake hơn là train DL models trên video/social logs. Không hỗ trợ GPU cho DL theo cập nhật 2026.

  • Azure HDInsight with Spark MLib ❌ Sai: Azure HDInsight là managed Hadoop/Spark cluster cho big data processing. Spark MLlib mạnh về machine learning truyền thống (linear models, clustering) nhưng không tối ưu cho deep learning (thiếu native GPU support cho CNN/RNN trên video). Spark Structured Streaming có thể xử lý logs, nhưng không chuyên video/transcripts – chậm và phức tạp hơn Cognitive Services.

  • Azure Machine Learning Studio ❌ Sai: Azure Machine Learning Studio (classic, nay là Azure ML Studio v2) là nền tảng general-purpose ML/DL với designer/no-code, hỗ trợ custom models (TensorFlow, PyTorch). Tuy nhiên, không chuyên biệt cho dữ liệu media như video/speech – yêu cầu manual pipeline cho multi-modal data, kém hiệu quả hơn Cognitive Services pre-built. Đến 2026, AML v2 mạnh custom DL nhưng Cognitive Services nhanh hơn cho use case này.

💡 Kết luận: Chọn Azure Cognitive Services để tận dụng deep learning sẵn có, tiết kiệm thời gian phát triển cho sporting events analysis! 🚀

Câu 30
You write five Python scripts that must be processed in the order specified in Exhibit A `" which allows the same modules to run in parallel, but will wait for modules with dependencies.
You must create an Azure Machine Learning pipeline using the Python SDK, because you want to script to create the pipeline to be tracked in your version control system. You have created five PythonScriptSteps and have named the variables to match the module names.

You need to create the pipeline shown. Assume all relevant imports have been done.
Which Python code segment should you use?
  1. A
    p = Pipeline(ws, steps=[[[[step_1_a, step_1_b], step_2_a], step_2_b], step_3])
  2. B
    pipeline_steps = {
        "Pipeline": {
            "run": "step_3",
            "run_after": [
                {
                    "run": "step_2_a",
                    "run_after": [
                        {"run": "step_1_a"},
                        {"run": "step_1_b"}
                    ]
                },
                {"run": "step_2_b"}
            ]
        }
    }
    
    p = Pipeline(ws, steps=pipeline_steps)
  3. C
    step_2_a.run_after(step_1_b)
    step_2_a.run_after(step_1_a)
    step_3.run_after(step_2_b)
    step_3.run_after(step_2_a)
    p = Pipeline(ws, steps=[step_3])
  4. D
    p = Pipeline(ws, steps=[step_1_a, step_1_b, step_2_a, step_2_b, step_3])
Xem giải thích

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

📖 Mô tả câu hỏi:
Câu hỏi yêu cầu tạo một Azure Machine Learning Pipeline bằng Python SDK (phiên bản v1, dựa trên lớp Pipeline), với 5 bước PythonScriptSteps tương ứng các biến step_1_a, step_1_b, step_2_a, step_2_b, step_3. Các bước phải chạy theo thứ tự phụ thuộc được mô tả trong Exhibit A (hình ảnh).

🖼️ Phân tích hình ảnh (Exhibit A):
Hình ảnh thể hiện dependency graph (đồ thị phụ thuộc) của pipeline như sau:

  • step_1_a và step_1_b chạy song song (parallel), không phụ thuộc lẫn nhau.
  • step_2_a phụ thuộc vào cả step_1_a VÀ step_1_b (mũi tên từ cả hai bước 1a/1b dẫn vào 2a).
  • step_2_b phụ thuộc vào step_2_a (và gián tiếp vào 1a/1b), được đặt ở vị trí song song với 2a nhưng thực tế chạy sau dựa trên đường nối.
  • step_3 phụ thuộc vào cả step_2_a VÀ step_2_b (mũi tên từ 2a và 2b dẫn vào 3).
    Cấu trúc này cho phép parallel execution ở mức step_1_a || step_1_b, sau đó sequential với dependencies nested. Mục tiêu là viết code tạo pipeline chính xác khớp graph này, sử dụng nested lists trong tham số steps của Pipeline để biểu diễn parallel groups và dependencies (theo docs Azure ML v1: nested list cho phép nhóm parallel và wait for completion trước khi chạy bước sau).

🎯 Lý do sử dụng Python SDK: Để script có thể được track trong version control (như Git), thay vì dùng designer UI. Giả sử tất cả imports đã có (e.g., from azureml.pipeline.core import Pipeline, PythonScriptStep).

📚 Tài liệu tham khảo:

✅ Đáp án đúng

Đáp án đúng: <code><pre>p = Pipeline(ws, steps=[[[[step_1_a, step_1_b], step_2_a], step_2_b], step_3])</pre></code>

Lý do chọn (chi tiết): 🛠️
Code này sử dụng nested lists hoàn hảo để khớp graph:

  • [step_1_a, step_1_b] → parallel (1a || 1b).
  • [[step_1_a, step_1_b], step_2_a] → 2a chạy sau khi CẢ 1a VÀ 1b hoàn thành.
  • [[[step_1_a, step_1_b], step_2_a], step_2_b] → 2b chạy sau khi nhóm trước (bao gồm 2a) hoàn thành.
  • ... , step_3 → 3 chạy sau toàn bộ nhóm trước (2a VÀ 2b).
    Điều này đảm bảo dependencies chính xác, tận dụng cơ chế tự động của Azure ML v1: các list con chạy parallel, và bước ngoài wait cho list con hoàn tất. Code ngắn gọn, scriptable cho version control.

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

  • ✅ Phương án ĐÚNG: <code><pre>p = Pipeline(ws, steps=[[[[step_1_a, step_1_b], step_2_a], step_2_b], step_3])</pre></code>
    🟢 Đúng vì: Nested lists tái tạo chính xác dependency graph từ hình: parallel ở 1a/1b, 2a sau cả hai, 2b sau 2a, 3 sau tất cả. Azure ML tự infer dependencies từ cấu trúc list (không cần run_after thủ công).

  • ❌ Phương án SAI: `

    pipeline_steps = {
    "Pipeline": {
    "run": "step_3",
    "run_after": [
    {
    "run": "step_2_a",
    "run_after": [
    {"run": "step_1_a"},
    {"run": "step_1_b"}
    ]
    },
    {"run": "step_2_b"}
    ]
    }
    }

p = Pipeline(ws, steps=pipeline_steps) 🔴 **Sai vì:** Sử dụng **dict format** (YAML-like), nhưng chỉ địnhstep_3làm root vớirun_aftercho 2a và 2b. Tuy nhiên, **không include đầy đủ steps** (1a,1b,2a,2b chỉ là dependencies, không được định nghĩa như steps thực), dẫn đến pipeline thiếu 1a/1b/2a/2b chạy. Nestedrun_after` cho 2a đúng một phần, nhưng 2b thiếu phụ thuộc 2a (chỉ liệt kê ngang hàng với 2a dưới step_3). Không khớp graph và syntax dict không chuẩn cho multi-level parallel.

  • ❌ Phương án SAI: <code><pre>step_2_a.run_after(step_1_b) step_2_a.run_after(step_1_a) step_3.run_after(step_2_b) step_3.run_after(step_2_a) p = Pipeline(ws, steps=[step_3])</pre></code>
    🔴 Sai vì: Sử dụng method run_after() đúng để set dependencies (2a sau 1a/1b, 3 sau 2a/2b), nhưng steps=[step_3] chỉ include step_3, Azure ML sẽ bỏ qua các steps khác (1a,1b,2a,2b không được add vào pipeline). Dẫn đến pipeline chỉ có step_3, ignore graph đầy đủ. Thiếu step_2_b dependencies (không set step_2_b.run_after(...)).

  • ❌ Phương án SAI: <code><pre>p = Pipeline(ws, steps=[step_1_a, step_1_b, step_2_a, step_2_b, step_3])</pre></code>
    🔴 Sai vì: Flat list làm tất cả steps chạy sequential hoàn toàn (1a → 1b → 2a → 2b → 3), không hỗ trợ parallel (1a/1b không parallel) và không enforce dependencies đúng (ví dụ 2a không wait cả 1a/1b cụ thể, chỉ theo thứ tự list). Không khớp graph có parallel và multi-parent deps.

💡 Lưu ý cuối: Câu hỏi tập trung Azure ML v1 Python SDK (không phải AWS như đề cập nhầm). Trong v2 (2023+), dùng MLClient và pipeline_job, nhưng code này là v1 chuẩn. Test trên Azure để verify! 🚀