for epoch in range(epochs): optimizer = adjust_learning_rate(optimizer, epoch) batch_num = len(train_data) / batch_size ## training epoch total_acc = 0.0 total_loss = 0.0 total = 0.0 for i in range(batch_num): train_inputs = train_data[i * batch_size:(i + 1) * batch_size] #TODO: itt hagytam abba #test_labels = [ for l in train_data[i*batch_size: (i+1)*batch_size]] model.zero_grad() model.batch_size = len(train_labels) model.hidden = model.init_hidden() output = model(train_inputs.t()) sys.exit(0) loss = loss_function(output, Variable(train_labels)) loss.backward() optimizer.step() # calc training acc _, predicted = torch.max(output.data, 1) total_acc += (predicted == train_labels).sum() total += len(train_labels) total_loss += loss.data[0] train_loss_.append(total_loss / total)