Skip to content

Commit 0c7ffd6

Browse files
committed
update README
1 parent ff8ef1a commit 0c7ffd6

File tree

1 file changed

+65
-1
lines changed

1 file changed

+65
-1
lines changed

README.md

Lines changed: 65 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,65 @@
1-
# DistributionsAD.jl
1+
# DistributionsAD.jl
2+
3+
This package defines the necessary functions to enable automatic differentiation (AD) of the `logpdf` function from [Distributions.jl](https://github.com/JuliaStats/Distributions.jl) using the packages [Tracker.jl](https://github.com/FluxML/Tracker.jl) and [ForwardDiff.jl](https://github.com/JuliaDiff/ForwardDiff.jl). The goal of this package is to make the output of `logpdf` differentiable wrt all continuous parameters of a distribution as well as the random variable in the case of continuous distributions.
4+
5+
AD of `logpdf` is fully supported and tested for the following distributions wrt all combinations of continuous variables (distribution parameters and/or the random variable) and using all defined distribution constructors:
6+
- Univariate discrete
7+
- `Bernoulli`
8+
- `BetaBinomial`
9+
- `Binomial`
10+
- `Categorical`
11+
- `Geometric`
12+
- `NegativeBinomial`
13+
- `Poisson`
14+
- `PoissonBinomial`
15+
- `Skellam`
16+
- Univariate continuous
17+
- `Arcsine`
18+
- `Beta`
19+
- `BetaPrime`
20+
- `Biweight`
21+
- `Cauchy`
22+
- `Chernoff`
23+
- `Chi`
24+
- `Chisq`
25+
- `Cosine`
26+
- `Epanechnikov`
27+
- `Erlang`
28+
- `Exponential`
29+
- `FDist`
30+
- `Frechet`
31+
- `Gamma`
32+
- `GeneralizedExtremeValue`
33+
- `GeneralizedPareto`
34+
- `Gumbel`
35+
- `InverseGamma`
36+
- `InverseGaussian`
37+
- `Kolmogorov`
38+
- `Laplace`
39+
- `Levy`
40+
- `LocationScale`
41+
- `Logistic`
42+
- `LogitNormal`
43+
- `LogNormal`
44+
- `Normal`
45+
- `NormalCanon`
46+
- `NormalInverseGaussian`
47+
- `Pareto`
48+
- `PGeneralizedGaussian`
49+
- `Rayleigh`
50+
- `Semicircle`
51+
- `SymTriangularDist`
52+
- `TDist`
53+
- `TriangularDist`
54+
- `Triweight`
55+
- `Uniform`
56+
- `Weibull`
57+
- Multivariate continuous
58+
- `MvLogNormal`
59+
- `MvNormal`
60+
- Matrix-variate continuous
61+
- `MatrixBeta`
62+
63+
# Get Involved
64+
65+
A number of distributions are still either broken or not fully supported for various reasons. See [this issue](https://github.com/TuringLang/DistributionsAD.jl/issues/2). If you can fix any of the broken ones, a PR is welcome!

0 commit comments

Comments
 (0)