def METHOD_NAME(self) -> None:
    """Estimate new dilation rate based on trained branch_weights."""
    norm_w = self.normlize(self.branch_weights[:len(self.dilation_rates)])
    if self.verbose:
        print_log(
            'Estimate dilation {} with weight {}.'.format(
                self.dilation_rates,
                norm_w.detach().cpu().numpy().tolist()), 'current')
    sum0, sum1, w_sum = 0, 0, 0
    for i in range(len(self.dilation_rates)):
        sum0 += norm_w[i].item() * self.dilation_rates[i][0]
        sum1 += norm_w[i].item() * self.dilation_rates[i][1]
        w_sum += norm_w[i].item()
    estimated = [
        np.clip(
            int(round(sum0 / w_sum)), self.global_config['mmin'],
            self.global_config['mmax']).item(),
        np.clip(
            int(round(sum1 / w_sum)), self.global_config['mmin'],
            self.global_config['mmax']).item()
    ]
    self.op_layer.dilation = tuple(estimated)
    self.op_layer.padding = self.get_padding(self.op_layer.dilation)
    self.dilation_rates = [tuple(estimated)]
    if self.verbose:
        print_log(f'Estimate as {tuple(estimated)}', 'current')