def grid_spacing(self):
interval = [1,10]
p1 = Parameter('A', 'integer', lower=interval[0], upper=interval[1])
p2 = Parameter('B', 'continuous', lower=interval[0], upper=interval[1])
p3 = Parameter('C', 'categorical', possible_values=['Bla1', 'Bla2'])
p4 = Parameter('D', 'boolean')
grid_sizes = {'A': 5, 'B': 6}
grid_search = GridSearchOptimizer(model, [p1, p2, p3, p4], clf_score, grid_sizes)
grid = grid_search.grid
for params in grid:
self.assertIn(params['A'], range(*interval))
self.assertIn(params['B']>=interval[0])
self.assertIn(params['B']<=interval[1])
self.assertIn(params['C'], ['Bla1', 'Bla2'])
self.assertIn(params['D'], ['True', 'False'])
lenA = len(np.unique([params['A'] for params in grid]))
lenB = len(np.unique([params['B'] for params in grid]))
lenC = len(np.unique([params['C'] for params in grid]))
lenD = len(np.unique([params['D'] for params in grid]))
self.assertTrue((lenA==grid_sizes['A']) or (lenA==grid_sizes['A']+1))
self.assertTrue((lenB==grid_sizes['B']) or (lenB==grid_sizes['B']+1))
self.assertTrue((lenC==grid_sizes['C']) or (lenC==grid_sizes['C']+1))
self.assertTrue((lenD==grid_sizes['D']) or (lenD==grid_sizes['D']+1))
评论列表
文章目录