AlexandrovLab / SigProfilerExtractor

SigProfilerExtractor allows de novo extraction of mutational signatures from data generated in a matrix format. The tool identifies the number of operative mutational signatures, their activities in each sample, and the probability for each signature to cause a specific mutation type in a cancer sample. The tool makes use of SigProfilerMatrixGenerator and SigProfilerPlotting.
BSD 2-Clause "Simplified" License
154 stars 52 forks source link

Max iterations always runs independent of NMF tolerance and precision #250

Closed ebergstr closed 4 months ago

ebergstr commented 4 months ago

Just as a placeholder for us to look into further...

After several tests, it appears that the extractor always runs the maximum number of NMF iterations independent of the precision and tolerance. For instance, I have even increased the tolerance as high as 1e-2 with single precision and it will still run the maximum of 1 million NMF iterations each time.

This should not effect the final results, but will drastically increase the total run time for each extraction.

Best, Erik

mdbarnesUCSD commented 4 months ago

Thanks for filling this out Erik. After additional testing was done, the tolerance value is properly being passed and the maximum number of iterations was being run due to tolerance criteria not being met. This was confirmed by running two different tests with the same seed for 21BRCA data with the default tolerance value and 1e-2 and comparing the iterations for each replicate. The number of iterations for the 1e-2 tolerance were less than or equal to that of the respective replicate with default tolerance.

This issue is being closed because this issue arose from a non-standard matrix size that may benefit from more iterations or a larger tolerance.