Similarity Network Fusion (SNF) [38] is a recent computational method for data integration. Briefly, SNF combines many different types of measurements for a given set of samples. For n data points with m different types of measurements, m different distance matrices are constructed, which can be thought of as a network on n points, with the distances being the weights on the edges. First, these are transformed into similarity matrices W by using an exponential similarity function. The SNF implementation takes these similarity matrices as input. To compute the fused matrix from multiple types of measurements, a full similarity matrix P and a sparse similarity matrix S are defined for each measurement. For the first, P is constructed by performing a form of normalisation on W, in the following way:
The matrix S is constructed using K nearest neighbours. For each i, let represent the K nearest neighbours of i, including i itself, giving
Next, the matrices P are iteratively updated to converge to a single similarity matrix. In the case , the initial matrices are , and . The iterative step is given by
After t steps, the overall status matrix is computed as
We transform our and distance matrices into similarity matrices using the same exponential function described above and then use SNF to combine them into one matrix.
Do you have any questions about this protocol?
Post your question to gather feedback from the community. We will also invite the authors of this article to respond.