salmon.triplets.samplers.TSTE

class salmon.triplets.samplers.TSTE(alpha=1, **kwargs)

The t-Distributed STE (t-STE) embedding algorithm [1].

Notes

This algorithm is proposed for the following reason:

In STE the value of the corresponding probability rapidly becomes infinitesimal when a triplet constraint is violated. As a result, stronger violations of a constraint do not lead to significantly larger penalties, which reduces the tendency to correct triplet constraints that violate the consensus. This is illustrated by the STE gradient depicted in Figure 1: the STE gradient is nearly zero when a constraint is strongly violated or satisfied. However, it appears that the gradient decays too rapidly, making it hard for STE to fix errors made early in the optimization later on.

To address this problem, we propose to use a heavy-tailed kernel to measure local similarities between data points instead

—Section 4 of [1].

References

1(1,2)

“Stochastic Triplet Embedding”. 2012. http://www.cs.cornell.edu/~kilian/papers/stochastictriplet.pdf van der Maaten, Weinberger.

__init__(alpha=1, **kwargs)
Parameters
alphafloat, default=1

The parameter that controls how heavily the tails of the probability distribution are.

kwargsdict

Keyword arguments to pass to Adaptive.