def serialize(self, h5file): h5file.create_group('encoder') h5file['encoder'].attrs['name'] = self.encoder.name() h5file['encoder'].attrs['board_width'] = self.encoder.board_width h5file['encoder'].attrs['board_height'] = self.encoder.board_height h5file.create_group('model') kerasutil.save_model_to_hdf5_group(self.model, h5file['model'])
def serialize(self, h5file): # 9.9 h5file.create_group( 'encoder' ) # stores enough information to reconstruct the board encoder h5file['encoder'].attrs['name'] = self._encoder.name() h5file['encoder'].attrs['board_width'] = self._encoder.board_width h5file['encoder'].attrs['board_height'] = self._encoder.board_height h5file.create_group( 'model' ) # Uses build in Keras features to persist the model and its weights kerasutil.save_model_to_hdf5_group(self._model, h5file['model'])
def serialize(self, h5file_dir): if os.path.isfile(h5file_dir): os.remove(h5file_dir) with h5py.File(h5file_dir, 'a') as h5file: #This saves encoding details and the model to a h5py file h5file.create_group('encoder') h5file['encoder'].attrs['name'] = self.encoder.name() h5file['encoder'].attrs['board_width'] = self.encoder.board_width() h5file['encoder'].attrs[ 'board_height'] = self.encoder.board_height() h5file.create_group('model') kerasutil.save_model_to_hdf5_group(self.model, h5file['model']) """
def serialize(self, h5file): h5file.create_group( 'encoder' ) # stores enough information to reconstruct the board encoder h5file.create_group('meta') h5file['encoder'].attrs['name'] = 'zeroencoder' h5file['encoder'].attrs['board_size'] = self.encoder.board_size h5file['meta'].attrs['num_rounds'] = self.num_rounds h5file['meta'].attrs['c'] = self.c h5file.create_group( 'model' ) # Uses built in Keras features to persist the model and its weights kerasutil.save_model_to_hdf5_group(self.model, h5file['model'])
def save(self): # Backup the original file in case something goes wrong while # saving the new checkpoint. backup = None if os.path.exists(self.filename): backup = self.filename + '.bak' os.rename(self.filename, backup) output = h5py.File(self.filename, 'w') model_out = output.create_group('model') kerasutil.save_model_to_hdf5_group(self.model, model_out) metadata = output.create_group('metadata') metadata.attrs['epochs_completed'] = self.epochs_completed metadata.attrs['chunks_completed'] = self.chunks_completed metadata.attrs['num_chunks'] = self.num_chunks output.close() # If we got here, we no longer need the backup. if backup is not None: os.unlink(backup)