YAECS
Yet Another Experiment Config System
DISCLAIMER: This repository is the public version of a repository that is the property ofReactive Reality. This repository IS NOT OFFICIAL and might not be maintained in the future. Some minor changes * are applied from theofficial repository (GitLab)(under lesser GNU license).
This package is a Config System which allows easy manipulation of config files for safe, clear and repeatable experiments. In a few words, it is:
built for Machine Learning with its constraints in mind, but also usable out-of-the-box for other kinds of projects;
built with scalability in mind and can adapt just as easily to large projects investigating hundreds of well-organised parameters across many experiments;
designed to encourage good coding practices for research purposes, and if used rigorously will ensure a number of highly desirable properties such that maintenance-less forward-compatibility of old configs, easy reproducibility of any experiment, and extreme clarity of former experiments for your future self or collaborators.
- Installation
- Getting started
- yaecs.config
- yaecs.config.config module
Configuration
Configuration.config_metadata
Configuration.load_config()
Configuration.build_from_configs()
Configuration.build_from_argv()
Configuration.create_variations()
Configuration.get_default_config_path()
Configuration.parameters_pre_processing()
Configuration.parameters_post_processing()
Configuration.set_variation_name()
- yaecs.config.config_base module
- yaecs.config.config_convenience module
ConfigConvenienceMixin
ConfigConvenienceMixin.config_metadata
ConfigConvenienceMixin.get
ConfigConvenienceMixin.get_dict
ConfigConvenienceMixin.get_main_config
ConfigConvenienceMixin.get_name
ConfigConvenienceMixin.get_parameter_names
ConfigConvenienceMixin.get_pre_post_processing_values
ConfigConvenienceMixin.compare()
ConfigConvenienceMixin.copy()
ConfigConvenienceMixin.details()
ConfigConvenienceMixin.items()
ConfigConvenienceMixin.keys()
ConfigConvenienceMixin.match_params()
ConfigConvenienceMixin.save()
ConfigConvenienceMixin.values()
- yaecs.config.config_getters module
ConfigGettersMixin
ConfigGettersMixin.get()
ConfigGettersMixin.get_all_linked_sub_configs()
ConfigGettersMixin.get_all_sub_configs()
ConfigGettersMixin.get_command_line_argument()
ConfigGettersMixin.get_dict()
ConfigGettersMixin.get_main_config()
ConfigGettersMixin.get_master_switch()
ConfigGettersMixin.get_modified_buffer()
ConfigGettersMixin.get_name()
ConfigGettersMixin.get_nesting_hierarchy()
ConfigGettersMixin.get_parameter_names()
ConfigGettersMixin.get_pre_post_processing_values()
ConfigGettersMixin.get_processed_param_name()
ConfigGettersMixin.get_save_file()
ConfigGettersMixin.get_reference_folder()
ConfigGettersMixin.get_type_hint()
ConfigGettersMixin.get_type_hints()
ConfigGettersMixin.get_variation_name()
ConfigGettersMixin.is_in_operation()
- yaecs.config.config_hooks module
- yaecs.config.config_processing_functions module
ConfigProcessingFunctionsMixin
ConfigProcessingFunctionsMixin.get_main_config
ConfigProcessingFunctionsMixin.get_processed_param_name
ConfigProcessingFunctionsMixin.check_param_in_list()
ConfigProcessingFunctionsMixin.copy_param()
ConfigProcessingFunctionsMixin.check_number_in_range()
ConfigProcessingFunctionsMixin.protected_param()
ConfigProcessingFunctionsMixin.folder_in_experiment()
ConfigProcessingFunctionsMixin.folder_in_experiment_if()
- yaecs.config.config_setters module
ConfigSettersMixin
ConfigSettersMixin.add_processing_function()
ConfigSettersMixin.add_processing_function_all()
ConfigSettersMixin.add_type_hint()
ConfigSettersMixin.set_sub_config()
ConfigSettersMixin.remove_value_before_postprocessing()
ConfigSettersMixin.remove_type_hint()
ConfigSettersMixin.save_value_before_postprocessing()
ConfigSettersMixin.set_post_processing()
ConfigSettersMixin.set_pre_processing()
ConfigSettersMixin.unset_sub_config()
- yaecs.config.config module
- yaecs
- yaecs.config_history module
ConfigHistory
ConfigHistory.compute_span()
ConfigHistory.compute_metrics()
ConfigHistory.compute_graph()
ConfigHistory.compute_colors()
ConfigHistory.draw_graph()
ConfigHistory.format_metrics()
ConfigHistory.format_span()
ConfigHistory.compute_difference_matrix()
ConfigHistory.get_experiment_name_from_file()
ConfigHistory.format_list()
ConfigHistory.make_processor()
- yaecs.experiment module
- yaecs.pytorch_lightning_utils module
- yaecs.user_utils module
- yaecs.yaecs_utils module
add_to_csv()
assign_order()
assign_yaml_tag()
compare_string_pattern()
compose()
dict_apply()
escape_symbols()
format_str()
get_config_from_argv()
get_quasi_bash_sys_argv()
get_order()
get_param_as_parsable_string()
hook()
is_type_valid()
lazy_import()
new_print()
parse_type()
Priority
recursive_set_attribute()
set_function_attribute()
update_state()
TqdmLogFormatter
TqdmLogger
- yaecs.config_history module
- License