最近参加了一个面试,面试官问了一个问题:如果我有上千万条数据,那我怎样确定将这些数据中的哪些数据作为训练样本集?
烦请各位讲一讲,我当时没答上来,就随便说了一个特征最明显的数据。
最近参加了一个面试,面试官问了一个问题:如果我有上千万条数据,那我怎样确定将这些数据中的哪些数据作为训练样本集?
烦请各位讲一讲,我当时没答上来,就随便说了一个特征最明显的数据。
在训练样本的时候
可以将N个样本随机划分成K层
在MATLAB中可以使用crossvalind
来实现N个样本分成K份
%% 样本划分
K = 10;
N = size(samples,1); % samples为样本
indices = crossvalind('Kfold',N,k);
在训练样本的时候,可以按照indices来采样
for i = 1:K
test_example = (indices == i);
traing_example = ~test_example;
experiment_test = samples(test_example,:);
test_label = experiment_test(:,1);
exper_test = experiment_test(:,2:end);
%%进行样本训练
end
1 回答3k 阅读✓ 已解决
1 回答2.7k 阅读
2.5k 阅读
1 回答1.1k 阅读
1 回答356 阅读✓ 已解决
813 阅读
572 阅读
难道不是随机抽样一部分作为训练数据?比如随机抽样70%做训练,10%做验证,20%做测试。
如果按照某个特征最明显来选择训练数据,岂不是违背了训练数据和测试数据独立同分布的假设?