A StandardizedMatrix type

5 messages
Open this post in threaded view
|

A StandardizedMatrix type

 I've seen some discussion about adding a Transpose type for matrices to remove the A_mul_B!, At_mul_B!, etc. syntax.  On a similar train of thought, I started working on a StandardizedMatrix type for my work, which treats a matrix as standardized (z = StatsBase.zscore(x, 1)) without changing the underlying data.  If there's any interest in discussing the merits of this, I've started https://github.com/joshday/StandardizedMatrices.jl.  My proof-of-concept example of matrix-vector multiplication seems to work quite well.  See test/performance.jl. -- You received this message because you are subscribed to the Google Groups "julia-stats" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout.
Open this post in threaded view
|

Re: A StandardizedMatrix type

 I failed to mention the biggest win here is being able to "standardize" a sparse matrix without destroying the sparsity.  Thus, you can treat a sparse matrix as standardized, but still retain the benefits of the sparsity (fast multiplication, etc.).On Thursday, May 12, 2016 at 8:08:42 AM UTC-7, Josh Day wrote:I've seen some discussion about adding a Transpose type for matrices to remove the A_mul_B!, At_mul_B!, etc. syntax.  On a similar train of thought, I started working on a StandardizedMatrix type for my work, which treats a matrix as standardized (z = StatsBase.zscore(x, 1)) without changing the underlying data.  If there's any interest in discussing the merits of this, I've started https://github.com/joshday/StandardizedMatrices.jl.  My proof-of-concept example of matrix-vector multiplication seems to work quite well.  See test/performance.jl. -- You received this message because you are subscribed to the Google Groups "julia-stats" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout.
Open this post in threaded view
|

Re: A StandardizedMatrix type

 I was about to say exactly that. For exactly that reason, I've considered implementing the exact same thing. I'll try your version out when I have some time. I think it would be useful but I'm not sure where exactly it fits best. Would any library routines  (e.g. in StatsBase, GLM) benefit from this?On Thu, May 12, 2016 at 11:38 AM, Josh Day wrote:I failed to mention the biggest win here is being able to "standardize" a sparse matrix without destroying the sparsity.  Thus, you can treat a sparse matrix as standardized, but still retain the benefits of the sparsity (fast multiplication, etc.).On Thursday, May 12, 2016 at 8:08:42 AM UTC-7, Josh Day wrote:I've seen some discussion about adding a Transpose type for matrices to remove the A_mul_B!, At_mul_B!, etc. syntax.  On a similar train of thought, I started working on a StandardizedMatrix type for my work, which treats a matrix as standardized (z = StatsBase.zscore(x, 1)) without changing the underlying data.  If there's any interest in discussing the merits of this, I've started https://github.com/joshday/StandardizedMatrices.jl.  My proof-of-concept example of matrix-vector multiplication seems to work quite well.  See test/performance.jl. -- You received this message because you are subscribed to the Google Groups "julia-stats" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "julia-stats" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout.