Source code for common.graph.nn_graph_manager

import os
import datetime

[docs]class NeuralNetModel : variable = {} dict = {} graph = {} sess = {} tf = {} init = {} saver = {}
[docs] def check_duplicate(key, data, target, extra=None): """ check duplicate nn_id for none necessary memory use :param key: insert key :param data: inert data :param target: target variable to update :param extra: if there is extra action to do :return boolean : always return True """ try : dicts = list(map(lambda x : x.split('__')[0] ,list(target.keys()))) for dict in dicts : if key.split('__')[0] == dict : if (extra == 'sess') : target[key].close() del target[key] except Exception as e : pass finally : target[key] = data return True
[docs] def set_variable(key, data): NeuralNetModel.check_duplicate(key, data, NeuralNetModel.variable)
[docs] def set_dict(key, data): NeuralNetModel.check_duplicate(key, data, NeuralNetModel.dict)
[docs] def set_graph(key, data): NeuralNetModel.check_duplicate(key, data, NeuralNetModel.graph)
[docs] def set_sess(key, data): NeuralNetModel.check_duplicate(key, data, NeuralNetModel.sess, extra='sess')
[docs] def set_tf(key, data): NeuralNetModel.check_duplicate(key, data, NeuralNetModel.tf)
[docs] def set_init(key, data): NeuralNetModel.check_duplicate(key, data, NeuralNetModel.init)
[docs] def set_saver(key, data): NeuralNetModel.check_duplicate(key, data, NeuralNetModel.saver)