0

I am fitting distributions on observation data to make generalizations about the frequencies of different types of natural events. Right now I am focused on the generalized extreme value (GEV) distribution.

The PDF of a standardized GEV (loc = 0, scale = 1) is pasted from the SciPy documentation below

$$ f(x, c) = \begin{cases} \exp(-\exp(-x)) \exp(-x) &\text{for } c = 0\\ \exp(-(1-c x)^{1/c}) (1-c x)^{1/c-1} &\text{for } x \le 1/c, c > 0 \end{cases}$$

A fit for the GEV can be obtained using Maximum Likelihood Estimation (MLE) or Method of Moments (MM) in SciPy or the R extRemes package.

I have noticed the TensorFlow package can also be used to model the GEV distribution (with methods like experimental_fit, currently not implemented for the GEV subclass). I was curious if this implementation could be used to fit a distribution to data in the same way the Scipy/extRemes package could be, and I also found the following:

I am assuming that the second link's use of the BFGS optimizer, along with TensorFlow's guide on using quasi Newton methods, are the ones most similar to SciPy/genextReme's implementation, though I am unsure.

Will using the TensorFlow's BFGS optimizer along with the implementation for the GEV distribution act in the same way the SciPy/extRemes package do? Why would somebody use the Adam optimizer to converge the distribution's parameters towards the maximum likelihood estimate?

jeremy
  • 101
  • 3
  • 1
    What problem are you trying to solve, and how does estimating parameters for a generalized extreme value distribution help you solve it? Right now, this reads a lot like an [XY Problem](http://xyproblem.info/). Instead of asking readers to answer for every scenario, focusing the question to your specific problem will generate focused, direct answers. – Sycorax Dec 31 '21 at 21:44
  • @Sycorax This is not an XY problem. I am asking “I would like others to explain **differences in GEV distribution parameter estimation** to me.” I understand what you are saying. I guess I have encountered a variety of ways for modeling the GEV distribution (which I have traditionally done in SciPy), and I am curious about the differences. Is it too broad? – jeremy Dec 31 '21 at 21:51
  • 1
    Why are you trying to do that? What problem does it solve? Yes, it is rather broad to compare three different software libraries, four different optimization methods, and MCMC in one post. – Sycorax Dec 31 '21 at 21:52
  • @Sycorax Why am I trying to do that? I am interested in learning, particularly the differences in the SciPy application to the Tensorflow application, and if the Scipy method is easily performed using TensorFlow. I am equally curious about the method using the Adam optimizer in a workflow I traditionally reserve for deep learning. If you think these comparisons are too broad I can remove my question. – jeremy Dec 31 '21 at 21:59
  • 2
    Thanks for editing your question to be more focused. The differences between these optimization methods amount to what kind of trades-off you prefer. These trade-offs are described in the duplicates. – Sycorax Dec 31 '21 at 22:28

0 Answers0