#################################################################################### # Build the Model #################################################################################### vocab_size = dataset.vocab_size ques_length = dataset.ques_length ans_length = dataset.ans_length + 1 his_length = dataset.ques_length + dataset.ans_length itow = dataset.itow img_feat_size = opt.conv_feat_size netE = _netE(opt.model, opt.ninp, opt.nhid, opt.nlayers, opt.dropout, img_feat_size) netW = model._netW(vocab_size, opt.ninp, opt.dropout) netG = _netG(opt.model, vocab_size, opt.ninp, opt.nhid, opt.nlayers, opt.dropout) critG = model.LMCriterion() sampler = model.gumbel_sampler() if opt.cuda: netW.cuda() netE.cuda() netG.cuda() critG.cuda() sampler.cuda() if opt.model_path != '': netW.load_state_dict(checkpoint['netW']) netE.load_state_dict(checkpoint['netE'])
num_workers=int(opt.workers)) #################################################################################### # Build the Model #################################################################################### vocab_size = dataset.vocab_size ques_length = dataset.ques_length ans_length = dataset.ans_length + 1 his_length = dataset.ans_length + dataset.ques_length itow = dataset.itow img_feat_size = 512 print('init Discriminator model...') netE_d = _netE(opt.model, opt.ninp, opt.nhid, opt.nlayers, opt.dropout, img_feat_size) netW_d = model._netW(vocab_size, opt.ninp, opt.dropout) netD = model._netD(opt.model, opt.ninp, opt.nhid, opt.nlayers, vocab_size, opt.dropout) critD = model.nPairLoss(opt.ninp, opt.margin) if opt.model_path_D != '': print('Loading Discriminator model...') netW_d.load_state_dict(checkpoint_D['netW']) netE_d.load_state_dict(checkpoint_D['netE']) netD.load_state_dict(checkpoint_D['netD']) print('init Generative model...') netE_g = _netE(opt.model, opt.ninp, opt.nhid, opt.nlayers, opt.dropout, img_feat_size) netW_g = model._netW(vocab_size, opt.ninp, opt.dropout) netG = _netG(opt.model, vocab_size, opt.ninp, opt.nhid, opt.nlayers,
dataloader_val = torch.utils.data.DataLoader(dataset_val, batch_size=1, shuffle=False, num_workers=int(opt.workers)) #################################################################################### # Build the Model #################################################################################### n_neg = opt.negative_sample vocab_size = dataset.vocab_size ques_length = dataset.ques_length ans_length = dataset.ans_length + 1 his_length = dataset.ans_length + dataset.ques_length itow = dataset.itow img_feat_size = 512 netE = _netE(opt.model, opt.ninp, opt.nhid, opt.nlayers, opt.dropout, img_feat_size) netW = model._netW(vocab_size, opt.ninp, opt.dropout) netD = model._netD(opt.model, opt.ninp, opt.nhid, opt.nlayers, vocab_size, opt.dropout) critD =model.nPairLoss(opt.ninp, opt.margin) if opt.model_path != '': # load the pre-trained model. netW.load_state_dict(checkpoint['netW']) netE.load_state_dict(checkpoint['netE']) netD.load_state_dict(checkpoint['netD']) if opt.cuda: # ship to cuda, if has GPU netW.cuda(), netE.cuda(), netD.cuda(), critD.cuda() #################################################################################### # training model ####################################################################################
num_workers=int(opt.workers)) #################################################################################### # Build the Model #################################################################################### n_words = dataset_val.vocab_size ques_length = dataset_val.ques_length ans_length = dataset_val.ans_length + 1 his_length = ques_length + dataset_val.ans_length itow = dataset_val.itow img_feat_size = 512 netE = _netE(opt.model, opt.ninp, opt.nhid, opt.nlayers, opt.dropout, img_feat_size) netW = model._netW(n_words, opt.ninp, opt.dropout) netD = model._netD(opt.model, opt.ninp, opt.nhid, opt.nlayers, n_words, opt.dropout) critD = model.nPairLoss(opt.nhid, 2) netW.load_state_dict(checkpoint['netW']) netE.load_state_dict(checkpoint['netE']) netD.load_state_dict(checkpoint['netD']) print('Loading model Success!') if opt.cuda: # ship to cuda, if has GPU netW.cuda(), netE.cuda(), netD.cuda() critD.cuda() n_neg = 100 ####################################################################################
dataloader_val = torch.utils.data.DataLoader(dataset_val, batch_size=opt.batchSize, shuffle=False, num_workers=int(opt.workers)) #################################################################################### # Build the Model #################################################################################### n_words = dataset_val.vocab_size ques_length = dataset_val.ques_length ans_length = dataset_val.ans_length + 1 his_length = ques_length+dataset_val.ans_length itow = dataset_val.itow img_feat_size = 512 netE = _netE(opt.model, opt.ninp, opt.nhid, opt.nlayers, opt.dropout, img_feat_size) netW = model._netW(n_words, opt.ninp, opt.dropout) netG = _netG(opt.model, n_words, opt.ninp, opt.nhid, opt.nlayers, opt.dropout) critG = model.LMCriterion() sampler = model.gumbel_sampler() if opt.cuda: netW.cuda() netE.cuda() netG.cuda() critG.cuda() sampler.cuda() if opt.model_path != '': netW.load_state_dict(checkpoint['netW_g']) netE.load_state_dict(checkpoint['netE_g'])
shuffle=False, num_workers=int(opt.workers)) #################################################################################### # Build the Model #################################################################################### n_neg = opt.negative_sample vocab_size = dataset.vocab_size ques_length = dataset.ques_length #ans_length = dataset.ans_length + 1 ans_length = dataset.ans_length his_length = dataset.ans_length + dataset.ques_length itow = dataset.itow netE = _netE(opt.model, opt.ninp, opt.nhid, opt.nlayers, opt.dropout) netW = model._netW(vocab_size, opt.ninp, opt.dropout, dataset.pretrained_wemb) netD = model._netD(opt.model, opt.ninp, opt.nhid, opt.nlayers, vocab_size, opt.dropout) critD = model.nPairLoss(opt.ninp, opt.margin, 0.1) if opt.model_path != '': # load the pre-trained model. netW.load_state_dict(checkpoint['netW']) netE.load_state_dict(checkpoint['netE']) netD.load_state_dict(checkpoint['netD']) if opt.cuda: # ship to cuda, if has GPU netW.cuda(), netE.cuda(), netD.cuda(), critD.cuda() ####################################################################################
dataloader_val = torch.utils.data.DataLoader(dataset_val, batch_size=10, shuffle=False, num_workers=int(opt.workers)) #################################################################################### # Build the Model #################################################################################### vocab_size = dataset.vocab_size ques_length = dataset.ques_length ans_length = dataset.ans_length + 1 his_length = dataset.ans_length + dataset.ques_length itow = dataset.itow img_feat_size = 512 print('init Discriminator model...') netE_d = _netE(opt.model, opt.ninp, opt.nhid, opt.nlayers, opt.dropout, img_feat_size) netW_d = model._netW(vocab_size, opt.ninp, opt.dropout) netD = model._netD(opt.model, opt.ninp, opt.nhid, opt.nlayers, vocab_size, opt.dropout) critD =model.nPairLoss(opt.ninp, opt.margin) if opt.model_path_D != '' : print('Loading Discriminator model...') netW_d.load_state_dict(checkpoint_D['netW']) netE_d.load_state_dict(checkpoint_D['netE']) netD.load_state_dict(checkpoint_D['netD']) print('init Generative model...') netE_g = _netE(opt.model, opt.ninp, opt.nhid, opt.nlayers, opt.dropout, img_feat_size) netW_g = model._netW(vocab_size, opt.ninp, opt.dropout) netG = _netG(opt.model, vocab_size, opt.ninp, opt.nhid, opt.nlayers, opt.dropout) sampler = model.gumbel_sampler() critG = model.G_loss(opt.ninp)
shuffle=False, num_workers=int(opt.workers)) #################################################################################### # Build the Model #################################################################################### n_words = dataset_val.vocab_size ques_length = dataset_val.ques_length ans_length = dataset_val.ans_length + 1 his_length = ques_length + dataset_val.ans_length itow = dataset_val.itow img_feat_size = 512 netE = _netE(opt.model, opt.ninp, opt.nhid, opt.nlayers, opt.dropout, img_feat_size) netW = model._netW(n_words, opt.ninp, opt.dropout, dataset_val.pretrained_wemb) netD = model._netD(opt.model, opt.ninp, opt.nhid, opt.nlayers, n_words, opt.dropout) #critD = model.nPairLoss(opt.nhid, 2) if opt.model_path != '': # load the pre-trained model. netW.load_state_dict(checkpoint['netW']) netE.load_state_dict(checkpoint['netE']) netD.load_state_dict(checkpoint['netD']) print('Loading model Success!') if opt.cuda: # ship to cuda, if has GPU netW.cuda(), netE.cuda(), netD.cuda() # critD.cuda() n_neg = 100