BiCopGradMMD | R Documentation |
This function computes a stochastic estimate of the gradient of the MMD criterion
for parametric estimation of bidimensional copula family.
The main arguments are the two vectors of observations, and the copula family.
The family is parametrized as in VineCopula::BiCop()
,
using the Kendall's tau instead of the first parameter.
This function is used by BiCopEstMMD()
to perform parameter estimation
via MMD minimization.
BiCopGradMMD( u1, u2, family, tau, par = NULL, par2 = 0, kernel = "gaussian.Phi", gamma = 0.95, alpha = 1, epsilon = 1e-04, method = "QMCV", quasiRNG = "sobol", ndrawings = 10 )
u1 |
vector of observations of the first coordinate, in [0,1]. |
u2 |
vector of observations of the second coordinate, in [0,1]. |
family |
the chosen family of copulas
(see the documentation of the class |
tau |
the copula family can be parametrized by the parameter |
par |
if different from |
par2 |
value for the second parameter, if any. (Works only for Student copula). |
kernel |
the kernel used in the MMD distance:
it can be a function taking in parameter
Each of these names can receive the suffix |
gamma |
parameter γ to be used in the kernel. |
alpha |
parameter α to be used in the kernel, if any. |
epsilon |
the differential of |
method |
the method of computing the stochastic gradient:
|
quasiRNG |
a function giving the quasi-random points in [0,1]^2 or a name giving the method to use in the list:
|
ndrawings |
number of replicas of the stochastic estimate of the gradient drawn at each step. The gradient is computed using the average of these replicas. |
the value of the gradient.
Alquier, P., Chérief-Abdellatif, B.-E., Derumigny, A., and Fermanian, J.D. (2022). Estimation of copulas via Maximum Mean Discrepancy. Journal of the American Statistical Association, doi: 10.1080/01621459.2021.2024836.
BiCopEstMMD()
for the estimation of parametric bivariate copulas by
stochastic gradient descent on the MMD criteria.
# Simulation from a bivariate Gaussian copula with correlation 0.5. dataSampled = VineCopula::BiCopSim(N = 500, family = 1, par = 0.5) # computation of the gradient of the MMD criteria at different points # Gradient is small at the true parameter BiCopGradMMD(dataSampled[,1], dataSampled[,2], family = 1, par = 0.5) # Gradient is negative when below the parameter BiCopGradMMD(dataSampled[,1], dataSampled[,2], family = 1, par = 0.1) # and positive when above BiCopGradMMD(dataSampled[,1], dataSampled[,2], family = 1, par = 0.8)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.