机器学习进阶文档深度页
面向真实使用的评价设计
数据划分必须模拟未来来源、时间、群组和预测时可用信息。
学习前需要掌握
训练验证测试内容待补充
背景与问题
随机划分并不总可靠。同一患者跨分块会泄漏身份,过去预测未来却打乱时间会让训练看到未来。
概念定义
评价设计先定义模型未来面对谁、何时预测、预测跨度和错误成本,再决定随机、时间、群组或来源外测试。
直观理解
测试不是从数据表随机抽题,而是模拟上线后真正会遇到的新对象。
核心原理
划分设计优先于算法选择;特征可用性、重复实体、时间顺序和地区/设备变化都要进入协议。
数学表达
核心表达
划分设计优先于算法选择;特征可用性、重复实体、时间顺序和地区/设备变化都要进入协议。
变量含义
变量定义与本页概念定义一致,代码中的同名变量保持相同语义。
计算步骤
- 1定义预测时点和对象
- 2识别时间/群组/来源
- 3选择划分器
- 4冻结测试集
代码对应位置
示例 1面向真实使用的评价设计 示例:对应文档中的可靠评价或训练流程。
计算与实现步骤
- 1
定义预测时点和对象
- 2
识别时间/群组/来源
- 3
选择划分器
- 4
冻结测试集
- 5
在训练部分验证
- 6
分群报告误差
代码实现
示例 1
面向真实使用的评价设计 示例
面向真实使用的评价设计 示例
scikit-learn
example_01.py用途:对应文档中的可靠评价或训练流程。
from sklearn.model_selection import GroupKFold
cv=GroupKFold(n_splits=5)
results=cross_validate(model,X,y,groups=user_ids,cv=cv)代码解析
解析始终位于完整代码下方,并按实际代码段逐项对应。
输入数据与任务
对应文档中的可靠评价或训练流程。
X- 完整特征矩阵,每行一个样本、每列一个特征。
y- 目标标签或连续目标值。
model- 组合预处理和估计器的模型对象。
Step 1 · 1–3 行
导入当前步骤需要的数值计算、预处理、模型或评价工具。依赖集中写在代码开头,便于复现。
from sklearn.model_selection import GroupKFold
cv=GroupKFold(n_splits=5)
results=cross_validate(model,X,y,groups=user_ids,cv=cv)预期输出或运行结果
每折验证用户与训练用户不重叠。
常见错误 · 3 条
- 默认随机切分
- 同一实体跨折
- 预测时不可用特征
实际应用
- 医疗
- 用户行为
- 时间预测
常见错误
默认随机切分
同一实体跨折
预测时不可用特征
文档来源
07|模型评估与调参原始文档
学习资料/learning_tech/07_evaluation_tuning.md- §1 评价首先要模拟真实使用
- §2 训练集、验证集和测试集
推荐学习资料
暂未收录相关资料
参考库不会生成虚假资源或无效外部链接。