def test_repeated_calls_with_shuffle(): """Repeated calls should always lead to same split""" data = np.arange(100) dataset = DenseDesignMatrixWrapper(topo_view=to_4d_array(data), y=np.zeros(100)) splitter = SingleFoldSplitter(n_folds=10, i_test_fold=9, shuffle=True) reference_datasets = splitter.split_into_train_valid_test(dataset) # 20 attemptsat splitting should all lead to same datasets! for _ in range(20): new_datasets = splitter.split_into_train_valid_test(dataset) for key in reference_datasets: assert np.array_equal(reference_datasets[key].get_topological_view(), new_datasets[key].get_topological_view())
def test_repeated_calls_with_shuffle(): """Repeated calls should always lead to same split""" data = np.arange(100) dataset = DenseDesignMatrixWrapper(topo_view=to_4d_array(data), y=np.zeros(100)) splitter = SingleFoldSplitter(n_folds=10, i_test_fold=9, shuffle=True) reference_datasets = splitter.split_into_train_valid_test(dataset) # 20 attemptsat splitting should all lead to same datasets! for _ in range(20): new_datasets = splitter.split_into_train_valid_test(dataset) for key in reference_datasets: assert np.array_equal( reference_datasets[key].get_topological_view(), new_datasets[key].get_topological_view())
def test_first_fold(): data = np.arange(10) dataset = DenseDesignMatrixWrapper(topo_view=to_4d_array(data), y=np.zeros(10)) splitter = SingleFoldSplitter(n_folds=10, i_test_fold=0) datasets= splitter.split_into_train_valid_test(dataset) assert np.array_equal(to_4d_array(np.arange(1,9)), datasets['train'].get_topological_view() ) assert np.array_equal(to_4d_array([9]), datasets['valid'].get_topological_view() ) assert np.array_equal(to_4d_array([0]), datasets['test'].get_topological_view() )
def test_first_fold(): data = np.arange(10) dataset = DenseDesignMatrixWrapper(topo_view=to_4d_array(data), y=np.zeros(10)) splitter = SingleFoldSplitter(n_folds=10, i_test_fold=0) datasets = splitter.split_into_train_valid_test(dataset) assert np.array_equal(to_4d_array(np.arange(1, 9)), datasets['train'].get_topological_view()) assert np.array_equal(to_4d_array([9]), datasets['valid'].get_topological_view()) assert np.array_equal(to_4d_array([0]), datasets['test'].get_topological_view())