optimizer.add_hook(chainer.optimizer.WeightDecay(1e-4)) scheduler = AdamScheduler(optimizer, 0.5, args.lr_step_list, 0) train_iterator = iterators.MultithreadIterator(train_dataset, args.batch_size, n_threads=args.nb_jobs) train_eval = Evaluator("train", args) valid_iterator = iterators.MultithreadIterator(valid_dataset, args.batch_size, False, False, n_threads=args.nb_jobs) valid_eval = Evaluator("valid", args) logger.info("Training...") train_eval.reset() st = time.time() # Training loop for iter_cnt, batch in enumerate(train_iterator): if iter_cnt == args.nb_iters: break chainer.config.train = True chainer.config.enable_backprop = True batch_array = [ convert.concat_examples([x[idx] for x in batch], args.gpu) for idx in data_idxs ] model.cleargrads() loss, pred_y, _ = model(tuple(map(Variable, batch_array))) loss.backward()
input("here") train_iterator = iterators.MultithreadIterator(train_dataset, args.batch_size, n_threads=args.nb_jobs) train_eval = Evaluator("train", args) valid_iterator = iterators.MultithreadIterator(valid_dataset, args.batch_size, False, False, n_threads=args.nb_jobs) valid_eval = Evaluator("valid", args) logger.info("Training...") train_eval.reset() st = time.time() total_loss = 0 # Training loop for iter_cnt, batch in enumerate(train_iterator): if iter_cnt == args.nb_iters: break batch_array = [ convert.concat_examples([x[idx] for x in batch], args.gpu) for idx in data_idxs ] batch_array = torch.FloatTensor([x.tolist() for x in batch_array]) batch_array = Variable(batch_array) optimizer.zero_grad() # zero out gradients loss, pred_y = net(batch_array)