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)
I am trying to pass the PyTorch data loader, but it gives the error-
Sample Code:
How can I pass this Pytorch data loader to here? Please help