Sometimes, a user wants to tune a parameter only on a specific set of values. SigOpt now allows users to specify the set of discrete values through the
grid field when defining the Parameter.
Note that specifying the grid values is not the same as conducting grid search. Unlike grid search, every grid value is not guaranteed to appear in the Sugguestions generated by SigOpt. In other words, instead of exhuastively searching through all possible grid values, SigOpt intelligently suggests the most promising grid value. This is especially efficient when the user defines
grid on many Parameters.
Grid values can be applied to both
int parameter types. They are most beneficial when the set of discrete values are not evenly spaced, such as the example below.
dict( name="max_depth", type="int", grid=[3, 4, 7, 10] )
Grid values can also be used in conjunction with Parameter transformation for parameters that should be searched in the log space, such as in the example below.
dict( name="l2_regularization", type="double", grid=[1e-5, 1e-3, 0.33, 0.999], transformation="log" )