EMS-TU-Ilmenau / fastmat

A library to build up lazily evaluated expressions of linear transforms for efficient scientific computing.
https://fastmat.readthedocs.io
Apache License 2.0
24 stars 8 forks source link

Add hard and soft thresholding to cmath #34

Closed SebastianSemper closed 5 years ago

SebastianSemper commented 6 years ago

Could we gain some speed from that? Since we are now starting to work on some large arrays, we might be able to squeeze some seconds out of these operations, eh?

ChristophWWagner commented 5 years ago

it is hard to see if this brings some actual gainz. Let's see how performance behaves when the structure of algorithms is refactored

SebastianSemper commented 5 years ago

It is more a code structuring thing, since we also have soft thresholding once in ISTA and once in FISTA. Or how would this be changed after the refactoring of the algorithms?

ChristophWWagner commented 5 years ago

with the new refacturing it is technically possible to outsource these thresholding functions to unbound methods that could reside anywhere in the package. What would be needed is to abstract the thresholding parameters to be taken out of a Algorithm base class instance instead of the call arguments. This could impact call performance but as the thresholding algorithms aren't cython this should not make a difference (to the worse) anyway.

SebastianSemper commented 5 years ago

I think we can close this for now. Feel free to reopen it if necessary.