Generalized Linear Models and Stochastic Gradient Descent in D

data pulverizer via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Sun Jun 11 04:10:38 PDT 2017


On Sunday, 11 June 2017 at 01:57:52 UTC, 9il wrote:
> The code has huge number of allocations. For example, T[][] 
> matrixes are and then concatenated to be used in BLAS.

You are right - I realised this as I was writing the script but I 
address this point later ...

> Why not to use ndslice and Lubeck [1] libraries instead?
>
> [1] https://github.com/kaleidicassociates/lubeck
>
> Ilya

Thank you for mentioning the Lubeck package, I did not know about 
it and it looks very interesting.

The article is exploratory, I also assume that the person reading 
it is busy. I tend to gravitate towards Phobos because its there 
- its the standard library and comes with D, its easy to write 
code with it and easy for a reader to access. If I write an 
article with code I want it to be likely that:

1. Anyone can download and run the code immediately and it will 
work.
2. If someone sees the article in 6 months or 3 years and 
downloads the code it will work.
3. The reader will be able to look up all the functions I have 
used in the D website - makes it very easy for learners.

At this stage the numerical computing ecosystem in D is not 
mature and could change drastically. I added a link to the Mir 
library at the top because I wanted people to be aware of the Mir 
project.

The article is more about GLM in D than performance but I can 
point to the Lubeck package in the article and mention your 
observation on the allocations - making it clearer upfront.

As I said in the previous reply, I did learn a lot from writing 
the article and I think the performance observation is highly 
relevant for building a GLM package in D.


More information about the Digitalmars-d-announce mailing list