for i in index_list:
            result_t += td[i]
            result_v += vd[i]
    elif mode == "tensor":
        tx, _, vx, _ = load_and_split_mnist_tensor()
        result_t = tx[index_list[0]]
        result_v = vx[index_list[0]]
        index_list = index_list[1:]
        for i in index_list:
            torch.cat((result_t, tx[i]), dim=0)
            torch.cat((result_v, vx[i]), dim=0)
    else:
        return None
    return result_t, result_v


if __name__ == "__main__":
    import time
    td, vd = concat_data([1, 2, 3, 4])
    learner = Learner(DataLoader(td, batch_size=64, shuffle=True, num_workers=4), DataLoader(
        vd, batch_size=64, shuffle=True, num_workers=4), log_interval=100, lr=0.005)

    st = time.time()
    learner.learn(2)
    print(f"total time: {time.time() - st}")

    td, vd = concat_data([3, 4, 5, 6])
    learner.test_loader = DataLoader(
        vd, batch_size=64, shuffle=True, num_workers=4)
    learner._test()