AgentMarketMCP / SKILL 资产档案馆

目录 / scikit-learn-train-test-splittings

SKILL 未评级 已上架

scikit-learn-train-test-splittings

Scikit-learn 训练集与测试集划分指南与说明 在使用 Scikit-learn 进行机器学习建模时,将数据集划分为训练集和测试集是至关重要的一步。这有助于评估模型在未见数据上的泛化能力。以下是关于如何使用 Scikit-learn 进行训练-测试划分的详细说明与指导: 1. 使用 train_test_split 函数 Scikit-learn 提供了 `train_test_split` 函数(位于 `sklearn.model_selection` 模块),用于将数据集随机划分为训练集和测试集。 基本语法: ```python from sklearn.model_selection import train_test_split X_train, X_test, y_train, y_test = train_test_split( X, y, test_size=0.2, random_state=42, stratify=y ) ``` 参数说明: - `X`:特征数据(通常为二维数组或 DataFrame) - `y`:标签数据(目标变量) - `test_size`:测试集所占比例(如 0.2 表示 20% 的数据作为测试集),也可指定具体样本数(如 test_size=100) - `train_size`:训练集比例或样本数(通常省略,由 test_size 自动推导) - `random_state`:随机种子,确保每次划分结果一致,便于复现 - `shuffle`:是否在划分前打乱数据(默认为 True) - `stratify`:按标签分层抽样,确保训练集和测试集中各类别比例与原始数据集一致,适用于分类任务中类别不平衡的情况 2. 分层划分(Stratified Split) 对于分类问题,尤其是类别分布不均衡时,建议使用 `stratify=y` 参数,以保持训练集和测试集中各类别的比例一致。 示例: ```python X_train, X_test, y_train, y_test = train_test_split( X, y, test_size=0.3, stratify=y, random_state=42 ) ``` 3. 时间序列数据的划分 对于时间序列数据,不能随机打乱顺序。应使用时间顺序划分,例如: ```python split_point = int(len(X) * 0.8) X_train, X_test = X[:split_point], X[split_point:] y_train, y_test = y[:split_point], y[split_point:] ``` 或使用 `TimeSeriesSplit` 进行交叉验证。 4. 多输出数据的划分 `train_test_split` 也支持多输出(multi-output)目标变量,函数会自动同步划分 X 和 y 的对应样本。 5. 验证集的使用 在实际项目中,通常还需进一步将训练集划分为训练集和验证集,用于超参数调优。可多次调用 `train_test_split` 实现: ```python X_temp, X_test, y_temp, y_test = train_test_split(X, y, test_size=0.2, random_state=42) X_train, X_val, y_train, y_val = train_test_split(X_temp, y_temp, test_size=0.25, random_state=42) # 0.25 * 0.8 = 0.2 ``` 最终得到 60% 训练、20% 验证、20% 测试的划分。 6. 注意事项 - 确保划分前数据已清洗和预处理(如缺失值处理、特征缩放等),但避免使用测试集信息进行预处理(防止数据泄露) - 划分后应分别对训练集进行特征缩放(如标准化),并将相同的变换应用于测试集 - 使用 `random_state` 保证实验可复现性 通过合理使用 `train_test_split`,可以有效构建可靠的机器学习流程,提升模型评估的准确性与可信度。

模型生成摘要(rules/v1 · 2026-11-14 17:15):Scikit-learn 训练集与测试集划分指南与说明
这是模型对公开材料的总结,不是官方声明,请以原链内容为准。

存档时间线

版本存档时间内容哈希内容
v12026-11-14 17:143215045c 可取

版本索引永久保留;内容副本只保留最新 1 份,更早版本仅留索引与哈希(存档时间线的证据链不会因此断裂)。

下载存档内容副本

纠错与举报(发现条目失效、署名有误或涉及侵权?)
提交举报 / 纠错

侵权举报经核验成立后,我们会即时下线该条目并删除已存的内容副本。