BQNet.jl is a Julia package for distributional regression using Bernstein quantile networks (BQN). That is,
- the conditional distribution is specified by its quantile function and assumed to be a Bernstein polynomial of a certain degree
- its distribution parameters, the coefficients of the Bernstein polynomial, are linked to the input feature variables by a neural network
- the model parameters, the weights and biases of the network, are estimated by optimising a composite quantile loss function.
The package is based on Flux.
BQNet can be installed by
using Pkg
Pkg.add(url = "https://github.com/jbbremnes/BQNet.jl")
or by entering REPL's package environment by pressing ]
and then
add "https://github.com/jbbremnes/BQNet.jl"
In the following examples the BQN is applied to various datasets
...
- Bremnes, J. B. (2020). Ensemble Postprocessing Using Quantile Function Regression Based on Neural Networks and Bernstein Polynomials. Monthly Weather Review 148, 1, 403-414. R code.
- Schulz, B. and Lerch, S. (2022). Machine learning methods for postprocessing ensemble forecasts of wind gusts: A systematic comparison. Monthly Weather Review, 150 (1), 235-257. doi:10.1175/MWR-D-21-0150.1
- Gneiting, T., Lerch, S. and Schulz, B. (2023). Probabilistic solar forecasting: Benchmarks, post-processing, verification. Solar Energy, 252 (1), 72-80. doi:10.1016/j.solener.2022.12.054
- Höhlein, K., B. Schulz, R. Westermann, and S. Lerch (2024). Postprocessing of Ensemble Weather Forecasts Using Permutation-Invariant Neural Networks. Artif. Intell. Earth Syst., 3, doi:10.1175/AIES-D-23-0070.1.