ConfigSpace
ConfigSpace copied to clipboard
Domain specific language for configuration spaces in Python/Cython. Useful for hyperparameter optimization and algorithm configuration.
I tried to incorporate the new prior system with SMAC and noticed some bugs regarding NaN values introduced by conditional hyperparameters. This PR resolves all issues I have encountered with...
If I change the dictionary of a configuration, it automatically changes the internal config. See example below. ``` from ConfigSpace import ConfigurationSpace cs = ConfigurationSpace( { "a": (0.1, 1.5), "b":...
Resolves #194.
fix #133 One can now directly pass a Callable when creating a `CategoricalHyperparameter`. This is streamlining prototyping. Couple of examples: - `CategoricalHyperparameter('final_activation', [nn.Softmax(dim=1), nn.Sigmoid()])` - `CategoricalHyperparameter('loss_function', [nn.L1Loss, nn.MSELoss])` Previously, one...
```python from ConfigSpace import NormalIntegerHyperparameter, UniformIntegerHyperparameter # Same bounds and q u = UniformIntegerHyperparameter("u", 1, 10, q=3) n = NormalIntegerHyperparameter("n", mu=5, sigma=2, q=3, lower=1, upper=10) set([n.sample(rs) for _ in range(100)])...
In theory, I don't see why this shouldn't be possible other than it adds an `if` check to the sample which may be a speed thing? In general, it would...
```python from ConfigSpace import UniformIntegerHyperparameter u = UniformIntegerHyperparameter("u", 1, 10, log=True) rs = np.random.RandomState(3) u.get_neighbors(3, rs) # Hangs.... ```
```python import numpy as np from ConfigSpace import UniformIntegerHyperparameter u = UniformIntegerHyperparameter("u", 1, 10, q=3) rs = np.random.RandomState(3) u._sample(rs, 10) Out[21]: array([0.0499991, 0.3499997, 0.6500003, 0.3499997, 0.6500003, 0.6500003, 0.0499991, 0.6500003, 0.3499997,...
Currently, the categorical hyperparameters pick the first category as the default. This might be a sensible default for categorical hyperparameters with eqaul weights, but in case there are weights attached,...
How to realize the condition likes a+b < c?