5.1.1.9. FedEval.utils

5.1.1.9.1. Submodules

5.1.1.9.2. Package Contents

5.1.1.9.2.1. Classes

ParamParser

an implentation of ParamParserInterface.

ParamParserInterface

Abstract class of ParamParser, containing basic params parse functions.

LogAnalysis

History

5.1.1.9.2.2. Functions

pickle_string_to_obj(s)

obj_to_pickle_string(x[, file_path])

list_tree(value_lists)

get_emd(non_iid_data)

multiple_process(distribute_list, partition_data_func, ...)

rtype:

FedEval.utils.pickle_string_to_obj(s)
FedEval.utils.obj_to_pickle_string(x, file_path=None)
FedEval.utils.list_tree(value_lists)
FedEval.utils.get_emd(non_iid_data)
class FedEval.utils.ParamParser

Bases: ParamParserInterface

an implentation of ParamParserInterface.

static parse_model()

construct a tensorflow model according to the model configuration.

Raises:

NotImplementedError – raised when called but not overriden.

Returns:

the model constructed.

Return type:

tf.keras.Model

static parse_data(client_id) Tuple[XYData, XYData, XYData]

load data for train/test/validation purpose according to the data configuration.

client_id

the id of the client which issued this data parse procedure.

Raises:

NotImplementedError – raised when called but not overriden.

Returns:

[data for train, data for test, data for validation]

Return type:

Tuple[XYData, XYData, XYData]

class FedEval.utils.ParamParserInterface

Abstract class of ParamParser, containing basic params parse functions.

Raises:

NotImplementedError – raised when methods in this class was not implemented.

abstract static parse_model() tensorflow.keras.Model

construct a tensorflow model according to the model configuration.

Raises:

NotImplementedError – raised when called but not overriden.

Returns:

the model constructed.

Return type:

tf.keras.Model

abstract static parse_data(client_id) Tuple[XYData, XYData, XYData]

load data for train/test/validation purpose according to the data configuration.

client_id

the id of the client which issued this data parse procedure.

Raises:

NotImplementedError – raised when called but not overriden.

Returns:

[data for train, data for test, data for validation]

Return type:

Tuple[XYData, XYData, XYData]

class FedEval.utils.LogAnalysis(log_dir)
plot(join_keys=('data_config$$dataset',), label_keys=('model_config$$FedModel$$name',))
parse_dict_keys(config, front='')
recursive_retrieve(dict_data, string_keys)
retrieve_diff_configs()
parse_results()
aggregate_csv_results()
to_csv(file_name='average_results.csv')
process_central_simulate_results(log_files)
process_fedsgd_simulate_results(log_files)
process_local_simulate_results(log_files)
class FedEval.utils.History(path)
_real_config_id(config_id)
check_exist(config_id) bool
update(config_id, log_path)
flush()
delete(config_id)
query(config_id)
FedEval.utils.multiple_process(distribute_list, partition_data_func, task_function, n_jobs, reduce_function, parameter_list)
Return type: