DmitryUlyanov / Multicore-TSNE

Parallel t-SNE implementation with Python and Torch wrappers.
Other
1.89k stars 228 forks source link

adding early exaggeration iterations as argument #56

Closed cciccole closed 6 years ago

cciccole commented 6 years ago

Adding argument to allow setting of the number of iterations that the algorithm stays in the early exaggeration phase.

This argument sets the values for two algorithm params that aren't currently exposed: stop_lying_iter and mom_switch_iter. It doesn't seem like these two variables ever get set to different values, thus a single argument to control them both should be fine in practice.

Controlling the learning rate in concert with the number of early exaggeration iterations and total iterations can produce a high quality embedding in a shorter time interval. This interplay is discussed at https://doi.org/10.1101/451690.

cciccole commented 6 years ago

@DmitryUlyanov It seems like that one test that failed in my first commit has been problematic historically (e.g., on this PR as well). It seems like it gets fixed by changing the random_state value at init.

DmitryUlyanov commented 6 years ago

Thanks!