please, how can I replace torch.optim.Adam by torch.optim.LBFGS in this code?
model = Net().to(device)
crit = nn.BCELoss(reduce=True)
optimizer = torch.optim.Adam(model.parameters(), lr=1e-3)
def train():
model.train()
loss_all = 0
for data in train_loader:
data = data.to(device)
optimizer.zero_grad()
output = model(data)
label = data.y
loss = crit(output, label)
loss.backward()
loss_all += data.num_graphs * loss.item()
optimizer.step()
return loss_all / len(train_dataset)
for epoch in tqdm(range(100), desc="Epochs: ", leave=True):
loss = train()
print('Epoch: {:03d}, Loss: {:.5f}.format(epoch, loss))
and thank you