考试报名
考试报名
考试内容
考试大纲
在线客服
返回顶部

备考刷题,请到

CDA认证小程序

你正在维护一个包含繁重特征提取步骤(如 SVD 降维,耗时极长)的 Pipeline。现在需要对末端的分类器(如 SVM)进行大规模的网格搜索(GridSearch),尝试 100 种 C 和 gamma 的组合。 为了避免每次切换分类器参数时都重新计算 SVD 步骤,极大地浪费时间,应该在定义 Pipeline 时采取什么措施?
A. 设置 Pipeline(..., verbose=True) 以跳过重复步骤。
B. 传递 memory 参数给 Pipeline(例如 Pipeline(..., memory='cachedir'))。
C. 使用 joblib.dump 手动保存 SVD 的结果,并在 Pipeline 外部加载。
D. 将 SVD 移出 Pipeline,先转换好数据,再单独对分类器做 GridSearch。
上一题
下一题
收藏
点赞
评论
题目解析
题目评论(0)

• B 选项正确。Pipeline 接受一个 memory 参数(可以是字符串路径或 joblib.Memory 对象)。当设置后,Pipeline 会缓存 fit 过的 Transformer。如果参数和输入数据未变,它会直接从磁盘读取转换结果,而不是重新计算。这在 GridSearch 中调整分类器参数而前端预处理不变时非常有效。 • D 选项虽然可行(Manual approach),但破坏了端到端 Pipeline 的封装性,容易导致训练/测试数据处理不一致的风险(Leakage)。