def quantile(self, f): qt_bound = inv_std_norm_cdf(1e-16) output = self.sigma * np.clip(inv_std_norm_cdf(f), qt_bound, -qt_bound) + self.mu assert not (np.isnan(output).any()), 'function returns NaN' assert not (np.isinf(output).any()), 'function returns inf' return output
def dquantile_dtheta(self, f): qt_bound = inv_std_norm_cdf(1e-16) output = np.array([ 1., 0.5 * np.clip(inv_std_norm_cdf(f), qt_bound, -qt_bound) / self.sigma ]) assert not (np.isnan(output).any().any()), 'function returns NaN' assert not (np.isinf(output).any().any()), 'function returns inf' return output
def dquantile_dtheta(self, f): qt_bound = inv_std_norm_cdf(1e-16) output = np.array([1., 0.5 * np.clip(inv_std_norm_cdf(f), qt_bound, -qt_bound)/self.sigma]) assert not(np.isnan(output).any().any()), 'function returns NaN' assert not(np.isinf(output).any().any()), 'function returns inf' return output
def quantile(self, f): qt_bound = inv_std_norm_cdf(1e-16) output = self.sigma * np.clip(inv_std_norm_cdf(f), qt_bound, -qt_bound) + self.mu assert not(np.isnan(output).any()), 'function returns NaN' assert not(np.isinf(output).any()), 'function returns inf' return output