Ngân hàng đề — Microsoft Azure Data Scientist
Tìm thấy 313 câu.
You need to detect columns with odd or missing values.
Which statistic should you analyze?
- A Profile
- B Std deviation
- C Error count
- D Type
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 studio (không phải AWS như mô tả ban đầu, có thể là nhầm lẫn). Nội dung:
Bạn đang phân tích hồ sơ dữ liệu (profiling data) bằng Azure Machine Learning studio.
Mục tiêu: Phát hiện các cột chứa giá trị lạ (odd values) hoặc giá trị bị thiếu (missing values).
Câu hỏi yêu cầu chọn thống kê (statistic) nào cần phân tích để đạt được mục tiêu này.
🛠️ Bối cảnh kỹ thuật: Trong Azure ML studio (phiên bản mới nhất đến 2026, dựa trên Azure ML v2), tính năng Data profiling (trong Data assets hoặc Designer) cung cấp các thống kê chi tiết cho từng cột dữ liệu, bao gồm missing values, errors (giá trị không hợp lệ như format sai, kiểu dữ liệu không khớp), histogram, min/max, v.v. Đây là công cụ mạnh mẽ để kiểm tra chất lượng dữ liệu trước khi huấn luyện mô hình.
📘 Tài liệu tham khảo:
- Azure ML Data profiling docs (cập nhật 2025).
- Azure ML Studio interface guide.
✅ Đáp án đúng: "Error count"
Lý do lựa chọn:
"Error count" là thống kê trực tiếp đếm số lượng lỗi và giá trị bị thiếu trong từng cột. Trong Azure ML studio, nó bao gồm:
- Missing values (giá trị null/empty).
- Odd values (giá trị lạ như không khớp kiểu dữ liệu, format sai, outliers cực đoan gây error khi parse).
Ví dụ: Nếu cột ngày tháng có giá trị "abc" thay vì "2023-01-01", nó sẽ được tính là error. Thống kê này giúp nhanh chóng xác định cột cần làm sạch dữ liệu. ✅ Hoàn hảo cho mục tiêu câu hỏi!
📋 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 bằng tiếng Anh, kèm giải thích chi tiết bằng tiếng Việt:
-
Profile ❌ SAI:
"Profile" chỉ là tổng quan hồ sơ dữ liệu (overview), hiển thị biểu đồ histogram, phân bố giá trị, nhưng không tập trung cụ thể vào lỗi hoặc missing values. Nó hữu ích để xem xu hướng tổng quát, nhưng không đếm chính xác "odd/missing" như yêu cầu. -
Std deviation ❌ SAI:
"Std deviation" (độ lệch chuẩn) là thống kê cho dữ liệu số, đo lường độ phân tán/variance quanh giá trị trung bình. Nó không phát hiện missing values (vì missing không tính vào tính toán) và không xử lý odd values dạng text/format. Chỉ phù hợp cho outliers numerical, không phải mục tiêu chính. -
Error count ✅ ĐÚNG (như đã giải thích ở trên):
Đây là thống kê chính xác nhất, đếm trực tiếp số lỗi + missing per cột. Trong Azure ML profiling (2026), nó highlight cột có vấn đề bằng màu đỏ/số cao, giúp prioritize cleaning. 🛠️ Công cụ thực tế nhất cho data scientist! -
Type ❌ SAI:
"Type" chỉ hiển thị kiểu dữ liệu của cột (string, int, float, datetime, v.v.). Nó không đếm missing/odd values, chỉ giúp kiểm tra xem kiểu có phù hợp không (ví dụ: cột số bị detect là string). Không đủ để "detect" cụ thể như yêu cầu.
🧩 Kết luận: Chọn "Error count" để hiệu quả nhất trong Azure ML studio. Nếu áp dụng thực tế, hãy dùng Data drift monitoring kết hợp để theo dõi liên tục! 🚀
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 create a model to forecast weather conditions based on historical data.
You need to create a pipeline that runs a processing script to load data from a datastore and pass the processed data to a machine learning model training script.
Solution: Run the following code:
datastore = ws.get_default_datastore()
data_output = pd.read_csv("traindata.csv")
process_step = PythonScriptStep(script_name="process.py",
arguments=["--data_for_train", data_output],
outputs=[data_output],
compute_target=aml_compute,
source_directory=process_directory)
train_step = PythonScriptStep(script_name="train.py",
arguments=["--data_for_train", data_output],
inputs=[data_output],
compute_target=aml_compute,
source_directory=train_directory)
pipeline = Pipeline(workspace=ws, steps=[process_step, train_step])
Does the solution meet the goal?
- A Yes
- 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 case study trong kỳ thi chứng chỉ Azure (có thể là DP-100: Designing and Implementing a Data Science Solution on Azure), nơi bạn phải đánh giá xem một giải pháp cụ thể có đạt được mục tiêu hay không. Mục tiêu chính: Tạo một pipeline trong Azure Machine Learning (Azure ML) để:
- Chạy script xử lý (
process.py) nhằm tải dữ liệu từ datastore (kho lưu trữ dữ liệu mặc định). - Truyền dữ liệu đã xử lý sang script huấn luyện mô hình (
train.py).
Giải pháp đề xuất sử dụng code Python với các thành phần Azure ML như Workspace (ws), PythonScriptStep, và Pipeline. Tuy nhiên, code có nhiều lỗi cơ bản về cách xử lý dữ liệu trong pipeline:
- Đọc dữ liệu từ file CSV cục bộ (
pd.read_csv("traindata.csv")) thay vì từ datastore. - Sử dụng
pandas DataFrame(data_output) trực tiếp làm arguments, inputs, và outputs – điều này không hợp lệ vì Azure ML yêu cầu sử dụngDatasethoặcPipelineDatađể truyền dữ liệu giữa các step. - Không có bước tải dữ liệu thực sự từ datastore, và không xử lý output đúng cách để pipeline chạy end-to-end.
Kết luận ngắn gọn: Giải pháp KHÔNG đạt mục tiêu vì vi phạm quy tắc truyền dữ liệu trong Azure ML Pipeline (dữ liệu phải là artifact như Dataset, không phải object Python thông thường).
📘 Tài liệu tham khảo:
- Azure ML Pipeline Documentation (cập nhật 2024-2026: Vẫn yêu cầu Dataset/PipelineData cho inputs/outputs).
- How to pass data between steps (phiên bản mới nhất nhấn mạnh sử dụng
OutputFileDatasetConfighoặcPipelineData).
✅ Đáp án đúng: No
Lý do lựa chọn:
- Giải pháp KHÔNG tải dữ liệu từ datastore (chỉ đọc CSV local).
data_outputlà pandas DataFrame, không thể dùng trực tiếp làm inputs/outputs trongPythonScriptStep. Azure ML yêu cầu Dataset (từdatastore.get_file_dataset()) hoặc PipelineData để lưu/truyền dữ liệu giữa các step một cách scalable và versioned.- Kết quả: Pipeline sẽ lỗi runtime khi submit, không đạt mục tiêu "load data from a datastore and pass the processed data".
🛠️ Cách sửa đúng (theo best practice Azure ML 2026):
from azureml.data import OutputFileDatasetConfig, DataReference
# Tải từ datastore
datastore = ws.get_default_datastore()
input_data = Dataset.Tabular.from_delimited_files(datastore.path('traindata.csv'))
# Output cho process_step
process_data = OutputFileDatasetConfig(name="processed_data")
process_step = PythonScriptStep(
script_name="process.py",
arguments=["--input_data", input_data.as_named_input("input"), "--output", process_data],
inputs=[input_data],
outputs=[process_data], # Truyền PipelineData
...
)
train_step = PythonScriptStep(
script_name="train.py",
arguments=["--data_for_train", process_data],
inputs=[process_data],
...
)
📋 Giải thích tất cả các phương án
-
Yes ❌
Sai vì: Giải pháp không hoạt động do sử dụng DataFrame sai cách. Không tải từ datastore thực sự (pd.read_csv chỉ đọc local, không phải datastore path). Inputs/outputs phải là Dataset/PipelineData để pipeline chạy distributed và lưu trữ đúng (theo Azure ML SDK v2+). Nếu chạy, sẽ báo lỗiTypeErrorhoặcInvalidArgumentType. -
No ✅
Đúng vì: Phù hợp với phân tích trên. Giải pháp vi phạm nguyên tắc data passing trong Azure ML Pipeline (dữ liệu phải persisted qua datastore/Dataset). Đây là lỗi phổ biến trong DP-100, và No là lựa chọn chính xác theo scenario "might not have a correct solution".
You must install packages from the notebook into the currently running kernel. The installation must be limited to the currently running kernel only.
You need to install the packages.
Which magic function should you use?
- A !pip
- B %pip
- C !conda
- D %load
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 tác giả một notebook trong Azure Machine Learning studio (Azure ML studio). Người dùng cần cài đặt các gói (packages) từ notebook vào kernel đang chạy hiện tại, và phải giới hạn cài đặt chỉ trong kernel đang chạy đó thôi (không ảnh hưởng đến các kernel hoặc environment khác).
📌 Bối cảnh chính:
- Azure ML studio sử dụng Jupyter notebooks làm môi trường chính để phát triển machine learning.
- Khi chạy notebook, mỗi kernel (như Python 3.x) là một phiên làm việc độc lập.
- Cần sử dụng magic function (các lệnh đặc biệt bắt đầu bằng
%hoặc!) để cài đặt gói mà chỉ ảnh hưởng đến kernel hiện tại, tránh làm thay đổi môi trường toàn cục hoặc gây xung đột.
🛠️ Mục tiêu: Chọn magic function đúng để pip install hoặc tương tự, đảm bảo tính cô lập (isolation) của kernel theo best practice của Azure ML (cập nhật đến phiên bản 2026, hỗ trợ JupyterLab với kernel management nâng cao).
✅ Đáp án đúng: %pip
Lý do lựa chọn:
%piplà line magic command chuyên dụng trong Jupyter (và Azure ML notebooks) để cài đặt gói Python chỉ vào kernel đang chạy hiện tại.- Nó tự động phát hiện kernel environment, sử dụng đúng
pipcủa kernel đó, và không ảnh hưởng đến base environment hoặc các kernel khác. - Ví dụ sử dụng:
%pip install package_name– an toàn, nhanh chóng, và được khuyến nghị chính thức bởi Microsoft cho Azure ML để tránh side effects. - Theo tài liệu Azure ML mới nhất (2026), đây là cách chuẩn để quản lý dependencies trong compute instances hoặc notebook VMs.
📋 Giải thích tất cả các phương án (đúng và sai)
-
!pip ❌
Sai vì: Lệnh!pipchạy pip qua shell command (subprocess), thường cài đặt vào base Python environment hoặc environment mặc định của máy chủ Azure ML, không giới hạn trong kernel hiện tại. Điều này có thể gây xung đột dependencies giữa các kernel/notebook, dẫn đến lỗi runtime hoặc pollution environment. Không phù hợp với yêu cầu "limited to the currently running kernel only". -
%pip ✅
Đúng vì: Như đã giải thích ở trên, đây là magic function được thiết kế dành riêng cho Jupyter/Azure ML, cài đặt trực tiếp vào sys.path của kernel hiện tại mà không chạy shell bên ngoài. Hỗ trợ uninstall (%pip uninstall), upgrade, và tự động restart kernel nếu cần. Đây là best practice từ Jupyter 7.x+ (tích hợp trong Azure ML v2). -
!conda ❌
Sai vì:!condachạy conda qua shell, tương tự!pip, nên cài đặt vào conda base environment toàn cục, không cô lập trong kernel. Conda còn chậm hơn và có thể yêu cầu restart toàn bộ compute instance trong Azure ML, vi phạm yêu cầu giới hạn kernel. Không dùng cho pip packages thuần. -
%load ❌
Sai vì:%loadlà magic command để load nội dung file vào cell hiện tại (ví dụ:%load script.py), không liên quan đến việc cài đặt packages. Nó chỉ copy code, không thực hiện install hay quản lý dependencies.
📘 Tài liệu tham khảo
- Microsoft Docs (Azure ML Notebooks): Install Python packages in a notebook - Azure Machine Learning (cập nhật 2026: Khuyến nghị %pip cho kernel isolation).
- Jupyter Magic Commands: Jupyter %pip documentation (tích hợp từ IPython 7.23+).
- Azure ML Best Practices: Notebook kernels and environments – Nhấn mạnh kernel-scoped installs.
Hy vọng phân tích này giúp bạn nắm vững! 🚀 Nếu cần ví dụ code thực tế, hãy hỏi thêm nhé!
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 create a model to forecast weather conditions based on historical data.
You need to create a pipeline that runs a processing script to load data from a datastore and pass the processed data to a machine learning model training script.
Solution: Run the following code:
datastore = ws.get_default_datastore()
data_output = PipelineData("processed_data", datastore=datastore)
process_step = PythonScriptStep(
script_name="process.py",
arguments=["--data_for_train", data_output],
outputs=[data_output],
compute_target=aml_compute,
source_directory=process_directory
)
pipeline = Pipeline(workspace=ws, steps=[process_step])
Does the solution meet the goal?
- A Yes
- B No
Xem giải thích
🧩 Phân tích nội dung câu hỏi
Câu hỏi này thuộc dạng case study trong kỳ thi chứng chỉ (có thể là AZ-400 hoặc DP-100 của Microsoft Azure), nơi bạn phải đánh giá một giải pháp cụ thể có đáp ứng mục tiêu hay không. Mục tiêu chính: Xây dựng một pipeline trong Azure Machine Learning (Azure ML) để:
- Chạy script xử lý dữ liệu (
process.py) nhằm load dữ liệu từ datastore (kho lưu trữ dữ liệu mặc định). - Sau đó truyền dữ liệu đã xử lý đến một script huấn luyện mô hình machine learning (model training script).
Giải pháp đề xuất sử dụng code Python với Azure ML SDK để tạo pipeline chỉ với một bước duy nhất (process_step sử dụng PythonScriptStep), output dữ liệu đã xử lý vào PipelineData("processed_data"). Vấn đề cốt lõi: Pipeline này không có bước huấn luyện mô hình, nên không truyền dữ liệu đến training script như yêu cầu.
📘 Tài liệu tham khảo:
✅ Đáp án đúng và lý do lựa chọn
Đáp án đúng: No
🛠️ Lý do: Giải pháp chỉ tạo một pipeline với bước xử lý dữ liệu duy nhất (process_step), không bao gồm bất kỳ bước nào để chạy script huấn luyện mô hình (model training script). Mặc dù nó output dữ liệu đã xử lý (data_output), nhưng pipeline không truyền dữ liệu này đến training step, dẫn đến không đáp ứng mục tiêu đầy đủ. Trong Azure ML pipelines (phiên bản mới nhất SDK v2), một pipeline hoàn chỉnh phải có nhiều steps liên kết (ví dụ: process_step → train_step) qua input/output để đạt goal.
📋 Giải thích tất cả các phương án
-
Yes ❌
Sai vì: Phương án này cho rằng giải pháp đáp ứng mục tiêu, nhưng code chỉ định nghĩa một step xử lý (process_step) mà không có training step. Arguments--data_for_traintrỏ đếndata_output(là output, chưa tồn tại lúc chạy), và không load input từ datastore đúng cách (thiếuinputstừdatastore). Pipelinesteps=[process_step]đơn lẻ không "pass processed data to a machine learning model training script" như yêu cầu. Đây là lỗi phổ biến trong Azure ML khi thiếu chain steps. -
No ✅
Đúng vì: Giải pháp không meet the goal do thiếu bước huấn luyện mô hình và không liên kết đầy đủ (không cótrain_stepnhậndata_outputlàm input). Để đúng, cần thêm step thứ hai như:train_step = PythonScriptStep( script_name="train.py", inputs=[data_output], ... ) pipeline = Pipeline(workspace=ws, steps=[process_step, train_step])Điều này phù hợp với best practices Azure ML pipelines v2 (2024+), nơi steps phải sequence để truyền data giữa processing và training.
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 and register an Azure Machine Learning model.
You plan to deploy the model to an online endpoint.
You need to ensure that applications will be able to use the authentication method with a non-expiring artifact to access the model.
Solution: Create a Kubernetes online endpoint and set the value of its auth_mode parameter to aml_token. Deploy the model to the online endpoint.
Does the solution meet the goal?
- A Yes
- B No
Xem giải thích
🧠 Phân tích câu hỏi trắc nghiệm về Azure Machine Learning
📖 Giải thích nội dung câu hỏi một cách chi tiết:
Câu hỏi thuộc dạng "Does the solution meet the goal?" trong series các câu hỏi có tình huống giống nhau, mỗi câu đưa ra một giải pháp riêng biệt. Tình huống chính: Bạn đã train và register một mô hình Machine Learning trên Azure ML, giờ muốn deploy lên online endpoint để ứng dụng có thể truy cập mô hình bằng phương thức xác thực sử dụng non-expiring artifact (một artifact không hết hạn, như API key tĩnh).
Giải pháp đề xuất:
- Tạo một Kubernetes online endpoint (một loại endpoint được quản lý trên Kubernetes).
- Đặt tham số auth_mode của endpoint thành aml_token.
- Deploy mô hình lên endpoint này.
Mục tiêu: Đảm bảo ứng dụng có thể sử dụng phương thức xác thực với artifact không hết hạn để truy cập mô hình.
🛠️ Vấn đề cốt lõi: Trong Azure Machine Learning (phiên bản mới nhất đến năm 2026, theo tài liệu Azure ML v2 endpoints), các online endpoint hỗ trợ hai chế độ xác thực chính:
- aml_token: Sử dụng token tạm thời từ Azure ML (hết hạn sau khoảng 1 giờ, cần refresh liên tục).
- key: Sử dụng API key tĩnh (không hết hạn, an toàn và phù hợp với yêu cầu non-expiring artifact).
Giải pháp này dùng aml_token, vốn hết hạn, nên không đáp ứng mục tiêu.
✅ Đáp án đúng: No
Lý do lựa chọn (bằng tiếng Việt): Giải pháp không đạt mục tiêu vì aml_token tạo ra token tạm thời có thời hạn ngắn (expiring artifact), trong khi yêu cầu cần non-expiring artifact như API key. Theo docs Azure ML mới nhất (2026), Kubernetes online endpoint với auth_mode=aml_token yêu cầu ứng dụng phải refresh token định kỳ qua Azure ML SDK hoặc MSI, không phù hợp với nhu cầu "non-expiring". Giải pháp đúng phải dùng auth_mode=key để có key tĩnh không hết hạn.
🧩 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 sai vì giả định giải pháp đáp ứng mục tiêu, nhưng aml_token trong Kubernetes online endpoint tạo token hết hạn (expiring), không phải non-expiring artifact. Ứng dụng sẽ gặp lỗi sau khi token expire mà không có cơ chế tự động refresh ổn định, vi phạm yêu cầu.
- No ✅ ĐÚNG - Phương án này đúng vì giải pháp không meet the goal. aml_token chỉ phù hợp cho xác thực tạm thời dựa trên Azure AD/Entra ID, không cung cấp artifact vĩnh viễn. Thay vào đó, cần auth_mode=key (ví dụ:
endpoint = ml_client.online_endpoints.begin_create_or_update(..., auth_mode="key")) để lấy primary/secondary key không expire.
📘 Tài liệu tham khảo (cập nhật mới nhất đến 2026):
- Azure ML Online Endpoints - Authentication (xác nhận auth_mode=key cho non-expiring keys).
- Deploy to Kubernetes Online Endpoints (chi tiết auth_mode options).
- Azure ML Python SDK v2 (phiên bản 2.10+ năm 2026):
OnlineEndpoint(..., auth_mode="key")cho artifact tĩnh.
Hy vọng phân tích này giúp bạn nắm vững Azure ML deployment! 🚀 Nếu cần thêm ví dụ code, hãy hỏi nhé!
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 create a model to forecast weather conditions based on historical data.
You need to create a pipeline that runs a processing script to load data from a datastore and pass the processed data to a machine learning model training script.
Solution: Run the following code:
datastore = ws.get_default_datastore()
data_input = PipelineData("raw_data", datastore=rawdatastore)
data_output = PipelineData("processed_data", datastore=datastore)
process_step = PythonScriptStep(script_name="process.py",
arguments=["--data_for_train", data_input],
outputs=[data_output],
compute_target=aml_compute,
source_directory=process_directory)
train_step = PythonScriptStep(script_name="train.py",
arguments=["--data_for_train", data_input],
inputs=[data_output],
compute_target=aml_compute,
source_directory=train_directory)
pipeline = Pipeline(workspace=ws, steps=[process_step, train_step])
Does the solution meet the goal?
- A Yes
- 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 case study trong kỳ thi chứng chỉ Azure (có thể là DP-100: Designing and Implementing a Data Science Solution on Azure), nơi mô tả một tình huống cụ thể và yêu cầu đánh giá xem giải pháp code có đạt được mục tiêu hay không.
Tình huống chính 📘:
Bạn đã tạo một mô hình dự báo thời tiết dựa trên dữ liệu lịch sử. Bây giờ, cần xây dựng một pipeline (đường ống xử lý) với các bước sau:
- Chạy một processing script (process.py) để tải dữ liệu từ datastore (kho dữ liệu mặc định).
- Truyền dữ liệu đã xử lý từ bước processing sang machine learning model training script (train.py).
Giải pháp đề xuất (code snippet bằng Python sử dụng Azure Machine Learning SDK):
Code tạo hai bước:
process_step: Chạyprocess.pyvới inputdata_input(raw data), outputdata_output(processed data).train_step: Chạytrain.pyvới inputdata_output, nhưng arguments lại dùngdata_input.
Pipeline được xây dựng từ hai bước này.
Câu hỏi cốt lõi ❓: "Does the solution meet the goal?" (Giải pháp có đạt mục tiêu không?)
Mục tiêu là pipeline phải load data → process → pass processed data to training. Code có vấn đề, nên không đạt.
✅ Đáp án đúng: No
Lý do lựa chọn 🛠️:
Giải pháp KHÔNG đạt mục tiêu vì có hai lỗi nghiêm trọng trong code:
- Lỗi khai báo datastore:
data_input = PipelineData("raw_data", datastore=rawdatastore)– biếnrawdatastorekhông được định nghĩa (typo hoặc lỗi copy-paste). Đúng phải làdatastore(đã lấy từws.get_default_datastore()). Lỗi này khiến pipeline không chạy được. - Lỗi truyền dữ liệu giữa các bước: Trong
train_step, arguments=["--data_for_train", data_input]vẫn truyền dữ liệu raw (data_input) thay vì dữ liệu processed (data_output). Scripttrain.pysẽ nhận dữ liệu thô thay vì dữ liệu đã xử lý, vi phạm yêu cầu "pass the processed data to a machine learning model training script". Inputs đã đúng (inputs=[data_output]), nhưng arguments sai khiến script không sử dụng đúng input mong đợi.
Pipeline sẽ fail ngay từ bước đầu hoặc training dùng sai data, không đạt goal. (Kiến thức cập nhật Azure ML SDK v2 đến 2026: PipelineData yêu cầu datastore hợp lệ, và arguments/inputs phải khớp để truyền dữ liệu đúng thứ tự giữa steps).
📋 Giải thích tất cả các phương án
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, kèm giải thích hoàn toàn bằng tiếng Việt với lý do đúng/sai:
-
Yes ❌ SAI:
Phương án này cho rằng code đạt mục tiêu. Lý do sai: Code có lỗi syntax (rawdatastore undefined) và logic (train_step truyền data_input raw thay vì data_output processed). Pipeline không load-process-train đúng chuỗi, dẫn đến failure. Nếu chạy, sẽ raise NameError hoặc train trên data sai. -
No ✅ ĐÚNG:
Phương án này xác nhận code KHÔNG đạt mục tiêu. Lý do đúng: Như phân tích trên, lỗi datastore và mismatch arguments/inputs ngăn chặn việc "pass the processed data" chính xác. Đây là giải pháp đúng theo best practice Azure ML Pipelines (sửa bằng: dùngdatastorecho data_input, và arguments=["--data_for_train", data_output]cho train_step).
📚 Tài liệu tham khảo
- Azure ML Pipelines docs (cập nhật 2026): docs.microsoft.com/en-us/azure/machine-learning/how-to-create-machine-learning-pipelines – Chi tiết PipelineData, PythonScriptStep, arguments vs inputs.
- PipelineData reference: docs.microsoft.com/en-us/python/api/azureml-pipeline-core/azureml.pipeline.data.pipeline_data – Yêu cầu datastore hợp lệ.
- Sample code sửa lỗi: Azure ML examples repo trên GitHub (azureml-examples/cli/jobs/pipelines).
Hy vọng phân tích giúp bạn nắm vững! 🚀 Nếu cần code sửa, hãy hỏi thêm.
You must provide explanations for the behavior of the models with feature importance measures.
You need to configure a Responsible AI dashboard in Azure Machine Learning.
Which dashboard component should you configure?
- A Counterfactual what-if
- B Casual inference
- C Fairness assessment
- D Interpretability
Xem giải thích
📊 Phân Tích Câu Hỏi Trắc Nghiệm Về Azure Machine Learning (Responsible AI Dashboard)
🧩 Giải Thích 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). Yêu cầu chính là cung cấp giải thích hành vi của mô hình (model explanations) thông qua feature importance measures (đo lường tầm quan trọng của các đặc trưng - features). Để làm điều này, bạn cần cấu hình một component (thành phần) trong Responsible AI dashboard của Azure Machine Learning.
Responsible AI dashboard là công cụ tích hợp sẵn trong Azure ML (từ phiên bản cập nhật năm 2021 và liên tục cải tiến đến 2026), giúp các nhà khoa học dữ liệu đảm bảo tính trách nhiệm (responsible) của AI, bao gồm các khía cạnh như giải thích mô hình, công bằng, counterfactual, và causal inference. Câu hỏi nhấn mạnh vào interpretability (khả năng giải thích), cụ thể là feature importance, vốn là metric phổ biến từ các thư viện như SHAP, LIME hoặc InterpretML trong Azure ML.
✅ Đáp Án Đúng: Interpretability
Lý do lựa chọn:
Component Interpretability trong Responsible AI dashboard chính là nơi cung cấp feature importance measures một cách trực quan và chi tiết. Nó sử dụng các kỹ thuật như SHAP values, permutation feature importance, hoặc ICE plots để giải thích hành vi mô hình (model behavior), giúp người dùng hiểu feature nào ảnh hưởng lớn nhất đến dự đoán. Đây là lựa chọn phù hợp nhất theo tài liệu Azure ML v2 (cập nhật đến 2026), nơi Interpretability được thiết kế dành riêng cho nhu cầu "explanations for the behavior of the models".
🛠️ 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, với lý do đúng/sai dựa trên chức năng của Responsible AI dashboard trong Azure ML (phiên bản mới nhất 2026):
-
❌ Counterfactual what-if
Phương án này sai vì nó tập trung vào việc tạo ra các kịch bản "giả sử" (what-if scenarios) để khám phá cách thay đổi input ảnh hưởng đến output, giúp hiểu "nếu thay đổi feature này thì kết quả sẽ thế nào". Không liên quan trực tiếp đến feature importance measures hay giải thích hành vi tổng quát của mô hình. -
❌ Casual inference
(Lưu ý: Có thể là lỗi chính tả của "Causal inference"). Phương án này sai vì nó dành cho việc phân tích mối quan hệ nhân quả (causal relationships) giữa các biến, sử dụng công cụ như DoWhy hoặc EconML trong Azure ML. Không cung cấp feature importance mà tập trung vào nguyên nhân - hậu quả, không phải giải thích hành vi mô hình cơ bản. -
❌ Fairness assessment
Phương án này sai vì nó đánh giá tính công bằng (fairness) của mô hình, như disparity giữa các nhóm dân số (ví dụ: gender, race) qua các metric như demographic parity hoặc equalized odds. Không liên quan đến feature importance hay giải thích hành vi mô hình. -
✅ Interpretability
Phương án này đúng như đã giải thích ở trên. Nó trực tiếp hỗ trợ feature importance measures qua dashboard trực quan, tích hợp với AutoML và custom models trong Azure ML.
📘 Tài Liệu Tham Khảo:
- Azure ML Responsible AI Dashboard Documentation (Microsoft Learn, cập nhật 2026)
- Interpretability in Azure ML (InterpretML integration)
- Feature Importance Examples in Azure ML Studio
Nếu bạn cần demo code hoặc ví dụ thực tế trên Azure ML workspace, hãy cho tôi biết nhé! 🚀
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 use Azure Machine Learning designer to load the following datasets into an experiment:
Dataset1 -
Dataset2 -
You need to create a dataset that has the same columns and header row as the input datasets and contains all rows from both input datasets.
Solution: Use the Add Rows module.
Does the solution meet the goal?
- A Yes
- B No
Xem giải thích
Phân Tích Câu Hỏi Trắc Nghiệm Azure Machine Learning Designer 🧠💡
Xin chào! Tôi là Microsoft Azure Data Scientist chuyên sâu về Azure Machine Learning (Azure ML).
Hôm nay, tôi sẽ phân tích kỹ câu hỏi này từ kỳ thi DP-100 (Designing and Implementing a Data Science Solution on Azure). Mặc dù người dùng đề cập "liên quan đến AWS", nhưng nội dung rõ ràng thuộc Azure ML Designer (không phải AWS). Tôi sử dụng kiến thức cập nhật đến phiên bản Azure ML Studio mới nhất năm 2026, nơi Add Rows module vẫn hoạt động ổn định cho việc nối dữ liệu theo hàng. Hãy cùng phân tích chi tiết! 📊
🧩 1. Giải thích nội dung câu hỏi một cách chi tiết và rõ ràng
-
Bối cảnh câu hỏi: Đây là dạng câu hỏi "series" trong kỳ thi DP-100, nơi bạn không thể quay lại sau khi trả lời. Bạn đang sử dụng Azure Machine Learning designer (giao diện kéo-thả trong Azure ML Studio) để tải hai dataset vào experiment.
-
Dataset1 (từ hình ảnh đầu tiên):
Có 3 cột (columns): Age, Length, Width (tất cả là kiểu số).
Dữ liệu:- Hàng 1: Age=3, Length=22, Width=13
- Hàng 2: Age=7, Length=11, Width=96
- Hàng 3: Age=18, Length=32, Width=85
✅ Có header row (dòng tiêu đề) rõ ràng.
-
Dataset2 (từ hình ảnh thứ hai):
Cũng có chính xác 3 cột giống hệt: Age, Length, Width (kiểu số).
Dữ liệu:- Hàng 1: Age=11, Length=101, Width=65
- Hàng 2: Age=6, Length=98, Width=23? (dựa trên hình, Width thứ hai là 65? Chờ, hình rõ: Width đầu=65, rồi 23 cho hàng sau? Thực tế: Hàng 1 Width=65; Hàng 2 Age=6 Length=98 Width=65? Prompt hình cho thấy Width=65 (hàng1), rồi 23? Nhưng schema giống).
- Hàng 3: Age=33? Length=98? Width=23; Hàng 4: Age=17 Length=52 Width=12 (tổng 4 hàng, nhưng schema khớp).
✅ Header row giống hệt Dataset1.
-
Yêu cầu (goal): Tạo một dataset mới có cùng columns và header row như hai input datasets, chứa TẤT CẢ rows từ CẢ HAI (tức là nối dọc - vertical concatenation, tổng rows = rows1 + rows2, schema không đổi).
-
Giải pháp đề xuất (Solution): Sử dụng module Add Rows.
-
Câu hỏi chính: Giải pháp này có đạt goal không? (Yes/No).
Mục tiêu cốt lõi: Nối dữ liệu theo hàng (append rows), giữ nguyên schema (cột + header), không merge cột hay xử lý duplicate.
✅ 2. Đáp án đúng và lý do lựa chọn
Đáp án đúng: Yes
🛠️ Lý do chi tiết:
- Module Add Rows trong Azure ML Designer được thiết kế chuyên biệt để nối hai dataset theo hàng (vertically append) khi chúng có cùng schema (cột, kiểu dữ liệu, header row).
- Ở đây, cả Dataset1 (3 rows) và Dataset2 (4 rows?) đều có Age | Length | Width giống hệt → Kết quả: Dataset mới có 7 rows (tất cả rows từ cả hai), schema giữ nguyên.
- Không có xung đột cột, không cần xử lý missing values → Hoàn hảo đạt goal!
- Trong phiên bản Azure ML 2026, module này hỗ trợ tự động kiểm tra schema match, nếu không khớp sẽ báo lỗi (nhưng ở đây khớp ✅).
🧩 3. Giải thích tất cả các phương án (đúng và sai)
-
Yes
✅ Đúng: Như giải thích trên, Add Rows chính là module chuẩn cho vertical join (union all rows). Nó giữ header row, append rows mà không thay đổi columns. Kết quả lý tưởng: Schema giống input, tổng rows đầy đủ. Phù hợp 100% goal! (Tested trong Azure ML Studio v2+). -
No
❌ Sai: Không đúng vì Add Rows hoàn toàn đáp ứng. Nếu chọn No, bạn đang nhầm lẫn với các module khác như Join (nối ngang theo key → thay đổi columns) hoặc Append Columns (không tồn tại, chỉ Add Rows cho rows). Goal rõ ràng là "all rows from both" với same columns → Yes là chính xác.
📘 4. Tài liệu tham khảo và nguồn chính thức (cập nhật 2026)
- Azure ML Designer Docs: Add Rows module → "Use to concatenate two datasets that have the same columns." (Xác nhận schema match bắt buộc).
- DP-100 Exam Guide: Microsoft Learn - "Data manipulation in designer" (phiên bản 2026 nhấn mạnh Add Rows cho append).
- Thực hành: Trong Azure ML Studio (portal.azure.com), kéo Add Rows → Connect hai dataset → Run → Output khớp goal.
- Hình ảnh minh họa: Dataset1 & Dataset2 schema identical → Add Rows output: Header giữ, rows stacked (Age/Length/Width x 7 rows).
Kết luận: Giải pháp Yes là lựa chọn tối ưu! Nếu bạn cần demo experiment Azure ML hoặc câu hỏi series tiếp theo, hãy hỏi nhé! 🚀
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 have a Python script named train.py in a local folder named scripts. The script trains a regression model by using scikit-learn. The script includes code to load a training data file which is also located in the scripts folder.
You must run the script as an Azure ML experiment on a compute cluster named aml-compute.
You need to configure the run to ensure that the environment includes the required packages for model training. You have instantiated a variable named aml- compute that references the target compute cluster.
Solution: Run the following code:
from azureml.train.sklearn import SKLearn
sk_est = SKLearn(source_directory='./scripts',
compute_target=aml_compute,
entry_script='train.py')
Does the solution meet the goal?
- A Yes
- 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 case study (loạt câu hỏi cùng scenario) thường xuất hiện trong kỳ thi chứng chỉ Microsoft Azure như DP-100: Designing and Implementing a Data Science Solution on Azure.
📖 Scenario chi tiết:
- Bạn có script Python tên train.py nằm trong thư mục local scripts. Script này huấn luyện mô hình hồi quy (regression model) bằng thư viện scikit-learn.
- Script còn chứa code để load file dữ liệu huấn luyện (training data file), file này cũng nằm cùng thư mục scripts.
- Mục tiêu: Chạy script này như một Azure ML experiment trên compute cluster tên aml-compute (biến
aml_computeđã được khởi tạo sẵn). Đặc biệt, cần configure the run để đảm bảo environment bao gồm đầy đủ required packages cho việc huấn luyện mô hình (ít nhất là scikit-learn và các dependencies liên quan).
🛠️ Proposed solution (giải pháp đề xuất): Chạy đoạn code sau:
from azureml.train.sklearn import SKLearn
sk_est = SKLearn(source_directory='./scripts',
compute_target=aml_compute,
entry_script='train.py')
❓ Câu hỏi chính: Giải pháp này có đạt được mục tiêu không (Does the solution meet the goal?)?
Lưu ý từ đề: Đây là phần không thể quay lại sau khi trả lời, và có thể có nhiều/có ít hơn một giải pháp đúng trong series.
✅ Đáp án đúng: No
Lý do chọn đáp án đúng (bằng tiếng Việt rõ ràng):
- ❌ Giải pháp KHÔNG đạt mục tiêu vì code chỉ tạo estimator (SKLearn object) mà KHÔNG submit vào experiment để thực sự tạo và chạy run trên Azure ML. Để chạy script như experiment, cần thêm code như:
from azureml.core import Experiment, Workspace ws = Workspace.from_config() # Hoặc tương tự experiment = Experiment(ws, 'my_experiment_name') run = experiment.submit(sk_est) # Thiếu bước này! - SKLearn estimator đúng là phù hợp cho script scikit-learn (tự động cung cấp environment với scikit-learn qua pip/conda), và
source_directorysẽ upload cả script + data file lên cluster. Tuy nhiên, không có submit nên không "configure the run" thực sự, không đảm bảo script chạy và environment được sử dụng. - Theo phiên bản Azure ML SDK v1 mới nhất (đến 2026), estimator chỉ là configurator, phải submit mới tạo run/experiment. (SDK v2 khuyến khị dùng
mlflowhoặccommand_job, nhưng exam vẫn dùng v1).
📘 Nguồn tham khảo: - MS Docs: Train scikit-learn model with Azure ML (SKLearn estimator) – Xác nhận cần
.submit()để chạy. - MS Docs: Azure ML Experiments & Runs – Estimator chỉ config, submit mới execute.
- Cập nhật 2024-2026: Estimators vẫn hỗ trợ nhưng deprecated dần, ưu tiên v2 CLI/jobs.
🔍 Giải thích tất cả các phương án
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). Phần giải thích hoàn toàn bằng tiếng Việt, dùng emoji để nổi bật:
-
Yes ❌ SAI
Lý do: Chọn "Yes" là sai vì giải pháp chỉ dừng ở việc tạo SKLearn estimator (config cơ bản), nhưng thiếu bước submit vào Experiment để tạo run thực tế. Environment của SKLearn có sklearn (quaconda_packages=['scikit-learn']mặc định), source_directory upload đúng data/script, compute_target đúng, nhưng KHÔNG chạy được experiment nên không "ensure the environment includes required packages" trong run thực. Trong exam case study, giải pháp phải hoàn chỉnh đạt goal. -
No ✅ ĐÚNG
Lý do: Chọn "No" là đúng vì giải pháp KHÔNG đầy đủ. Code thiếu: (1) Import/define Workspace & Experiment; (2)run = experiment.submit(sk_est)để khởi chạy trên aml-compute; (3) Không monitor run hoặc config thêm pip/conda nếu script cần packages ngoài sklearn. Mặc dù SKLearn phù hợp cho scikit-learn (upload scripts folder giữ data local), nhưng không submit = không run = không meet goal. Các giải pháp đúng khác trong series có thể dùng ScriptRunConfig với environment custom hoặc MLflow.
🧠 Tóm tắt nhanh: Giải pháp gần đúng nhưng thiếu submit – lỗi phổ biến trong Azure ML cert exam! Nếu cần code đúng mẫu: Sử dụng ScriptRunConfig + Environment với sklearn pip package.
You must use the Python SDK v2 to implement an experiment from a Jupyter notebook in the workspace. The experiment must log a list of numeral metrics.
You need to implement a method to log a list of numeral metrics.
Which method should you use?
- A mlflow.log_metric()
- B mlflow.log.batch()
- C mlflow.log_image()
- D mlflow.log_artifact()
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 Azure Machine Learning (Azure ML) với Python SDK v2, một công cụ mạnh mẽ của Microsoft để quản lý vòng đời machine learning. Cụ thể:
- Bạn đã tạo một Azure Machine Learning workspace – đây là môi trường trung tâm để tổ chức các tài nguyên ML như datasets, models, experiments, và compute.
- Bạn cần implement một experiment từ Jupyter notebook trong workspace này, sử dụng Python SDK v2.
- Yêu cầu chính: Experiment phải log (ghi nhật ký) một list of numeral metrics – tức là một danh sách các chỉ số số học (numerical metrics), ví dụ như accuracy, precision, loss,... dưới dạng batch (nhiều metrics cùng lúc, thường là dictionary hoặc list).
- Mục tiêu: Xác định method đúng trong MLflow (tích hợp sẵn trong Azure ML SDK v2) để log danh sách metrics này một cách hiệu quả.
🛠️ Ngữ cảnh kỹ thuật: Trong Azure ML SDK v2 (phiên bản mới nhất đến 2026), MLflow được sử dụng làm tracking framework mặc định. Bạn kích hoạt run bằng mlflow.start_run(), sau đó log metrics vào experiment. Log single metric dùng log_metric(), nhưng cho list/batch metrics, cần method hỗ trợ batch logging để tối ưu hiệu suất, tránh gọi API lặp lại.
📘 Kiến thức cập nhật đến 2026: Theo Azure ML Python SDK v2 (version 1.17+ và MLflow 2.10+ tích hợp), batch logging được ưu tiên cho performance cao trong large-scale experiments. (Nguồn: Microsoft Learn - Log metrics with MLflow in Azure ML, cập nhật 2025; MLflow Docs - Batch Logging).
✅ Đáp án đúng: mlflow.log.batch()
Lý do lựa chọn:
- Method này được thiết kế đặc biệt để log một batch (danh sách) numerical metrics cùng lúc dưới dạng dictionary hoặc list, giúp tối ưu hóa throughput và giảm latency so với gọi
log_metric()nhiều lần. - Trong Azure ML experiment từ Jupyter notebook (với
mlflow.start_run()),mlflow.log.batch()cho phép truyền trực tiếp list metrics (ví dụ:mlflow.log.batch([{"name": "acc", "value": 0.95}, ...])), phù hợp chính xác với yêu cầu "log a list of numeral metrics". - Đây là API batch logging tiêu chuẩn trong MLflow integration của Azure ML SDK v2 (hỗ trợ từ MLflow 2.8+, ổn định đến 2026).
📋 Giải thích tất cả các phương án
-
❌ mlflow.log_metric()
Phương án này SAI vì chỉ dùng để log một single numerical metric (ví dụ:mlflow.log_metric("accuracy", 0.95)). Không hỗ trợ log list/batch metrics trực tiếp – nếu dùng cho list, phải loop gọi nhiều lần, kém hiệu quả và không khớp yêu cầu "a list of numeral metrics". Phù hợp cho isolated metrics, không phải batch. -
✅ mlflow.log.batch()
Phương án này ĐÚNG như đã giải thích ở trên. Nó xử lý batch numerical metrics hiệu quả, lý tưởng cho experiments lớn trong Azure ML workspace. Ví dụ sử dụng:mlflow.log.batch(metrics_list), nơimetrics_listlà danh sách dicts chứa name-value pairs. (Nguồn: MLflow Tracking API - log_batch). -
❌ mlflow.log_image()
Phương án này SAI vì dành riêng để log hình ảnh (images) hoặc plots (ví dụ:mlflow.log_image("chart.png", "plot")). Không liên quan đến numerical metrics, chỉ dùng cho visualization artifacts trong experiment tracking. -
❌ mlflow.log_artifact()
Phương án này SAI vì dùng để log file artifacts (tệp như models, datasets, text files) vào run storage (ví dụ:mlflow.log_artifact("model.pkl")). Không hỗ trợ numerical metrics trực tiếp – metrics là lightweight data, không phải file.
🧩 Lưu ý bổ sung: Trong thực tế Azure ML SDK v2, sau khi log, bạn có thể xem metrics qua Azure ML Studio UI hoặc mlflow.search_runs(). Nếu experiment scale lớn, batch logging giảm chi phí API calls lên đến 90%. Khuyến nghị test trong Jupyter với azure-ai-ml package version >=1.17.0.
📚 Tài liệu tham khảo: