Greetings!
In order to print the initial loss of my network (before training), I want to feed the entire data set into my network like this:
    loss_train = np.zeros(epochs+1)
    accu_train = np.zeros(epochs+1)
    
    # initial loss 
    output = model(batches_train.dataset.data)   # batches_train is dataloader
    targets = batches_train.dataset.targets
    loss_train[0] = criterion(output, targets).detach()

The problem is that this gives the original dataset without the transformations that were specified in the creation of the dataloader. For example, if I specified the transforms.ToTensor()  operation for the dataloader, my code will complain that the model( ) does not accept np.arrays as input.
Is there a cheap way to fix this? I could easily just iterate over all the batches, but I was wondering whether one can do without a for-loop.
Regards!