class_docstr: Horseshoe prior.
  
  There is no analytical form for the horeshoe prior's pdf, but it
  satisfies a tight bound of the form `lb(x) <= pdf(x) <= ub(x)`, where
  
      lb(x) = K/2 * log(1 + 4 * (scale / x) ** 2)
      ub(x) = K * log(1 + 2 * (scale / x) ** 2)
  
  with `K = 1 / sqrt(2 pi^3)`. Here, we simply use
  
      pdf(x) \sim (lb(x) + ub(x)) / 2
  
  Reference: C. M. Carvalho, N. G. Polson, and J. G. Scott.
      The horseshoe estimator for sparse signals. Biometrika, 2010.
class_docstr_tok: ["Horseshoe","prior",".","There","is","no","analytical","form","for","the","horeshoe","prior","'s","pdf",",","but","it","satisfies","a","tight","bound","of","the","form","`","lb","(","x",")","<","=","pdf","(","x",")","<","=","ub","(","x",")","`",",","where","lb","(","x",")","=","K\/2","*","log","(","1","+","4","*","(","scale","\/","x",")","*","*","2",")","ub","(","x",")","=","K","*","log","(","1","+","2","*","(","scale","\/","x",")","*","*","2",")","with","`","K","=","1","\/","sqrt","(","2","pi^3",")","`",".","Here",",","we","simply","use","pdf","(","x",")","\\sim","(","lb","(","x",")","+","ub","(","x",")",")","\/","2","Reference",":","C.","M.","Carvalho",",","N.","G.","Polson",",","and","J.","G.","Scott",".","The","horseshoe","estimator","for","sparse","signals",".","Biometrika",",","2010","."]
code: def expand(self, expand_shape, _instance=None):
      batch_shape = torch.Size(expand_shape)
      return HorseshoePrior(self.scale.expand(batch_shape))
  
file_path: gpytorch/gpytorch/priors/horseshoe_prior.py
imports: import math
  from numbers import Number
  import torch
  from torch.distributions import constraints, HalfCauchy, Normal
  from torch.nn import Module
  from gpytorch.priors.prior import Prior
label_desc: Use image node_id 4 for calling the HorseshoePrior obj's underlying member method code with example usage: obj.expand(expand_shape, _instance) and returns: HorseshoePrior