
for epoch in range(100):
with tqdm(total=num_samples, desc='epoch {}'.format(epoch), bar_format='{desc} |{bar}| {elapsed}<{remaining}, {rate_fmt} {postfix}', ncols=80) as t:
precision = 0
for i in range(num_samples):
optimizer.zero_grad()
output = model(X_oh[i])
loss_train = F.nll_loss(output.T, Y[i])
values, pred = output.T.topk(10, dim=1, largest=True, sorted=True)
print(values)
if(Y[i][0] in pred):
precision += 1
loss_train.backward()
optimizer.step()
t.set_postfix_str('top10 precision ={:^7.3f}'.format(precision/num_samples))
t.update()