我们从Python开源项目中,提取了以下44个代码示例,用于说明如何使用chainer.serializers.save_hdf5()。
def save_hdf5(filename, obj): gpu = (hasattr(obj, "xp") and obj.xp == cuda.cupy) if gpu: obj.to_cpu() serializers.save_hdf5(filename, obj) if gpu: obj.to_gpu()
def save(self): serializers.save_hdf5("conv.model", self.conv) if self.fcl_eliminated is False: serializers.save_hdf5("fc.model", self.fc)
def save_model(self, model_filename): """Save a network model to a file """ serializers.save_hdf5(model_filename, self.model) serializers.save_hdf5(model_filename + '.opt', self.optimizer)
def save(self, filename): tmp_filename = str(uuid.uuid4()) serializers.save_hdf5(tmp_filename, self) if os.path.isfile(filename): os.remove(filename) os.rename(tmp_filename, filename)
def save_model(dirname, model): model_filename = dirname + "/model.hdf5" param_filename = dirname + "/params.json" try: os.mkdir(dirname) except: pass if os.path.isfile(model_filename): os.remove(model_filename) serializers.save_hdf5(model_filename, model) params = { "vocab_size_enc": model.vocab_size_enc, "vocab_size_dec": model.vocab_size_dec, "ndim_embedding": model.ndim_embedding, "ndim_h": model.ndim_h, "num_layers": model.num_layers, "densely_connected": model.densely_connected, "pooling": model.pooling, "zoneout": model.zoneout, "dropout": model.dropout, "weightnorm": model.weightnorm, "wgain": model.wgain, "attention": isinstance(model, AttentiveSeq2SeqModel), } with open(param_filename, "w") as f: json.dump(params, f, indent=4, sort_keys=True, separators=(',', ': '))
def save_model(dirname, qrnn): model_filename = dirname + "/model.hdf5" param_filename = dirname + "/params.json" try: os.mkdir(dirname) except: pass if os.path.isfile(model_filename): os.remove(model_filename) serializers.save_hdf5(model_filename, qrnn) params = { "vocab_size": qrnn.vocab_size, "ndim_embedding": qrnn.ndim_embedding, "ndim_h": qrnn.ndim_h, "num_layers": qrnn.num_layers, "kernel_size": qrnn.kernel_size, "pooling": qrnn.pooling, "zoneout": qrnn.zoneout, "dropout": qrnn.dropout, "weightnorm": qrnn.weightnorm, "wgain": qrnn.wgain, "densely_connected": qrnn.densely_connected, "ignore_label": qrnn.ignore_label, } with open(param_filename, "w") as f: json.dump(params, f, indent=4, sort_keys=True, separators=(',', ': '))
def save(self): serializers.save_hdf5("fc.model", self.fc) print "model saved." serializers.save_hdf5("fc.optimizer", self.optimizer_fc) print "optimizer saved."
def save(self): serializers.save_hdf5("fc_value.model", self.fc_value) serializers.save_hdf5("fc_advantage.model", self.fc_advantage) print "model saved." serializers.save_hdf5("fc_value.optimizer", self.optimizer_fc_value) serializers.save_hdf5("fc_advantage.optimizer", self.optimizer_fc_advantage) print "optimizer saved."
def save(self, folder, epoch, batch): print('-'*5 , 'saving model') serializers.save_hdf5('{}/network_epoch{}_batch{}.model'.format(folder, epoch, batch), self.Networks[0]) print('-'*5 , 'saving optimizer') serializers.save_hdf5('{}/network_epoch{}_batch{}.state'.format(folder, epoch, batch), self.Optimizer) return
def save(self, model_filename, optimizer_filename): """ Save the state of the model & optimizer to disk """ serializers.save_hdf5(model_filename, self.model) serializers.save_hdf5(optimizer_filename, self.optimizer)
def save_params(self, epoch): print "==> saving state %s" % self.out_model_dir serializers.save_hdf5("%s/net_model_classifier_%d.h5"%(self.out_model_dir, epoch),self.network)
def save_params(self, epoch): print "==> saving state %s" % self.out_model_dir serializers.save_hdf5("%s/net_model_enc_%d.h5"%(self.out_model_dir, epoch),self.enc) serializers.save_hdf5("%s/net_model_dec_%d.h5"%(self.out_model_dir, epoch),self.dec)
def save(self, filename): if os.path.isfile(filename): os.remove(filename) serializers.save_hdf5(filename, self)
def save(self, filename): tmp_filename = filename + "." + str(uuid.uuid4()) serializers.save_hdf5(tmp_filename, self) if os.path.isfile(filename): os.remove(filename) os.rename(tmp_filename, filename)
def saveModels(self, savemodelName): print('save the model') serializers.save_hdf5(savemodelName, self.model) print('save the optimizer') serializers.save_hdf5(savemodelName[:-5]+ 'state', self.optimizer)
def save(self,filename): cs.save_hdf5(filename,self.func.to_cpu())
def save(self,filename): #cs.save_hdf5(filename,self.func.copy().to_cpu()) cs.save_hdf5(filename,self.func.copy())
def save(self,filename): cs.save_hdf5(filename,self.model.copy().to_cpu())
def save(self,filename): cs.save_hdf5(filename,self.func.copy().to_cpu())
def save(self): serializers.save_hdf5("conv.model", self.conv) serializers.save_hdf5("fc_value.model", self.fc_value) serializers.save_hdf5("fc_advantage.model", self.fc_advantage)
def save_model(dirname, model): model_filename = dirname + "/model.hdf5" param_filename = dirname + "/params.json" try: os.mkdir(dirname) except: pass if os.path.isfile(model_filename): os.remove(model_filename) serializers.save_hdf5(model_filename, model) params = { "vocab_size": model.vocab_size, "ndim_embedding": model.ndim_embedding, "ndim_h": model.ndim_h, "num_layers_per_block": model.num_layers_per_block, "num_blocks": model.num_blocks, "kernel_size": model.kernel_size, "dropout": model.dropout, "weightnorm": model.weightnorm, "wgain": model.wgain, "ignore_label": model.ignore_label, } with open(param_filename, "w") as f: json.dump(params, f, indent=4, sort_keys=True, separators=(',', ': '))
def save(self, model_dir="./"): try: os.mkdir(model_dir) except: pass serializers.save_hdf5(model_dir + "/wavenet.model", self.chain) serializers.save_hdf5(model_dir + "/wavenet.opt", self.optimizer)
def make_snapshot(self, model): # TODO: get model from Optimizer prefix = "{}_{}".format(self.out_file, self.optimizer.epoch) serializers.save_hdf5(prefix + ".model", model) serializers.save_hdf5(prefix + ".state", self.optimizer) print("Snapshot created")
def save(self): dir = "model" serializers.save_hdf5(dir + "/dqn_fc.model", self.fc) print "model saved." serializers.save_hdf5(dir + "/dqn_fc.optimizer", self.optimizer_fc) print "optimizer saved."
def save(self): dir = "model" serializers.save_hdf5(dir + "/bddqn_shared_fc.model", self.shared_fc) serializers.save_hdf5(dir + "/bddqn_shared_fc.optimizer", self.optimizer_shared_fc) serializers.save_hdf5(dir + "/bddqn_head_fc.model", self.head_fc) serializers.save_hdf5(dir + "/bddqn_head_fc.optimizer", self.optimizer_head_fc)
def save(self, dir=None): if dir is None: raise Exception() try: os.mkdir(dir) except: pass for attr in vars(self): prop = getattr(self, attr) if isinstance(prop, chainer.Chain) or isinstance(prop, chainer.optimizer.GradientMethod): serializers.save_hdf5(dir + "/%s_%s.hdf5" % (self.name, attr), prop) print "model saved."
def train(args): trace('loading corpus ...') with open(args.source) as fp: trees = [make_tree(l) for l in fp] trace('extracting leaf nodes ...') word_lists = [extract_words(t) for t in trees] lower_lists = [[w.lower() for w in words] for words in word_lists] trace('extracting gold operations ...') op_lists = [make_operations(t) for t in trees] trace('making vocabulary ...') word_vocab = Vocabulary.new(lower_lists, args.vocab) phrase_set = set() semiterminal_set = set() for tree in trees: phrase_set |= set(extract_phrase_labels(tree)) semiterminal_set |= set(extract_semiterminals(tree)) phrase_vocab = Vocabulary.new([list(phrase_set)], len(phrase_set), add_special_tokens=False) semiterminal_vocab = Vocabulary.new([list(semiterminal_set)], len(semiterminal_set), add_special_tokens=False) trace('converting data ...') word_lists = [convert_word_list(x, word_vocab) for x in word_lists] op_lists = [convert_op_list(x, phrase_vocab, semiterminal_vocab) for x in op_lists] trace('start training ...') parser = Parser( args.vocab, args.embed, args.queue, args.stack, args.srstate, len(phrase_set), len(semiterminal_set), ) if args.use_gpu: parser.to_gpu() opt = optimizers.AdaGrad(lr = 0.005) opt.setup(parser) opt.add_hook(optimizer.GradientClipping(5)) for epoch in range(args.epoch): n = 0 for samples in batch(zip(word_lists, op_lists), args.minibatch): parser.zerograds() loss = XP.fzeros(()) for word_list, op_list in zip(*samples): trace('epoch %3d, sample %6d:' % (epoch + 1, n + 1)) loss += parser.forward(word_list, op_list, 0) n += 1 loss.backward() opt.update() trace('saving model ...') prefix = args.model + '.%03.d' % (epoch + 1) word_vocab.save(prefix + '.words') phrase_vocab.save(prefix + '.phrases') semiterminal_vocab.save(prefix + '.semiterminals') parser.save_spec(prefix + '.spec') serializers.save_hdf5(prefix + '.weights', parser) trace('finished.')
def train(args): trace('loading corpus ...') with open(args.source) as fp: trees = [make_tree(l) for l in fp] trace('extracting leaf nodes ...') word_lists = [extract_words(t) for t in trees] trace('extracting gold operations ...') op_lists = [make_operations(t) for t in trees] trace('making vocabulary ...') word_vocab = Vocabulary.new(word_lists, args.vocab) phrase_set = set() semi_set = set() for tree in trees: phrase_set |= set(extract_phrase_labels(tree)) semi_set |= set(extract_semi_labels(tree)) phrase_vocab = Vocabulary.new([list(phrase_set)], len(phrase_set), add_special_tokens=False) semi_vocab = Vocabulary.new([list(semi_set)], len(semi_set), add_special_tokens=False) trace('converting data ...') word_lists = [convert_word_list(x, word_vocab) for x in word_lists] op_lists = [convert_op_list(x, phrase_vocab, semi_vocab) for x in op_lists] trace('start training ...') parser = Parser( args.vocab, args.embed, args.queue, args.stack, len(phrase_set), len(semi_set), ) if USE_GPU: parser.to_gpu() opt = optimizers.AdaGrad(lr = 0.005) opt.setup(parser) opt.add_hook(optimizer.GradientClipping(5)) for epoch in range(args.epoch): n = 0 for samples in batch(zip(word_lists, op_lists), args.minibatch): parser.zerograds() loss = my_zeros((), np.float32) for word_list, op_list in zip(*samples): trace('epoch %3d, sample %6d:' % (epoch + 1, n + 1)) loss += parser.forward(word_list, op_list, 0) n += 1 loss.backward() opt.update() trace('saving model ...') prefix = args.model + '.%03.d' % (epoch + 1) word_vocab.save(prefix + '.words') phrase_vocab.save(prefix + '.phrases') semi_vocab.save(prefix + '.semiterminals') parser.save_spec(prefix + '.spec') serializers.save_hdf5(prefix + '.weights', parser) trace('finished.')
def train(args): trace('loading corpus ...') with open(args.source) as fp: trees = [make_tree(l) for l in fp] trace('extracting leaf nodes ...') word_lists = [extract_words(t) for t in trees] lower_lists = [[w.lower() for w in words] for words in word_lists] trace('extracting gold operations ...') op_lists = [make_operations(t) for t in trees] trace('making vocabulary ...') word_vocab = Vocabulary.new(lower_lists, args.vocab) phrase_set = set() semiterminal_set = set() for tree in trees: phrase_set |= set(extract_phrase_labels(tree)) semiterminal_set |= set(extract_semiterminals(tree)) phrase_vocab = Vocabulary.new([list(phrase_set)], len(phrase_set), add_special_tokens=False) semiterminal_vocab = Vocabulary.new([list(semiterminal_set)], len(semiterminal_set), add_special_tokens=False) trace('converting data ...') word_lists = [convert_word_list(x, word_vocab) for x in word_lists] op_lists = [convert_op_list(x, phrase_vocab, semiterminal_vocab) for x in op_lists] trace('start training ...') parser = Parser( args.vocab, args.queue, args.stack, args.srstate, len(phrase_set), len(semiterminal_set), ) if args.use_gpu: parser.to_gpu() opt = optimizers.AdaGrad(lr = 0.005) opt.setup(parser) opt.add_hook(optimizer.GradientClipping(5)) for epoch in range(args.epoch): n = 0 for samples in batch(zip(word_lists, op_lists), args.minibatch): parser.zerograds() loss = XP.fzeros(()) for word_list, op_list in zip(*samples): trace('epoch %3d, sample %6d:' % (epoch + 1, n + 1)) loss += parser.forward(word_list, op_list, 0) n += 1 loss.backward() opt.update() trace('saving model ...') prefix = args.model + '.%03.d' % (epoch + 1) word_vocab.save(prefix + '.words') phrase_vocab.save(prefix + '.phrases') semiterminal_vocab.save(prefix + '.semiterminals') parser.save_spec(prefix + '.spec') serializers.save_hdf5(prefix + '.weights', parser) trace('finished.')
def train(args): trace('loading corpus ...') with open(args.source) as fp: trees = [make_tree(l) for l in fp] trace('extracting leaf nodes ...') word_lists = [extract_words(t) for t in trees] lower_lists = [[w.lower() for w in words] for words in word_lists] trace('extracting gold operations ...') op_lists = [make_operations(t) for t in trees] trace('making vocabulary ...') word_vocab = Vocabulary.new(lower_lists, args.vocab) phrase_set = set() semiterminal_set = set() for tree in trees: phrase_set |= set(extract_phrase_labels(tree)) semiterminal_set |= set(extract_semiterminals(tree)) phrase_vocab = Vocabulary.new([list(phrase_set)], len(phrase_set), add_special_tokens=False) semiterminal_vocab = Vocabulary.new([list(semiterminal_set)], len(semiterminal_set), add_special_tokens=False) trace('converting data ...') word_lists = [convert_word_list(x, word_vocab) for x in word_lists] op_lists = [convert_op_list(x, phrase_vocab, semiterminal_vocab) for x in op_lists] trace('start training ...') parser = Parser( args.vocab, args.embed, args.char_embed, args.queue, args.stack, args.srstate, len(phrase_set), len(semiterminal_set), ) if args.use_gpu: parser.to_gpu() opt = optimizers.AdaGrad(lr = 0.005) opt.setup(parser) opt.add_hook(optimizer.GradientClipping(5)) for epoch in range(args.epoch): n = 0 for samples in batch(zip(word_lists, op_lists), args.minibatch): parser.zerograds() loss = XP.fzeros(()) for word_list, op_list in zip(*samples): trace('epoch %3d, sample %6d:' % (epoch + 1, n + 1)) loss += parser.forward(word_list, op_list, 0) n += 1 loss.backward() opt.update() trace('saving model ...') prefix = args.model + '.%03.d' % (epoch + 1) word_vocab.save(prefix + '.words') phrase_vocab.save(prefix + '.phrases') semiterminal_vocab.save(prefix + '.semiterminals') parser.save_spec(prefix + '.spec') serializers.save_hdf5(prefix + '.weights', parser) trace('finished.')
def train(args): trace('loading corpus ...') with open(args.source) as fp: trees = [make_tree(l) for l in fp] trace('extracting leaf nodes ...') word_lists = [extract_words(t) for t in trees] lower_lists = [[w.lower() for w in words] for words in word_lists] trace('extracting gold operations ...') op_lists = [make_operations(t) for t in trees] trace('making vocabulary ...') word_vocab = Vocabulary.new(lower_lists, args.vocab) phrase_set = set() semiterminal_set = set() for tree in trees: phrase_set |= set(extract_phrase_labels(tree)) semiterminal_set |= set(extract_semiterminals(tree)) phrase_vocab = Vocabulary.new([list(phrase_set)], len(phrase_set), add_special_tokens=False) semiterminal_vocab = Vocabulary.new([list(semiterminal_set)], len(semiterminal_set), add_special_tokens=False) trace('converting data ...') word_lists = [convert_word_list(x, word_vocab) for x in word_lists] op_lists = [convert_op_list(x, phrase_vocab, semiterminal_vocab) for x in op_lists] trace('start training ...') parser = Parser( args.vocab, args.queue, args.stack, len(phrase_set), len(semiterminal_set), ) if args.use_gpu: parser.to_gpu() opt = optimizers.AdaGrad(lr = 0.005) opt.setup(parser) opt.add_hook(optimizer.GradientClipping(5)) for epoch in range(args.epoch): n = 0 for samples in batch(zip(word_lists, op_lists), args.minibatch): parser.zerograds() loss = XP.fzeros(()) for word_list, op_list in zip(*samples): trace('epoch %3d, sample %6d:' % (epoch + 1, n + 1)) loss += parser.forward(word_list, op_list, 0) n += 1 loss.backward() opt.update() trace('saving model ...') prefix = args.model + '.%03.d' % (epoch + 1) word_vocab.save(prefix + '.words') phrase_vocab.save(prefix + '.phrases') semiterminal_vocab.save(prefix + '.semiterminals') parser.save_spec(prefix + '.spec') serializers.save_hdf5(prefix + '.weights', parser) trace('finished.')
def train(epoch_num): image_groups, sentence_groups = make_groups(train_image_ids, train_sentences) test_image_groups, test_sentence_groups = make_groups(test_image_ids, test_sentences, train=False) for epoch in range(epoch_num): batches = random_batches(image_groups, sentence_groups) sum_loss = 0 sum_acc = 0 sum_size = 0 batch_num = len(batches) for i, (image_id_batch, sentence_batch) in enumerate(batches): loss, acc, size = forward(caption_net, images[image_id_batch], sentence_batch) caption_net.cleargrads() loss.backward() loss.unchain_backward() optimizer.update() sentence_length = sentence_batch.shape[1] sum_loss += float(loss.data) * size sum_acc += acc * size sum_size += size if (i + 1) % 500 == 0: print '{} / {} loss: {} accuracy: {}'.format(i + 1, batch_num, sum_loss / sum_size, sum_acc / sum_size) print 'epoch: {} done'.format(epoch + 1) print 'train loss: {} accuracy: {}'.format(sum_loss / sum_size, sum_acc / sum_size) sum_loss = 0 sum_acc = 0 sum_size = 0 for image_ids, sentences in zip(test_image_groups, test_sentence_groups): if len(sentences) == 0: continue size = len(sentences) for i in range(0, size, batch_size): image_id_batch = image_ids[i:i + batch_size] sentence_batch = sentences[i:i + batch_size] loss, acc, size = forward(caption_net, images[image_id_batch], sentence_batch, train=False) sentence_length = sentence_batch.shape[1] sum_loss += float(loss.data) * size sum_acc += acc * size sum_size += size print 'test loss: {} accuracy: {}'.format(sum_loss / sum_size, sum_acc / sum_size) serializers.save_hdf5(args.output + '_{0:04d}.model'.format(epoch), caption_net) serializers.save_hdf5(args.output + '_{0:04d}.state'.format(epoch), optimizer)