class_docstr: The Parabolic kernel.
  
  ```none
  k(x, y) = 3 / 4 * amplitude * max(0, 1 - (||x_k - y_k|| / length_scale)**2)
  ```
  
  where the double-bars represent vector length (ie, Euclidean, or L2 norm).
  
  When `amplitude = 1` and `length_scale = 1`, this is the Epanechnikov kernel,
  which is often used for density estimation because of its optimality according
  to a notion of efficiency as
  `efficiency = sqrt(integral(u**2 k(u) du)) integral(k(u)**2 du)`. This
  optimality was first derived in a different context [1], and suggested for use
  in KDE by Epanechnikov in [2]. This is nicely summarized in [3], adjacent to
  Fig 3.1. The Epanechnikov kernel integrates to `1` over its support `[-1, 1]`.
  
  #### References
  
  [1] Hodges, Joseph L., and Erich L. Lehmann. "The efficiency of some
      nonparametric competitors of the $ t $-test." The Annals of Mathematical
      Statistics 27.2 (1956): 324-335.
  [2] Epanechnikov, Vassiliy A. "Non-parametric estimation of a multivariate
      probability density." Theory of Probability & Its Applications 14.1
      (1969): 153-158.
  [3] Silverman, Bernard W. Density estimation for statistics and data analysis.
      Vol. 26. CRC press, 1986.
class_docstr_tok: ["The","Parabolic","kernel",".","``","`","none","k","(","x",",","y",")","=","3","\/","4","*","amplitude","*","max","(","0",",","1","-","(","||x_k","-","y_k||","\/","length_scale",")","*","*","2",")","``","`","where","the","double-bars","represent","vector","length","(","ie",",","Euclidean",",","or","L2","norm",")",".","When","`","amplitude","=","1","`","and","`","length_scale","=","1","`",",","this","is","the","Epanechnikov","kernel",",","which","is","often","used","for","density","estimation","because","of","its","optimality","according","to","a","notion","of","efficiency","as","`","efficiency","=","sqrt","(","integral","(","u","*","*","2","k","(","u",")","du",")",")","integral","(","k","(","u",")","*","*","2","du",")","`",".","This","optimality","was","first","derived","in","a","different","context","[","1","]",",","and","suggested","for","use","in","KDE","by","Epanechnikov","in","[","2","]",".","This","is","nicely","summarized","in","[","3","]",",","adjacent","to","Fig","3.1",".","The","Epanechnikov","kernel","integrates","to","`","1","`","over","its","support","`","[","-1",",","1","]","`",".","#","#","#","#","References","[","1","]","Hodges",",","Joseph","L.",",","and","Erich","L.","Lehmann",".","``","The","efficiency","of","some","nonparametric","competitors","of","the","$","t","$","-test",".","''","The","Annals","of","Mathematical","Statistics","27.2","(","1956",")",":","324-335",".","[","2","]","Epanechnikov",",","Vassiliy","A",".","``","Non-parametric","estimation","of","a","multivariate","probability","density",".","''","Theory","of","Probability","&","Its","Applications","14.1","(","1969",")",":","153-158",".","[","3","]","Silverman",",","Bernard","W.","Density","estimation","for","statistics","and","data","analysis",".","Vol",".","26",".","CRC","press",",","1986","."]
docstr: Amplitude parameter.
docstr_tok: ["Amplitude","parameter","."]
code: def amplitude(self):
      """Amplitude parameter."""
      return self._amplitude
  
file_path: probability/tensorflow_probability/python/math/psd_kernels/parabolic.py
imports: import tensorflow.compat.v2
  from tensorflow_probability.python.internal import assert_util
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import parameter_properties
  from tensorflow_probability.python.internal import tensor_util
  from tensorflow_probability.python.math.psd_kernels import positive_semidefinite_kernel
  from tensorflow_probability.python.math.psd_kernels.internal import util
label_desc: Use image node_id 2 for calling the Parabolic obj's underlying member method code with example usage: obj.amplitude() and returns: self