New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[MRG+3] Fused types for MultiTaskElasticNet #8061
Conversation
* University of Tennessee - Innovative Computing Laboratory | ||
* Knoxville TN, 37996-1301, USA. | ||
* | ||
* --------------------------------------------------------------------- |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have modified cblas_dscal.c
to obtain this one. I prefer to find the original version of that file but actually in ATLAS they use an older version of that file.
@fabianp Where have you found the cblas_dscal.c
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I got it from the ATLAS distribution. They are all taken from "{ATLAS}/src/blas/reference/level*". In the level1 directory I see a ATL_srefscal.c that looks to me very similar to the one on this PR. Is this the one you say is "older"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I had a look to the cblas_dscal.c
file and I found it in "{ATLAS}/interfaces/blas/C/src".
It's the only place where I find it.
Is the sklearn version of cblas_dscal.c
was a modified version of ATL_drefscal.c ?
When I compare the files it seems to be that indeed.
Consequently I will do the same for cblas_sscal.c
.
Thx @fabianp
c3121e5
to
74d1e7e
Compare
Ping myself I'll review this in a while. (This weekend hopefully, Masters application is consuming a lot of my time :/) |
Don't worry @raghavrv, this PR will not escape :). |
This looks sweet, but probably not this year :-/ |
looks clean to me. Tests pass and there is no algorithmic change. +1 for merge nice job @tguillemot |
Thx @agramfort. |
LGTM, except for this comment #8061 (comment). ping @fabianp |
Looks good to me as well. Amazing job! Thx |
@tguillemot tell us when blas issue is sorted. If it is +1 for merge |
|
@raghavrv You are faster than my messages. Thanks. Sorry for the delay everyone. |
* Convert ElasticNet Multioutput to floating. * Remove all the float64 coordinate_descent. * Add the necessary cblas for use fused types. * Fix zeros dtype issue in cd_fast. * Remove cblas files. * Change random seed to let test_lle_simple_grid pass. * Add tests to check floatting issue for MultiTaskElasticNet. * Update cblas_sscal.c
* Convert ElasticNet Multioutput to floating. * Remove all the float64 coordinate_descent. * Add the necessary cblas for use fused types. * Fix zeros dtype issue in cd_fast. * Remove cblas files. * Change random seed to let test_lle_simple_grid pass. * Add tests to check floatting issue for MultiTaskElasticNet. * Update cblas_sscal.c
* Convert ElasticNet Multioutput to floating. * Remove all the float64 coordinate_descent. * Add the necessary cblas for use fused types. * Fix zeros dtype issue in cd_fast. * Remove cblas files. * Change random seed to let test_lle_simple_grid pass. * Add tests to check floatting issue for MultiTaskElasticNet. * Update cblas_sscal.c
* Convert ElasticNet Multioutput to floating. * Remove all the float64 coordinate_descent. * Add the necessary cblas for use fused types. * Fix zeros dtype issue in cd_fast. * Remove cblas files. * Change random seed to let test_lle_simple_grid pass. * Add tests to check floatting issue for MultiTaskElasticNet. * Update cblas_sscal.c
* Convert ElasticNet Multioutput to floating. * Remove all the float64 coordinate_descent. * Add the necessary cblas for use fused types. * Fix zeros dtype issue in cd_fast. * Remove cblas files. * Change random seed to let test_lle_simple_grid pass. * Add tests to check floatting issue for MultiTaskElasticNet. * Update cblas_sscal.c
Reference Issue
This PR is a continuation of the work initiate by #6913.
What does this implement/fix? Explain your changes.
I've modified MultiTaskElasticNet to allow
np.float32
for the computation.Here are the memory profiling results when fitting
np.float32
data:master
this branch
@jnothman @amueller Do you have some time to review that PR please :) ? It's big because of the cblas file I needed to add.