大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
关于sklearn.model_selected中的KFold.split的理解
作用:返回样本切分之后数据集的indices,即索引
返回:
train: ndarray。如果KFold设置shuffle参数是True,是混乱的。
test: ndarray。如果KFold设置shuffle参数是True/False,是按照顺序连续!!
示例
ab_range = np.array(range(0,100))*100
ab_rangey = np.array(range(0,100))/100.0
print(len(ab_range),len(ab_rangey))
array([ 0, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000,
1100, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2000, 2100,
2200, 2300, 2400, 2500, 2600, 2700, 2800, 2900, 3000, 3100, 3200,
3300, 3400, 3500, 3600, 3700, 3800, 3900, 4000, 4100, 4200, 4300,
4400, 4500, 4600, 4700, 4800, 4900, 5000, 5100, 5200, 5300, 5400,
5500, 5600, 5700, 5800, 5900, 6000, 6100, 6200, 6300, 6400, 6500,
6600, 6700, 6800, 6900, 7000, 7100, 7200, 7300, 7400, 7500, 7600,
7700, 7800, 7900, 8000, 8100, 8200, 8300, 8400, 8500, 8600, 8700,
8800, 8900, 9000, 9100, 9200, 9300, 9400, 9500, 9600, 9700, 9800,
9900])
array([ 0. , 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08,
0.09, 0.1 , 0.11, 0.12, 0.13, 0.14, 0.15, 0.16, 0.17,
0.18, 0.19, 0.2 , 0.21, 0.22, 0.23, 0.24, 0.25, 0.26,
0.27, 0.28, 0.29, 0.3 , 0.31, 0.32, 0.33, 0.34, 0.35,
0.36, 0.37, 0.38, 0.39, 0.4 , 0.41, 0.42, 0.43, 0.44,
0.45, 0.46, 0.47, 0.48, 0.49, 0.5 , 0.51, 0.52, 0.53,
0.54, 0.55, 0.56, 0.57, 0.58, 0.59, 0.6 , 0.61, 0.62,
0.63, 0.64, 0.65, 0.66, 0.67, 0.68, 0.69, 0.7 , 0.71,
0.72, 0.73, 0.74, 0.75, 0.76, 0.77, 0.78, 0.79, 0.8 ,
0.81, 0.82, 0.83, 0.84, 0.85, 0.86, 0.87, 0.88, 0.89,
0.9 , 0.91, 0.92, 0.93, 0.94, 0.95, 0.96, 0.97, 0.98, 0.99])
100 100
kf = KFold(5, random_state=123)
# 一、仅仅打印test(即代码中model)的indices
for i, model in kf.split(ab_range, ab_rangey):
print(‘*’ * 10);
# print(i, len(i));
print(model, len(model));
print(‘*’ * 10)
**********
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19] 20
**********
**********
[20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39] 20
**********
**********
[40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59] 20
**********
**********
[60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79] 20
**********
**********
[80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99] 20
**********
结果中test在5折切分中是从0-99按照顺序切分。
# 二、仅仅输出train数据集的indices
for i, model in kf.split(ab_range, ab_rangey):
print(‘*’ * 10);
print(i, len(i));
# print(model, len(model));
print(‘*’ * 10)
**********
[20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
95 96 97 98 99] 80
**********
**********
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 40 41 42 43 44
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
95 96 97 98 99] 80
**********
**********
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 60 61 62 63 64 65 66 67 68 69
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
95 96 97 98 99] 80
**********
**********
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
50 51 52 53 54 55 56 57 58 59 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
95 96 97 98 99] 80
**********
**********
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
75 76 77 78 79] 80
**********
结果中train在5折切分中是从0-99中随机选出80个,对应顺序即是混乱的。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/192627.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...