当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python sklearn LeavePGroupsOut用法及代码示例


本文简要介绍python语言中 sklearn.model_selection.LeavePGroupsOut 的用法。

用法:

class sklearn.model_selection.LeavePGroupsOut(n_groups)

将 P 组排除在外cross-validator

提供训练/测试索引以根据第三方提供的组拆分数据。该组信息可用于将样本的任意域特定分层编码为整数。

例如,这些组可以是样本收集的年份,因此允许针对基于时间的拆分进行交叉验证。

LeavePGroupsOut 和 LeaveOneGroupOut 之间的区别在于,前者使用分配给 p 不同组值的所有样本来构建测试集,而后者使用所有分配给相同组的样本。

在用户指南中阅读更多信息。

参数

n_groupsint

要在测试拆分中遗漏的组数 (p)。

例子

>>> import numpy as np
>>> from sklearn.model_selection import LeavePGroupsOut
>>> X = np.array([[1, 2], [3, 4], [5, 6]])
>>> y = np.array([1, 2, 1])
>>> groups = np.array([1, 2, 3])
>>> lpgo = LeavePGroupsOut(n_groups=2)
>>> lpgo.get_n_splits(X, y, groups)
3
>>> lpgo.get_n_splits(groups=groups)  # 'groups' is always required
3
>>> print(lpgo)
LeavePGroupsOut(n_groups=2)
>>> for train_index, test_index in lpgo.split(X, y, groups):
...     print("TRAIN:", train_index, "TEST:", test_index)
...     X_train, X_test = X[train_index], X[test_index]
...     y_train, y_test = y[train_index], y[test_index]
...     print(X_train, X_test, y_train, y_test)
TRAIN: [2] TEST: [0 1]
[[5 6]] [[1 2]
 [3 4]] [1] [1 2]
TRAIN: [1] TEST: [0 2]
[[3 4]] [[1 2]
 [5 6]] [2] [1 1]
TRAIN: [0] TEST: [1 2]
[[1 2]] [[3 4]
 [5 6]] [1] [2 1]

相关用法


注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.model_selection.LeavePGroupsOut。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。