NMF with \(\beta\) -divergence and multiplicative updates¶
Consider the (nonnegative) matrix \(\textbf{V}\in\mathbb{R}_+^{F\times N}\). The goal of NMF [1] is to find a factorisation for \(\textbf{V}\) of the form:
where \(\textbf{W}\in\mathbb{R}_+^{F\times K}\) , \(\textbf{H}\in\mathbb{R}_+^{K\times N}\) and \(K\) is the number of components in the decomposition. The NMF model estimation is usually considered as solving the following optimisation problem:
Where \(D\) is a separable divergence such as:
with \([.]_{fn}\) is the element on column \(n\) and line \(f\) of a matrix and \(d\) is a scalar cost function. A common choice for the cost function is the \(\beta\) -divergence [2] [3] [4] defined as follows:
Popular cost functions such as the Euclidean distance, the generalised KL divergence [5] and the IS divergence [6] and all particular cases of the $beta$-divergence (obtained for \(\beta=2\) , \(1\) and \(0\), respectively). The use of the \(\beta\) -divergence for NMF has been studied extensively in Févotte et al. [7]. In most cases NMF problem is solved using a two-block coordinate descent approach. Each of the factors \(\textbf{W}\) and \(\textbf{H}\) is optimised alternatively. The sub-problem in one factor can then be considered as a nonnegative least square problem (NNLS) [8]. The approach implemented here to solve these NNLS problems relies on the multiplicative update rules introduced in Lee et al. [1] for the Euclidean distance and later generalised to the the \(\beta\) -divergence [7] :
where \(\odot\) is the element-wise product (Hadamard product) and division and power are element-wise. The matrices \(\textbf{H}\) and \(\textbf{W}\) are then updated according to an alternating update scheme.
Download¶
Source code available at https://github.com/rserizel/beta_nmf
Getting Started¶
A short example is available as at https://github.com/rserizel/beta_nmf/blob/master/BetaNMF_howto.ipynb
Citation¶
If you are using this source code please consider citing the following paper:
Reference
- Serizel, S. Essid, and G. Richard. “Mini-batch stochastic approaches for accelerated multiplicative updates in nonnegative matrix factorisation with beta-divergence”. Accepted for publication In Proc. of MLSP, p. 5, 2016.
Bibtex
@inproceedings{serizel2016batch,
title={Mini-batch stochastic approaches for accelerated multiplicative updates in nonnegative matrix factorisation with beta-divergence},
author={Serizel, Romain and Essid, Slim and Richard, Ga{“e}l},
booktitle={IEEE International Workshop on Machine Learning for Signal Processing (MLSP)},
pages={5},
year={2016},
organization={IEEE} }
References¶
[1] | (1, 2)
|
[2] |
|
[3] |
|
[4] |
|
[5] |
|
[6] |
|
[7] | (1, 2)
|
[8] |
|