Skip to content
Snippets Groups Projects
Commit 4f365b59 authored by SANTAGOSTINI Pierre's avatar SANTAGOSTINI Pierre
Browse files

Help page

parent b2aebd6f
No related branches found
No related tags found
No related merge requests found
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/kldstudent.R
\name{kldstudent}
\alias{kldstudent}
\title{Kullback-Leibler Divergence between Centered Multivariate \eqn{t} Distributions}
\usage{
kldstudent(nu1, Sigma1, nu2, Sigma2, eps = 1e-06)
}
\arguments{
\item{nu1}{numeric. The degrees of freedom of the first distribution.}
\item{Sigma1}{symmetric, positive-definite matrix. The scatter matrix of the first distribution.}
\item{nu2}{numeric. The degrees of freedom of the second distribution.}
\item{Sigma2}{symmetric, positive-definite matrix. The scatter matrix of the second distribution.}
\item{eps}{numeric. Precision for the computation of the partial derivative of the Lauricella \eqn{D}-hypergeometric function (see Details). Default: 1e-06.}
}
\value{
A numeric value: the Kullback-Leibler divergence between the two distributions,
with two attributes \code{attr(, "epsilon")} (precision of the partial derivative of the Lauricella \eqn{D}-hypergeometric function,see Details)
and \code{attr(, "k")} (number of iterations).
}
\description{
Computes the Kullback-Leibler divergence between two random vectors distributed
according to multivariate \eqn{t} distributions (MTD) with zero location vector.
}
\details{
Given \eqn{X_1}, a random vector of \eqn{R^p} distributed according to the MTD
with parameters \eqn{(0, \Sigma_1, \nu_1)}
and \eqn{X_2}, a random vector of \eqn{R^p} distributed according to the MCD
with parameters \eqn{(0, \Sigma_2, \nu_2)}.
Let \eqn{\lambda_1, \dots, \lambda_p} the eigenvalues of the square matrix \eqn{\Sigma_1 \Sigma_2^{-1}}
sorted in increasing order: \deqn{\lambda_1 < \dots < \lambda_{p-1} < \lambda_p}
Depending on the values of these eigenvalues,
the computation of the Kullback-Leibler divergence of \eqn{X_1} from \eqn{X_2}
is given by:
\deqn{ \displaystyle{ f(\mathbf{x}|\nu_1, \boldsymbol{\mu}_1, \Sigma_1) = \frac{\Gamma\left( \frac{\nu_1+p}{2} \right) |\Sigma_1|^{-1/2}}{\Gamma\left( \frac{\nu_1}{2} \right) (\nu_1 \pi)^{p/2}} \left( 1 + \frac{1}{\nu_1} (\mathbf{x}-\boldsymbol{\mu}_1)^T \Sigma_1^{-1} (\mathbf{x}-\boldsymbol{\mu}_1) \right)^{-\frac{\nu_1+p}{2}} \frac{\Gamma\left( \frac{\nu_1+p}{2} \right) |\Sigma_1|^{-1/2}}{\Gamma\left( \frac{\nu_1}{2} \right) (\nu_1 \pi)^{p/2}} \left( 1 + \frac{1}{\nu_1} \mathbf{x}^T \Sigma_1^{-1} \mathbf{x} \right)^{-\frac{\nu_1+p}{2}} } }
where \eqn{F_D^{(p)}} is the Lauricella \eqn{D}-hypergeometric function defined for \eqn{p} variables:
\deqn{ \displaystyle{ F_D^{(p)}\left(a; b_1, ..., b_p; g; x_1, ..., x_p\right) = \sum\limits_{m_1 \geq 0} ... \sum\limits_{m_p \geq 0}{ \frac{ (a)_{m_1+...+m_p}(b_1)_{m_1} ... (b_p)_{m_p} }{ (g)_{m_1+...+m_p} } \frac{x_1^{m_1}}{m_1!} ... \frac{x_p^{m_p}}{m_p!} } } }
The computation of the partial derivative uses the \code{\link{pochhammer}} function.
}
\examples{
nu1 <- 2
Sigma1 <- matrix(c(2, 1.2, 0.4, 1.2, 2, 0.6, 0.4, 0.6, 2), nrow = 3)
nu2 <- 4
Sigma2 <- matrix(c(1, 0.3, 0.1, 0.3, 1, 0.4, 0.1, 0.4, 1), nrow = 3)
kldstudent(nu1, Sigma1, nu2, Sigma2)
kldstudent(nu2, Sigma2, nu1, Sigma1)
}
\references{
N. Bouhlel and D. Rousseau (2023), Exact Rényi and Kullback-Leibler Divergences Between Multivariate t-Distributions, IEEE Signal Processing Letters.
\doi{10.1109/LSP.2023.3324594}
}
\author{
Pierre Santagostini, Nizar Bouhlel
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment