As part of "Decision Forests for Computer Vision and Medical Image Analysis" by Criminisi and Shotton, this chapter discusses density forests: Decision forests used for density estimation (that is, decision forests for unsupervised learning or clustering forests). At the leafs, each tree contains a simple predcition model: a Gaussian distribution. As result, a single density tree can be viewed as special case of a Gaussian Mixture Model (e.g. see [1, ch. 9]) using hard assignments instead of soft assigments.
Criminisi and Shotton detail the effects of the number of trees as well as the maximum depth of each individual tree on the estimated density. Figure 1 shows results taken from their chapter. Source code for density trees and forests is available as part of the Sherwood C++ and C# library for decision forests.
In contrast, figure 2 shows results using a custom implementation. Obviously, density trees are capable of representing Gaussian mixtures nearly perfectly. However, density trees tend to overfit the data and, therefore, parameters such as maximum depth or the number of samples required for splits is critical. The implementation is still under development, however, will be made publicly available in the next few months.
What is your opinion on the summarized work? Or do you know related work that is of interest? Let me know your thoughts in the comments below: