什么是sklearn.model_selection.train_test_split中的样本权重

时间:2018-06-05 04:07:46

标签: python machine-learning scikit-learn

在scikit-learn的probability calibration of classifiers中,有一段关于train_test_split的代码,我在文档中找不到解释。

insert into order_information(donut_order_id, order_date, special_handling_notes) values(1, '2018-01-01', 'do not eat any of them on the way');
  1.   

    centers = [(-5, -5), (0, 0), (5, 5)] X, y = make_blobs(n_samples=n_samples, n_features=2, cluster_std=1.0, centers=centers, shuffle=False, random_state=42) y[:n_samples // 2] = 0 y[n_samples // 2:] = 1 sample_weight = np.random.RandomState(42).rand(y.shape[0]) # split train, test for calibration X_train, X_test, y_train, y_test, sw_train, sw_test = \ train_test_split(X, y, sample_weight, test_size=0.9, random_state=42) 中的sample_weight做了什么?

  2.   

    train_test_split处理train_test_split的源代码如何?

  3. 提前多多感谢。

1 个答案:

答案 0 :(得分:3)

train_test_split并不只是xy。它可以采用具有相同第一维的任意数组序列,并将它们随机分割,但始终如一地沿着该维度分成两组。

在您的示例中,有一组随机权重(每次观察一个权重),它被分成训练和测试数组,sw_trainsw_test

为观察分配权重的原因有很多。有关进一步的讨论,请参阅: