probability#
- gym_socks.kernel.probability.kernel_bayes_rule(G, K, Kx, alpha, regularization_param=None)[source]#
Computes the kernel Bayes’ rule using Gram matrices.
The kernel Bayes’ rule.
\[P(Y \mid x) = \frac{P(x \mid Y) P(Y)}{P(x)}, \quad P(x) = \int_{\Omega} P(x \mid y) P(d y)\]- Parameters
G – The gram matrix of Y. Typically computed as G = kernel_fn(Y).
K – The Gram matrix of X. Typically computed as K = kernel_fn(X).
Kx – The feature vector of x. Typically computed as Kx = kernel_fn(X, x).
alpha – The coefficient vector corresponding to the marginal embedding of P(X).
regularization_param (Optional[float]) – The regularization parameter of the matrix inverse.
- Returns
The coefficients of the conditional distribution embedding of P(Y | x).
- gym_socks.kernel.probability.kernel_chain_rule(G, K, alpha, regularization_param=None)[source]#
Computes the kernel chain rule using Gram matrices.
The kernel chain rule computes the joint distribution embedding by taking the product of conditional and marginal distribution embeddings.
\[P(Y, X) = P(Y \mid X) P(X)\]- Parameters
G – The gram matrix of Y. Typically computed as G = kernel_fn(Y).
K – The Gram matrix of X. Typically computed as K = kernel_fn(X).
alpha – The coefficient vector corresponding to the marginal embedding of P(X).
regularization_param (Optional[float]) – The regularization parameter of the matrix inverse.
- Returns
The coefficients of the joint distribution embedding of P(Y, X).
- gym_socks.kernel.probability.kernel_sum_rule(G, K, alpha, regularization_param=None)[source]#
Computes the kernel sum rule using Gram matrices.
The kernel sum rule computes the marginal of a conditional distribution by integrating out the conditioning variables.
\[P(Y) = \int_{\Omega} P(Y \mid X) P(d X)\]- Parameters
G – The gram matrix of Y. Typically computed as G = kernel_fn(Y).
K – The Gram matrix of X. Typically computed as K = kernel_fn(X).
alpha – The coefficient vector corresponding to the marginal embedding of P(X).
regularization_param (Optional[float]) – The regularization parameter of the matrix inverse.
- Returns
The coefficients of the marginal embedding of P(Y).
- gym_socks.kernel.probability.maximum_mean_discrepancy(X, Y, kernel_fn=None, biased=False, squared=False)[source]#
Maximum mean discrepancy between two empirical distributions.
Compute the maximum mean discrepancy between two distributions (samples \(X\) and \(Y\)) using a kernel-based statistic. The biased estimator \(\widehat{\textrm{MMD}}_{b}^{2}(X, Y, \mathscr{H})\) uses U-statistics, but can be negative. The unbiased estimator \(\widehat{\textrm{MMD}}_{u}^{2}(X, Y, \mathscr{H})\) uses V-statistics.
\[\widehat{\textrm{MMD}}_{b}^{2}(X, Y, \mathscr{H}) = \frac{1}{m^{2}} \sum_{i=1}^{m} \sum_{j=1}^{m} k(x_{i}, x_{j}) + \frac{1}{n^{2}} \sum_{i=1}^{n} \sum_{j=1}^{n} k(y_{i}, y_{j}) - \frac{2}{mn} \sum_{i=1}^{m} \sum_{j=1}^{n} k(x_{i}, y_{j})\]\[\widehat{\textrm{MMD}}_{u}^{2}(X, Y, \mathscr{H}) = \frac{1}{m(m - 1)} \sum_{i=1}^{m} \sum_{j \neq i}^{m} k(x_{i}, x_{j}) + \frac{1}{n(n - 1)} \sum_{i=1}^{n} \sum_{j \neq i}^{n} k(y_{i}, y_{j}) - \frac{2}{mn} \sum_{i=1}^{m} \sum_{j=1}^{n} k(x_{i}, y_{j})\]- Parameters
X – The observations from distribution P organized in ROWS.
Y – The observations from distribution Q organized in ROWS.
kernel_fn – The kernel function is a function that returns an ndarray where each element is the pairwise evaluation of a kernel function. See sklearn. metrics.pairwise for more info. The default is the RBF kernel.
biased (bool) – Whether to use the biased MMD.
squared (bool) – Whether or not the result is squared.
- Returns
The scalar value representing the MMD.