ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

AI-900备考指南:Azure AI工作负载与负责任AI题库解析

AI-900备考指南:Azure AI工作负载与负责任AI题库解析 简介围绕微软 AI-900 认证考试的备考资料以单份 PDF 文档形式呈现主要面向计划参加 Azure AI Fundamentals 考试的自学者、转行人员及需要快速梳理 AI 基础概念的在校生。内容按 Topic 组织收录多道 ExamTopics 风格真题涵盖聊天机器人业务收益、训练集与评估集划分、混淆矩阵中真阳性与假阴性判断、自动化机器学习中的可解释性设置等高频考点并附正确答案、社区投票分布与微软官方文档参考链接便于对照理解命题思路。压缩包内共 1 个 PDF 文件大小约 17.65MB页面排版清晰适合在平板或电脑上逐题练习与标注。目前已有 363 人学习下载可作为考前自测与查漏补缺的题库材料帮助读者熟悉题型分布、验证知识盲区并配合解析回看机器学习基础概念。1. AI-900 是一张把业务场景翻译成 Azure 服务名的入场券有人在群里抛出一道题公司做了个网页聊天机器人自动回答常见问题应该期待什么业务收益四个选项分别是销售额提升、客服工作量下降、产品可靠性改善。很多人第一反应是提升销售额正确答案是客服工作量下降。这类题在 AI-900 里占比很大它不考数学推导考的是你能不能把一句业务描述翻译成 Azure 里某个具体能力和某个具体收益。AI-900 认证考试全称是 Microsoft Azure AI Fundamentals定位是基础级面向的是没有建模经验但要和 AI 项目打交道的角色后端、运维、数据工程、产品经理。ExamTopics 这类题库资料常见的 PDF 形态很固定——题号、题干、选项、Correct Answer、Community vote distribution 投票分布、外加一条 docs 参考链接题型上单选、拖拽DRAG DROP、热点HOTSPOT混排。把这份资料当作题型样本 知识地图来读比当作标准答案来背要划算得多。2. AI-900 考纲到 Azure 服务的映射工作负载判定与题库读法这一章解决的是看到题干第一句话就知道出题人想问哪个域的问题。AI-900 的题目几乎都能归到两类一类问 AI 工作负载workload一类问负责任 AI 原则。工作负载题的解法是抓信号词原则题的解法是抓关键词两者都不需要你写出模型。2.1 四类 AI 工作负载的判定特征工作负载题的题干通常给一个业务动作选项给四个工作负载名。判定靠的是输入是什么、输出是什么而不是行业。电话录音转文字再判断情绪输入是语音、输出是情绪标签落在 NLP 上不是语音相关的计算机视觉。工作负载题干信号词常见 Azure 能力机器学习回归 / 分类 / 聚类 / 异常检测预测数值、分类客户、离群交易、欺诈识别、设备故障Azure Machine Learning、Anomaly Detector计算机视觉图像分类、目标检测、人脸、OCR、识别照片里有没有某物Computer Vision、Face、Custom Vision自然语言处理情感分析、关键词提取、语言检测、文本分类、翻译Language 服务、Translator对话式 AI机器人、多轮问答、FAQ 自动应答、坐席辅助Bot Service、Language 中的问答能力提示题库里出现过识别推文照片里是否有人戴墨镜答案是 Face 服务的 Detect 操作而不是 Computer Vision 的 Describe Image。区别在于 Describe 输出一段自然语言描述Detect 输出人脸与属性结构化字段题目要的是可编程判断而不是文字描述。2.2 机器学习和异常检测的边界异常检测在考纲里属于机器学习工作负载的一个分支但它和分类的标注前提完全不同。分类要求你手里有历史标注的欺诈/正常标签异常检测允许你只有一堆流水靠统计离群来发现可疑项。题库里说异常检测涵盖识别潜在欺诈交易、学习网络入侵模式、发现异常患者聚集——这几句话的共同点是异常样本稀少、定义模糊、事先拿不到标注。下面这段代码用同一份数据把两条路线跑一遍能直观看出输入差异# 对比有标签走分类无标签走异常检测 import numpy as np from sklearn.linear_model import LogisticRegression from sklearn.ensemble import IsolationForest rng np.random.default_rng(42) # 路线一历史数据已人工标注过走监督分类 X_labeled rng.normal(size(500, 4)) y_labeled (X_labeled[:, 0] X_labeled[:, 1] 1.2).astype(int) # 已知标签 clf LogisticRegression(max_iter1000).fit(X_labeled, y_labeled) print(分类预测:, clf.predict(X_labeled[:3])) # 路线二只有流水没有标签只能找离群点 X_unlabeled rng.normal(size(500, 4)) iso IsolationForest(contamination0.05, random_state42).fit(X_unlabeled) print(异常检测预测(-1 为离群):, iso.predict(X_unlabeled[:10]))逻辑说明第一段必须传入y_labeled因为监督学习要拟合特征到标签的映射第二段完全没有 y 参数模型只能学习多数样本长什么样。参数上contamination0.05表示你预期大约 5% 的样本是异常这个值设大了会把正常交易误判为欺诈设小了会漏掉真正的离群点实际项目里一般先用历史欺诈率估一个初值再调。random_state固定后每次运行结果一致方便复现。考试层面只需要记住这个区别题目强调事先不知道哪些是异常就选异常检测强调根据历史标注预测类别就选分类。2.3 题库 PDF 的结构决定了怎么读一份典型的 ExamTopics 风格资料单题包含四块信息题干与选项、Correct Answer、投票分布如B (100%)、Reference 链接。这四块的可靠性是递减的。题干和选项最可靠它就是考纲的语言Correct Answer 大体可靠但存在版本漂移投票分布只是社区共识的统计100% 一致反而说明这题被反复刷过不是难度高Reference 链接指向的文档可能已经改名。注意题库中大量参考链接指向docs.microsoft.com/en-us/azure/machine-learning/studio/...这是已经退役的 Machine Learning Studio经典版文档。经典版里的 Split Data 模块默认按 50-50 切分数据而现在的 Azure Machine Learning 设计器里默认比例不同。背正确答案没问题但别把文档里的默认值当成当前默认值。读法是先按域给题目打标工作负载 / 机器学习基础 / 计算机视觉 / NLP / 负责任 AI再按域统计错题率。按题号顺序刷你只会记住第 3 题选 B按域刷你才知道自己是不认识 Face 服务还是分不清透明性和问责。2.4 备考材料的取舍顺序常见做法是三步走。第一步用题库摸题型两天内把所有题过一遍只标记完全没思路的题不纠结正确率。第二步回到官方学习路径补概念重点是负责任 AI 六原则和 Azure AI 服务清单这两块它们占分稳定且最容易被当成常识忽略。第三步回头做错题每个错题写一句我当时是怎么想的因为 AI-900 的错因九成不是不会而是被某个干扰词带偏。零基础的人大概两到三周能跑完这个循环有云平台经验的压缩到一周也正常。3. 训练集划分与混淆矩阵把题库里的两道题写成可运行代码机器学习基础部分在题库里反复出现两种问法数据怎么切、混淆矩阵怎么读。这两类题用代码跑一遍比看十遍解析都牢。3.1 为什么必须按行随机切分题库原题问如何为训练和评估划分数据四个选项里有两个陷阱用特征训练、用标签评估按列切分。正确做法是随机按行切分。原因很直接——一行代表一个样本特征和标签是同一个样本的两个侧面把它们分开就等于把一个人的身份证号和姓名分到两个集合里模型在评估时看到的是从未见过的组合。按列切分更荒谬那是把某些特征整体留给评估集训练时模型压根没学过这些列评估结果没有意义。选项 A 和 C 属于同一个错误的变体只是把列换成了特征/标签的说法。3.2 复现一次标准切分与指标计算from sklearn.datasets import load_breast_cancer from sklearn.model_selection import train_test_split from sklearn.linear_model import LogisticRegression from sklearn.metrics import confusion_matrix, precision_score, recall_score X, y load_breast_cancer(return_X_yTrue) # 关键按行切分并用 stratify 保持正负样本比例 X_train, X_test, y_train, y_test train_test_split( X, y, test_size0.2, # 评估集占 20% random_state42, # 固定种子结果可复现 stratifyy # 分层抽样防止小类别被切空 ) model LogisticRegression(max_iter5000).fit(X_train, y_train) y_pred model.predict(X_test) # 注意 ravel() 的解包顺序是 tn, fp, fn, tp顺序写反是最常见的低级错误 tn, fp, fn, tp confusion_matrix(y_test, y_pred).ravel() print(fTP{tp} FP{fp} FN{fn} TN{tn}) print(fprecision{precision_score(y_test, y_pred):.3f}) print(frecall{recall_score(y_test, y_pred):.3f})逻辑说明train_test_split的四个返回值顺序固定写反了训练集和测试集会互换但代码不报错。test_size0.2是当前常见默认习惯题库里提到的 50-50 是经典版 Split Data 模块的旧默认值。stratifyy在类别不平衡时才体现价值——比如欺诈样本只占 1%不分层的话评估集里可能一个正样本都没有recall 无从计算。参数说明random_state决定切分结果换一个值指标会小幅波动写论文或对比模型时务必固定max_iter是逻辑回归的迭代上限样本量上去以后默认 100 会频繁触发收敛警告调大即可。3.3 混淆矩阵到指标的推导链题库里有一道热点题给了混淆矩阵要求填 TP 和 FN。记住四个格子的定义剩下全是算术指标定义关注什么TP 真阳性实际为正、预测为正抓对了多少TN 真阴性实际为负、预测为负放过多少FP 假阳性实际为负、预测为正误报骚扰成本FN 假阴性实际为正、预测为负漏报风险成本由此得到两个高频指标precision TP / (TP FP)衡量报出来的有多少是真的recall TP / (TP FN)衡量真的有多少被报出来了。风控场景通常优先保 recall因为漏掉一笔欺诈的代价远高于误拦一笔正常交易而推荐、广告这类场景更在意 precision误报会直接损害体验。提示题目给矩阵时先确认行列哪个是实际哪个是预测。不同教材的排布顺序不一样ExamTopics 的解析里默认解析文字会写明题干图不清楚时以解析里的 TP/FN 数值反推排布。3.4 题目没提但你该知道的三个坑第一个是数据泄漏如果切分前用全量数据做了标准化或缺失值填充评估集的信息已经渗进训练过程指标会虚高。正确顺序是先切分再在训练集上 fit 变换器然后 transform 评估集。第二个是类别不平衡下的 accuracy 陷阱99% 的样本是正常交易时全预测正常就能拿到 99% 准确率所以不平衡场景要看 precision/recall 或 AUC不要只看 accuracy。第三个是时间序列不能随机切分金融、运维日志这类数据必须按时间前后切否则等于用未来的数据预测过去。考试不考这三点但面试会问而且它们解释了你刷题时明明做对了指标却很难看的原因。4. 负责任 AI 六原则题干关键词到原则的判定规则与 Azure ML 落地开关负责任 AI 是 AI-900 里最容易被低估的板块。它没有计算但六个原则的中文翻译彼此高度相似光靠背名词会在干扰项上翻车。破局点是把每个原则绑定到一个可观察的动作。4.1 六原则与判定关键词对照表原则一句话判定题干信号词公平性 Fairness决策不对特定群体产生系统性偏差贷款审批、招聘筛选、性别/种族/年龄、bias可靠性与安全 Reliability and safety按设计运行、能应对意外、抗恶意操纵边缘场景、性能退化、持续监控、A/B 测试、champion/challenger隐私与安全 Privacy and security数据受保护采集使用存储需透明个人数据、授权、访问控制、合规要求包容性 Inclusiveness覆盖不同人群与不同能力听障、视障、残障人士、无障碍设计透明性 Transparency能解释模型怎么来的可复现可解释、文档、调试、复现训练过程问责 Accountability人对系统负责人类保留最终控制权最终决策权、行业标准、人类监督这张表的用法是反向的先看题干里出现了哪个信号词再选原则。题干出现贷款审批的因素应当可解释信号词是可解释直接指向透明性出现包括有听力、视觉障碍的人指向包容性出现系统在意外条件下安全响应指向可靠性与安全。4.2 三道典型题的推理链第一道问哪个任务满足透明性原则。选项里有为所有视觉元素提供可供屏幕阅读器读取的替代文本这是包容性的做法不是透明性启用自动缩放属于运维与原则无关确保训练数据集能代表总体人群是公平性的做法正确答案是提供文档帮助开发者调试代码。推理链是透明性的核心诉求是让人能理解并复现模型的行为文档和调试能力直接服务于这一点。第二道AI 系统评估贷款审批决策因素需要可解释问属于哪个原则。题干直接给了explainable选透明性。这里的干扰项是公平性——贷款审批容易让人联想到歧视但题干没有提任何群体只提解释性。第三道为所有人赋能包括听障视障人群问属于哪个原则。选包容性。这题如果换成为视障用户提供语音播报的同时保证语音识别对各地口音都准确就变成了公平性与包容性的交叉得看题干强调的是能力覆盖还是群体间无偏差。4.3 在 Azure 自动机器学习里对应的开关题库里有一道题问用自动机器学习 UI 建好模型后要确保满足透明性原则该怎么做答案是启用解释最佳模型Explain best model。这个开关在 SDK 里也能设from azure.ai.ml import automl # 自动机器学习分类任务打开模型可解释性对应 UI 上的 Explain best model job automl.classification( computecpu-cluster, experiment_nameai900-explain, training_datamy_training_data, target_column_namelabel, primary_metricaccuracy, # 主指标决定选哪个模型 enable_model_explainabilityTrue, # 关键开关输出特征重要性 )逻辑说明primary_metric决定自动机器学习在众多候选模型和超参组合里挑哪个作为最佳模型常用的还有AUC_weighted、precision_score_weightedenable_model_explainabilityTrue让流程在训练完成后额外计算每个特征对预测的影响方向和幅度也就是特征重要性这是把黑盒打开、满足透明性要求的具体手段。参数说明开启解释会带来额外计算开销和运行时间在特征维度很高时尤其明显所以它不是默认打开而是需要你主动声明。题目里另外几个选项——把验证类型设为 Auto、把主指标设为 accuracy、把最大并发迭代设为 0——分别影响数据切分、模型选择和资源调度与透明性没有关系。最后那个最大并发迭代设为 0是个纯干扰项设成 0 在新版本里甚至可以理解为不启用自动超参搜索。4.4 干扰项的生成规律负责任 AI 题的四个选项通常由一个正确答案和三类干扰组成同一原则的另一种做法如透明性题里放包容性的无障碍方案、其他原则的表述如公平性、隐私与安全、以及完全不相关的工程手段自动缩放、并发数、验证类型。识别方法很简单——先判断选项描述的是不是模型本身的行为自动缩放、并发数这类属于基础设施一定不是答案。剩下两个同域选项就回到信号词上做判决。5. 刷题效率与临考判断错题归因表与题型作答节奏题库刷到第二遍很多人会陷入这题我见过但说不清为什么的状态正确率上去了实际掌握没上去。解决办法是把记忆单位从题目改成知识点。5.1 四类题型的作答开销不一样ExamTopics 风格的资料里题型混杂作答策略要分开定。题型特征建议节奏单选一句业务描述加四个选项30 秒内定论超时就标记跳过拖拽匹配 DRAG DROP若干原则/工作负载与场景配对先做最有把握的一对用排除法收敛热点 HOTSPOT下拉框填空或句子里选词注意每个空独立计分不要因为一个空卡住是/否判断三个陈述分别判真假逐句独立判断避免被前一句的语义带走拖拽题的技巧是先锚定唯一项。比如把工作负载匹配到场景先找那个绝对不可能混淆的场景——从客户反馈里提取关键词只能是 NLP剩下三个再排。热点题的空格是独立计分的遇到一个拿不准的先选一个再看下一个别在一个空上耗三分钟。5.2 用脚本统计错题分布按域统计错题率是决定考前最后两天补哪块的最快方式。下面这段脚本把归因记录聚合成一张按错题数排序的表import csv import collections # 每条记录知识点关键词、所属域、是否答错(1/0) records [ (webchat bot 业务收益, workload, 1), (训练/评估集划分, ml-basics, 1), (混淆矩阵 TP/FN, ml-basics, 0), (Explain best model, responsible-ai, 1), (inclusiveness 无障碍, responsible-ai, 0), (异常检测场景匹配, workload, 0), ] stat collections.defaultdict(lambda: [0, 0]) # [总题数, 错题数] for _, domain, wrong in records: stat[domain][0] 1 stat[domain][1] wrong with open(review.csv, w, newline, encodingutf-8) as f: writer csv.writer(f) writer.writerow([domain, total, wrong, error_rate]) # 按错题数从多到少排优先补最弱的一块 for domain, (total, wrong) in sorted(stat.items(), keylambda kv: -kv[1][1]): writer.writerow([domain, total, wrong, f{wrong / total:.0%}])逻辑说明defaultdict省掉了初始化判断第二列累加错题数比只记正确率更有用——正确率会掩盖样本量差异10 题错 3 题和 3 题错 1 题的正确率接近但前者明显更需要补。排序键用-kv[1][1]负数让错题数多的域排前面直接对应复习优先级。参数说明encodingutf-8必须写否则中文知识点在 Windows 上打开是乱码newline防止 CSV 在 Windows 下多出空行。这份表可以直接在 Excel 里按 error_rate 排序再给每一行补一列我当时选了什么、为什么错这个动作比再刷一百道新题有效。5.3 临考两天的动作清单最后一轮不要从头到尾重刷。先跑一遍上面那张表给错题率最高的域补一次概念工作负载题去对 Azure 服务清单原则题去对关键词表机器学习基础题把切分顺序和混淆矩阵四个格子默写一遍。然后专挑拖拽和热点题做因为这两类最耗时间一旦在考场上卡住后面单选的时间会被挤掉。判断题保持一句话独立判断的习惯把该原则要求系统具备某能力和该原则禁止系统做某事分开看题干里出现否定表述时慢半拍再落笔。考前最后两小时只看三样东西六原则的信号词对照表、四类工作负载的输入输出特征、混淆矩阵的四个格子和两个公式。其他的刷题时形成的语感已经够了。本文还有配套的精品资源点击获取
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进