Skip to content

Unable to use Pytorch Dataloader in Skorch NeuralNetClassifier #992

Description

@animeshkumarpaul

I am trying to pass the PyTorch data loader, but it gives the error-

TypeError: 'DataLoader' object is not callable

Sample Code:

samples_weights_train = np.array(-----------)
sampler_train = WeightedRandomSampler(weights=samples_weights_train, num_samples=len(y_train)*2, replacement=True)
X_NN_train = torch.from_numpy(np.asarray(X_train, dtype=np.float32)).float()        
y_NN_train = torch.from_numpy(y_train).long()
train_dataset = TensorDataset(X_NN_train, y_NN_train)
train_loader = DataLoader(train_dataset, sampler = sampler_train, batch_size = 500, num_workers=1)


samples_weights_valid = np.array(------------)
sampler_valid = WeightedRandomSampler(weights=samples_weights_valid, num_samples=len(y_valid)*2, replacement=True)
X_NN_valid = torch.from_numpy(np.asarray(X_valid, dtype=np.float32)).float()        
y_NN_valid = torch.from_numpy(y_valid).long()
valid_dataset = TensorDataset(X_NN_valid, y_NN_valid)
valid_loader = DataLoader(valid_dataset, sampler = sampler_valid, batch_size = 500, num_workers=1)

from skorch import NeuralNetClassifier
net = NeuralNetClassifier(
    ClassifierModule(layer_sizes=[16384, 2], input_size=X_valid_transformed.shape[1]),
    max_epochs=500,
    batch_size= 50000,
    criterion=nn.CrossEntropyLoss(weight=torch.FloatTensor([w1,w2]),reduction='mean')
    optimizer=torch.optim.Adam,
    lr=0.01,
    optimizer__weight_decay = 1e-4,
    iterator_train__shuffle=True,
    device='cuda:0',
    callbacks=[early_stopping,lr_scheduler,initializer_cb, checkpoint_cb,EpochScoring_cb_train,EpochScoring_cb_valid],
    train_split = None,
    iterator_train =  DataLoader(train_dataset, sampler = sampler_train, batch_size = 500, num_workers=1), #train_loader,
    iterator_valid = DataLoader(valid_dataset, sampler = sampler_valid, batch_size = 500, num_workers=1)#valid_loader
    )

net.fit(X_NN_train,y=None)

How can I pass this Pytorch data loader to here? Please help

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions