def __init__(self, seed: Union[int, None] = None) -> None:
self._hyperparameters = OrderedDict() # type: OrderedDict[str, Hyperparameter]
self._hyperparameter_idx = dict() # type: Dict[str, int]
self._idx_to_hyperparameter = dict() # type: Dict[int, str]
# Use dictionaries to make sure that we don't accidently add
# additional keys to these mappings (which happened with defaultdict()).
# This once broke auto-sklearn's equal comparison of configuration
# spaces when _children of one instance contained all possible
# hyperparameters as keys and empty dictionaries as values while the
# other instance not containing these.
self._children = OrderedDict() # type: OrderedDict[str, OrderedDict[str, Union[None, AbstractCondition]]]
self._parents = OrderedDict() # type: OrderedDict[str, OrderedDict[str, Union[None, AbstractCondition]]]
# changing this to a normal dict will break sampling because there is
# no guarantee that the parent of a condition was evaluated before
self._conditionals = set() # type: Set[str]
self.forbidden_clauses = [] # type: List['AbstractForbiddenComponent']
self.random = np.random.RandomState(seed)
self._children['__HPOlib_configuration_space_root__'] = OrderedDict()
# caching
self._parent_conditions_of = dict()
self._child_conditions_of = dict()
self._parents_of = dict()
self._children_of = dict()
评论列表
文章目录