[docs]classRandomSelector(Selector):"""Select which computations to perform at random"""multiobjective=Truedef__init__(self,to_select:int):self._options=list()super().__init__(to_select=to_select)def_add_possibilities(self,keys:list,samples:np.ndarray,**kwargs):self._options.extend(zip(keys,samples.mean(axis=(0,2))))# Average along recipes and modelsdef_dispense(self)->Iterator[tuple[object,float]]:yield fromsample(self._options,min(self.to_select,len(self._options)))
[docs]classGreedySelector(RankingSelector):"""Select computations which are rated the best without any regard to model uncertainty"""def_assign_score(self,samples):mean=np.mean(samples,axis=(0,2))returnmean