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


Python cuml.model_selection.train_test_split用法及代码示例


用法:

cuml.model_selection.train_test_split(X, y=None, test_size: Optional[Union[float, int]] = None, train_size: Optional[Union[float, int]] = None, shuffle: bool = True, random_state: Optional[Union[int, cupy.random._generator.RandomState, numpy.random.mtrand.RandomState]] = None, stratify=None)

将设备数据划分为四个整理的对象,模仿 Scikit-learn 的 train_test_split

参数

Xcudf.DataFrame 或 cuda_array_interface 兼容设备数组

要拆分的数据,具有形状(n_samples,n_features)

ystr、cudf.Series 或 cuda_array_interface 兼容设备阵列

数据的标签集,可以是一系列形状 (n_samples) 或 X 中包含标签的列的字符串标签(如果它是 cuDF DataFrame)

train_sizefloat 或 int,可选

如果是float,表示要分配给训练集的数据的比例[0, 1]。如果是 int,则表示要分配给训练集的实例数。默认为 0.8

shuffle布尔型,可选

拆分前是否对输入进行混洗

random_stateint、CuPy RandomState 或 NumPy RandomState 可选

如果 shuffle 为真,则为生成器播种。默认不播种

stratify: cudf.Series or cuda_array_interface compliant device array,

可选参数。传递时,输入将使用此列拆分以启动。默认=无

返回

X_train, X_test, y_train, y_testcudf.DataFrame 或 array-like 对象

如果 X 和 y 是 cuDF 对象,则分区数据帧。如果 y 作为列名提供,则从 X 中删除该列。如果 X 和 y 是 Numba 设备阵列,则分区 numba 设备阵列。任何其他输入的分区 CuPy 数组。

例子

import cudf
from cuml.model_selection import train_test_split

# Generate some sample data
df = cudf.DataFrame({'x': range(10),
                     'y': [0, 1] * 5})
print(f'Original data: {df.shape[0]} elements')

# Suppose we want an 80/20 split
X_train, X_test, y_train, y_test = train_test_split(df, 'y',
                                                    train_size=0.8)
print(f'X_train: {X_train.shape[0]} elements')
print(f'X_test: {X_test.shape[0]} elements')
print(f'y_train: {y_train.shape[0]} elements')
print(f'y_test: {y_test.shape[0]} elements')

# Alternatively, if our labels are stored separately
labels = df['y']
df = df.drop(['y'], axis=1)

# we can also do
X_train, X_test, y_train, y_test = train_test_split(df, labels,
                                                    train_size=0.8)

输出:

Original data: 10 elements
X_train: 8 elements
X_test: 2 elements
y_train: 8 elements
y_test: 2 elements

相关用法


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